96 size = engDataElementSize * engDataCount;
100 m_data.push_back(element);
121 out.write(
m_data[i].m_engLbl.data(), (std::streamsize)
m_data[i].m_engLbl.size());
142 out.write((
char*)&(
m_data[i].m_engDat.front()),
143 (std::streamsize)
m_data[i].m_engDat.size());
166 std::string pfx = prefix;
172 out << setiosflags(std::ios::left)
173 << pfx << std::setw(W) <<
"CETAG:" 176 << pfx << std::setw(W) <<
"RESRC:" <<
m_reSrc <<
"\n" 177 << pfx << std::setw(W) <<
"RECNT:" <<
m_reCnt <<
"\n";
181 out << pfx <<
"ENGLN[" << i << std::setw(W-7) <<
"]:" 182 <<
m_data[i].m_engLn <<
"\n" 183 << pfx <<
"ENGLBL[" << i << std::setw(W-8) <<
"]:" 184 <<
m_data[i].m_engLbl <<
"\n" 185 << pfx <<
"ENGMTXC[" << i << std::setw(W-9) <<
"]:" 186 <<
m_data[i].m_engMtxC <<
"\n" 187 << pfx <<
"ENGMTXR[" << i << std::setw(W-9) <<
"]:" 188 <<
m_data[i].m_engMtxR <<
"\n" 189 << pfx <<
"ENGTYP[" << i << std::setw(W-8) <<
"]:" 190 << std::string(1,
m_data[i].m_engTyp) <<
"\n" 191 << pfx <<
"ENGDTS[" << i << std::setw(W-8) <<
"]:" 192 << std::string(1,
m_data[i].m_engDts) <<
"\n" 193 << pfx <<
"ENGDATU[" << i << std::setw(W-9) <<
"]:" 194 <<
m_data[i].m_engDatU <<
"\n" 195 << pfx <<
"ENGDATC[" << i << std::setw(W-9) <<
"]:" 196 <<
m_data[i].m_engDat.size() <<
"\n";
207 const std::string& prefix )
const 211 out << prefix <<
"ENGDATA[" << elIndex << std::setw(8) <<
"]:";
213 std::vector<ossim_uint8>::const_iterator i = element.
m_engDat.begin();
216 out << static_cast<ossim_int8>(*i);
223 out << prefix <<
"ENGDATA[" << elIndex << std::setw(8) <<
"]: NOT DISPLAYED\n";
227 <<
"ossimNitfEngrdaTag::printData WARNING unhandled data type." 228 <<
"Data type = " << (char)element.
m_engTyp <<
"\n" 240 os << std::setw(w) << std::setfill(
'0') << setiosflags(ios::right) << v;
virtual const std::string & getTagName() const
This will return the name of the registered tag for this user defined header.
virtual void clearFields()
Method to clear all fields including null terminating.
std::basic_ostringstream< char > ostringstream
Class for char output memory streams.
char m_reCnt[RECNT_SIZE+1]
FIELD: RECNT.
char m_engLn[ENGLN_SIZE+1]
FIELD: ENGLN.
char m_engTyp
FIELD: ENGTYP.
std::vector< ossimEngDataElement > m_data
ossim_uint32 toUInt32() const
unsigned short ossim_uint16
char m_engDatC[ENGDATC_SIZE+1]
FIELD: ENGDATC.
std::vector< ossim_uint8 > m_engDat
ENGDATA - data.
Container class for an Engineering Data Element Record.
ossimNitfEngrdaTag()
default constructor
char m_reSrc[RESRC_SIZE+1]
Type R = Required Type <R> = BCS spaces allowed for entire field.
virtual ~ossimNitfEngrdaTag()
destructor
std::ostream & printData(std::ostream &out, const ossimEngDataElement &element, ossim_uint32 elIndex, const std::string &prefix) const
Method to print out a ossimEngDataElement object.
std::string m_engLbl
FIELD: ENGLBL.
void getValueAsString(T v, ossim_uint16 w, std::string &s) const
Method to convert value to a string, padding with zero's, left justified.
unsigned int ossim_uint32
char m_engDatU[ENGDATU_SIZE+1]
FIELD: ENGDATU.
RTTI_DEF1(ossimNitfEngrdaTag, "ossimNitfEngrdaTag", ossimNitfRegisteredTag)
virtual void parseStream(std::istream &in)
Method to parse data from stream.
char m_engDts
FIELD: ENGDTS.
ossim_uint16 toUInt16() const
virtual std::ostream & print(std::ostream &out, const std::string &prefix=std::string()) const
Print method that outputs a key/value type format adding prefix to keys.
std::basic_istream< char > istream
Base class for char input streams.
virtual ossim_uint32 getSizeInBytes() const
Returns the length in bytes of the tag from the CEL or REL field.
char m_engMtxR[ENGMTXR_SIZE+1]
FIELD: ENGMTXR.
char m_engMtxC[ENGMTXC_SIZE+1]
FIELD: ENGMTXC.
virtual void writeStream(std::ostream &out)
Method to write data to stream.
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)
std::basic_ostream< char > ostream
Base class for char output streams.