20 #include <boost/filesystem.hpp>
29 int subfieldCount = 0;
30 while(inSubfields[subfieldCount].mMask) subfieldCount++;
33 for(
int index = subfieldCount; index > 0; index--) {
35 const Subfield& subfield = inSubfields[field];
39 const char** ptr = subfield.
mValues;
41 if(*ptr == 0) { inStream <<
"[UNKNOWN " << i <<
"]";
break; }
42 if(value == i) { inStream << *ptr;
break; }
45 if(index > 1) inStream <<
", ";
53 int subfieldCount = 0;
54 while(inSubfields[subfieldCount].mMask) subfieldCount++;
57 for(
int index = subfieldCount; index > 0; index--) {
59 const Subfield& subfield = inSubfields[field];
63 const char** ptr = subfield.
mValues;
65 if(*ptr == 0) { inStream <<
"[UNKNOWN " << i <<
"]";
break; }
66 if(value == i) { inStream << *ptr;
break; }
69 if(index > 1) inStream <<
", ";
77 inStream <<
"\t// " << inDeviceName <<
" static device information." << std::endl;
78 inStream <<
"\tboost::uint32_t " << inDeviceName <<
"Columns[] = { ";
81 while(p < e) inStream <<
mColumnDefs[*p++].getName() <<
", ";
82 inStream <<
"END };" << std::endl;
86 << inDeviceName <<
"Columns);" << std::endl;
ColumnDefVector mColumnDefs
Column type widths.
uint16_t getRowCount(void) const
Returns the row count.
uint16_t getColCount(void) const
Returns the column count.
uint32_t mShift
The subfield LSB position.
const char * mConfigGuideName
The subfield name documented in the configuration guide.
boost::uint32_t uint32_t
Imported type name.
uint32_t mMask
The subfield bit mask.
DeviceInfo mDeviceInfo
Device information.
Header for the Bitstream class.
static void writeSubfieldSettings(std::ostream &inStream, uint32_t inWord, const Subfield *inSubfields)
Insert 32 bit subfield settings into an output stream.
const ColumnTypeVector & getColumnTypes(void) const
Returns the column type vector.
const char * mBitgenName
The subfield name documented in bitgen.
boost::uint16_t uint16_t
Imported type name.
uint32_t getTileCount(void) const
Returns the tile count.
const char ** mValues
The allowable subfield values.
virtual void writeDeviceInfo(std::ostream &inStream, const std::string &inDeviceName)
Output static device information to a stream.