OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimNitfCsproaTag.cpp
Go to the documentation of this file.
2 #include <iomanip>
3 #include <iostream>
4 
6  : ossimNitfRegisteredTag(std::string("CSPROA"), 120)
7 {
8  clearFields();
9 }
10 
12 {
13  in.read(m_reserved1, RESERVE1_SIZE);
14  in.read(m_reserved2, RESERVE2_SIZE);
15  in.read(m_reserved3, RESERVE3_SIZE);
16  in.read(m_reserved4, RESERVE4_SIZE);
17  in.read(m_reserved5, RESERVE5_SIZE);
18  in.read(m_reserved6, RESERVE6_SIZE);
19  in.read(m_reserved7, RESERVE7_SIZE);
20  in.read(m_reserved8, RESERVE8_SIZE);
21  in.read(m_reserved9, RESERVE9_SIZE);
22  in.read(m_bwc, BWC_SIZE);
23 }
24 
26 {
27  out.write(m_reserved1, RESERVE1_SIZE);
28  out.write(m_reserved2, RESERVE2_SIZE);
29  out.write(m_reserved3, RESERVE3_SIZE);
30  out.write(m_reserved4, RESERVE4_SIZE);
31  out.write(m_reserved5, RESERVE5_SIZE);
32  out.write(m_reserved6, RESERVE6_SIZE);
33  out.write(m_reserved7, RESERVE7_SIZE);
34  out.write(m_reserved8, RESERVE8_SIZE);
35  out.write(m_reserved9, RESERVE9_SIZE);
36  out.write(m_bwc, BWC_SIZE);
37 }
38 
40  const std::string& prefix) const
41 {
42  std::string pfx = prefix;
43  pfx += getTagName();
44  pfx += ".";
45  out << setiosflags(ios::left)
46  << pfx << std::setw(24) << "CETAG:" << getTagName() << "\n"
47  << pfx << std::setw(24) << "CEL:" << getTagLength() << "\n"
48  << pfx << std::setw(24) << "RESERVED1:" << m_reserved1 << "\n"
49  << pfx << std::setw(24) << "RESERVED2:" << m_reserved2 << "\n"
50  << pfx << std::setw(24) << "RESERVED3:" << m_reserved3 << "\n"
51  << pfx << std::setw(24) << "RESERVED4:" << m_reserved4 << "\n"
52  << pfx << std::setw(24) << "RESERVED5:" << m_reserved5 << "\n"
53  << pfx << std::setw(24) << "RESERVED6:" << m_reserved6 << "\n"
54  << pfx << std::setw(24) << "RESERVED7:" << m_reserved7 << "\n"
55  << pfx << std::setw(24) << "RESERVED8:" << m_reserved8 << "\n"
56  << pfx << std::setw(24) << "RESERVED9:" << m_reserved9 << "\n"
57  << pfx << std::setw(24) << "BWC:" << m_bwc << "\n";
58 
59  return out;
60 }
61 
63 {
64  memset(m_reserved1, ' ', RESERVE1_SIZE);
65  memset(m_reserved2, ' ', RESERVE2_SIZE);
66  memset(m_reserved3, ' ', RESERVE3_SIZE);
67  memset(m_reserved4, ' ', RESERVE4_SIZE);
68  memset(m_reserved5, ' ', RESERVE5_SIZE);
69  memset(m_reserved6, ' ', RESERVE6_SIZE);
70  memset(m_reserved7, ' ', RESERVE7_SIZE);
71  memset(m_reserved8, ' ', RESERVE8_SIZE);
72  memset(m_reserved9, ' ', RESERVE9_SIZE);
73  memset(m_bwc, ' ', BWC_SIZE);
74 
75  char reserve1[]="LATESTCAL";
76  memcpy(m_reserved1, reserve1, 9);
77  char reserve4[] = "MARKANDFIX";
78  memcpy(m_reserved4, reserve4, 10);
79  char reserve7[] = "SKIPAGM";
80  memcpy(m_reserved7, reserve7, 7);
81  char reserve8[] = "INTERP";
82  memcpy(m_reserved8, reserve8, 6);
83 
84  m_reserved1[RESERVE1_SIZE] = '\0';
85  m_reserved2[RESERVE2_SIZE] = '\0';
86  m_reserved3[RESERVE3_SIZE] = '\0';
87  m_reserved4[RESERVE4_SIZE] = '\0';
88  m_reserved5[RESERVE5_SIZE] = '\0';
89  m_reserved6[RESERVE6_SIZE] = '\0';
90  m_reserved7[RESERVE7_SIZE] = '\0';
91  m_reserved8[RESERVE8_SIZE] = '\0';
92  m_reserved9[RESERVE9_SIZE] = '\0';
93  m_bwc[BWC_SIZE] = '\0';
94 }
virtual const std::string & getTagName() const
This will return the name of the registered tag for this user defined header.
char m_reserved8[RESERVE1_SIZE+1]
char m_reserved5[RESERVE1_SIZE+1]
virtual void clearFields()
char m_reserved9[RESERVE1_SIZE+1]
char m_reserved3[RESERVE1_SIZE+1]
char m_reserved4[RESERVE1_SIZE+1]
char m_reserved6[RESERVE1_SIZE+1]
virtual void writeStream(std::ostream &out)
virtual ossim_uint32 getTagLength() const
Returns the length in bytes of the tag from the CEL or REL field.
virtual void parseStream(std::istream &in)
char m_reserved7[RESERVE1_SIZE+1]
std::basic_istream< char > istream
Base class for char input streams.
Definition: ossimIosFwd.h:20
virtual std::ostream & print(std::ostream &out, const std::string &prefix=std::string()) const
Pure virtual print method that outputs a key/value type format adding prefix to keys.
char m_reserved2[RESERVE1_SIZE+1]
char m_bwc[BWC_SIZE+1]
std::basic_ostream< char > ostream
Base class for char output streams.
Definition: ossimIosFwd.h:23
char m_reserved1[RESERVE1_SIZE+1]