HARPO  5.1.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
BData.h
Go to the documentation of this file.
1 #ifndef BDATA_H
2 #define BDATA_H
3 // //
5 // BData //
6 // //
7 // bit data storage //
8 // //
10 #include <string>
11 #include <sys/types.h>
12 
13 namespace Pmm2
14 {
15 
16  class BData
17  {
18  public:
19  BData();
20  BData(const size_t nbits,const u_int32_t *data);
21  virtual ~BData(); // {}
22 
23  void Clear();
24  void Set(const size_t nbits, const u_int32_t *data);
25 
26  void Print() const; // to show the list of active bits
27 
28  //----- Optimized getters
29  // Bit
30  u_int32_t operator()(size_t i) const;
31  // Slise
32  u_int32_t operator()(size_t i,size_t j) const;
33 
34  u_int32_t asGray(size_t i,size_t j) const;
35 
36  private:
37  // const u_int32_t *lptr;
38  std::string ldata;
39  };
40 
41 } //namespace Pmm2
42 
43 #endif
44 // Local Variables:
45 // mode: c++
46 // End:
47 
void Clear()
Definition: BData.cxx:37
Container of bits stream as string.
Definition: BData.h:16
u_int32_t asGray(size_t i, size_t j) const
Slice as integer in Gray code.
Definition: BData.cxx:69
u_int32_t operator()(size_t i) const
Definition: BData.cxx:56
virtual ~BData()
Definition: BData.cxx:19
std::string ldata
Definition: BData.h:38
void Set(const size_t nbits, const u_int32_t *data)
Definition: BData.cxx:42
void Print() const
Definition: BData.cxx:51