This is Unofficial EPICS BASE Doxygen Site
bitSet.cpp File Reference
#include <string.h>
#include <stdio.h>
#include <iostream>
#include <stdexcept>
#include <algorithm>
#include <epicsMutex.h>
#include <pv/lock.h>
#include <pv/serializeHelper.h>
#include <pv/bitSet.h>
+ Include dependency graph for bitSet.cpp:

Go to the source code of this file.

Namespaces

 epics
 TODO only here because of the Lockable.
 
 epics::pvData
 pvData
 

Macros

#define epicsExportSharedSymbols
 
#define ADDRESS_BITS_PER_WORD   6u
 
#define BITS_PER_WORD   (1u << ADDRESS_BITS_PER_WORD)
 
#define BYTES_PER_WORD   sizeof(uint64)
 
#define BIT_INDEX_MASK   (BITS_PER_WORD - 1u)
 
#define WORD_MASK   ~((uint64)0)
 
#define WORD_INDEX(bitn)   ((bitn)>>ADDRESS_BITS_PER_WORD)
 
#define WORD_OFFSET(bitn)   ((bitn)&BIT_INDEX_MASK)
 
#define CHECK_POST()   assert(words.empty() || words.back()!=0)
 

Functions

epicsShareExtern std::ostream & epics::pvData::operator<< (std::ostream &o, const BitSet &b)
 

Macro Definition Documentation

#define ADDRESS_BITS_PER_WORD   6u

Definition at line 27 of file bitSet.cpp.

#define BIT_INDEX_MASK   (BITS_PER_WORD - 1u)

Definition at line 30 of file bitSet.cpp.

#define BITS_PER_WORD   (1u << ADDRESS_BITS_PER_WORD)

Definition at line 28 of file bitSet.cpp.

#define BYTES_PER_WORD   sizeof(uint64)

Definition at line 29 of file bitSet.cpp.

#define CHECK_POST ( )    assert(words.empty() || words.back()!=0)

Definition at line 42 of file bitSet.cpp.

#define epicsExportSharedSymbols
Author
mes

Definition at line 17 of file bitSet.cpp.

#define WORD_INDEX (   bitn)    ((bitn)>>ADDRESS_BITS_PER_WORD)

Definition at line 36 of file bitSet.cpp.

#define WORD_MASK   ~((uint64)0)

Used to shift left or right for a partial word mask

Definition at line 33 of file bitSet.cpp.

#define WORD_OFFSET (   bitn)    ((bitn)&BIT_INDEX_MASK)

Definition at line 38 of file bitSet.cpp.