15 static const ossimTrace traceDebug(
"ossimRsmida:debug");
17 static std::string IID_KW =
"iid";
18 static std::string EDITION_KW =
"edition";
20 static std::string ISID_KW =
"isid";
21 static std::string SID_KW =
"sid";
22 static std::string STID_KW =
"stid";
24 static std::string YEAR_KW =
"year";
25 static std::string MONTH_KW =
"month";
26 static std::string DAY_KW =
"day";
27 static std::string HOUR_KW =
"hour";
28 static std::string MINUTE_KW =
"minute";
29 static std::string SECOND_KW =
"second";
31 static std::string NRG_KW =
"nrg";
32 static std::string NCG_KW =
"ncg";
34 static std::string TRG_KW =
"trg";
35 static std::string TCG_KW =
"tcg";
37 static std::string GRNDD_KW =
"grndd";
39 static std::string XUOR_KW =
"xuor";
40 static std::string YUOR_KW =
"yuor";
41 static std::string ZUOR_KW =
"zuor";
43 static std::string XUXR_KW =
"xuxr";
44 static std::string XUYR_KW =
"xuyr";
45 static std::string XUZR_KW =
"xuzr";
47 static std::string YUXR_KW =
"yuxr";
48 static std::string YUYR_KW =
"yuyr";
49 static std::string YUZR_KW =
"yuzr";
51 static std::string ZUXR_KW =
"zuxr";
52 static std::string ZUYR_KW =
"zuyr";
53 static std::string ZUZR_KW =
"zuzr";
55 static std::string V1X_KW =
"v1x";
56 static std::string V1Y_KW =
"v1y";
57 static std::string V1Z_KW =
"v1z";
59 static std::string V2X_KW =
"v2x";
60 static std::string V2Y_KW =
"v2y";
61 static std::string V2Z_KW =
"v2z";
63 static std::string V3X_KW =
"v3x";
64 static std::string V3Y_KW =
"v3y";
65 static std::string V3Z_KW =
"v3z";
67 static std::string V4X_KW =
"v4x";
68 static std::string V4Y_KW =
"v4y";
69 static std::string V4Z_KW =
"v4z";
71 static std::string V5X_KW =
"v5x";
72 static std::string V5Y_KW =
"v5y";
73 static std::string V5Z_KW =
"v5z";
75 static std::string V6X_KW =
"v6x";
76 static std::string V6Y_KW =
"v6y";
77 static std::string V6Z_KW =
"v6z";
79 static std::string V7X_KW =
"v7x";
80 static std::string V7Y_KW =
"v7y";
81 static std::string V7Z_KW =
"v7z";
83 static std::string V8X_KW =
"v8x";
84 static std::string V8Y_KW =
"v8y";
85 static std::string V8Z_KW =
"v8z";
87 static std::string GRPX_KW =
"grpx";
88 static std::string GRPY_KW =
"grpy";
89 static std::string GRPZ_KW =
"grpz";
91 static std::string FULLR_KW =
"fullr";
92 static std::string FULLC_KW =
"fullc";
94 static std::string MINR_KW =
"minr";
95 static std::string MAXR_KW =
"maxr";
96 static std::string MINC_KW =
"minc";
97 static std::string MAXC_KW =
"maxc";
99 static std::string IE0_KW =
"ie0";
100 static std::string IER_KW =
"ier";
101 static std::string IEC_KW =
"iec";
102 static std::string IERR_KW =
"ierr";
103 static std::string IERC_KW =
"ierc";
104 static std::string IECC_KW =
"iecc";
106 static std::string IA0_KW =
"ia0";
107 static std::string IAR_KW =
"iar";
108 static std::string IAC_KW =
"iac";
109 static std::string IARR_KW =
"iarr";
110 static std::string IARC_KW =
"iarc";
111 static std::string IACC_KW =
"iacc";
113 static std::string SPX_KW =
"spx";
114 static std::string SVX_KW =
"svx";
115 static std::string SAX_KW =
"sax";
117 static std::string SPY_KW =
"spy";
118 static std::string SVY_KW =
"svy";
119 static std::string SAY_KW =
"say";
121 static std::string SPZ_KW =
"spz";
122 static std::string SVZ_KW =
"svz";
123 static std::string SAZ_KW =
"saz";
240 m_edition( obj.m_edition ),
242 m_isid( obj.m_isid ),
244 m_stid( obj.m_stid ),
246 m_year( obj.m_year ),
247 m_month( obj.m_month ),
249 m_hour( obj.m_hour ),
250 m_minute( obj.m_minute ),
251 m_second( obj.m_second ),
259 m_grndd( obj.m_grndd ),
261 m_xuor( obj.m_xuor ),
262 m_yuor( obj.m_yuor ),
263 m_zuor( obj.m_zuor ),
265 m_xuxr( obj.m_xuxr ),
266 m_xuyr( obj.m_xuyr ),
267 m_xuzr( obj.m_xuzr ),
269 m_yuxr( obj.m_yuxr ),
270 m_yuyr( obj.m_yuyr ),
271 m_yuzr( obj.m_yuzr ),
273 m_zuxr( obj.m_zuxr ),
274 m_zuyr( obj.m_zuyr ),
275 m_zuzr( obj.m_zuzr ),
309 m_grpx( obj.m_grpx ),
310 m_grpy( obj.m_grpy ),
311 m_grpz( obj.m_grpz ),
313 m_fullr( obj.m_fullr ),
314 m_fullc( obj.m_fullc ),
316 m_minr( obj.m_minr ),
317 m_maxr( obj.m_maxr ),
318 m_minc( obj.m_minc ),
319 m_maxc( obj.m_maxc ),
325 m_ierr( obj.m_ierr ),
326 m_ierc( obj.m_ierc ),
327 m_iecc( obj.m_iecc ),
333 m_iarr( obj.m_iarr ),
334 m_iarc( obj.m_iarc ),
335 m_iacc( obj.m_iacc ),
469 const std::string& prefix )
const 471 std::string pfx = prefix + std::string(
"rsmida.");
473 kwl.
add(pfx.c_str(), IID_KW.c_str(),
m_iid.c_str());
474 kwl.
add(pfx.c_str(), EDITION_KW.c_str(),
m_edition.c_str());
476 kwl.
add(pfx.c_str(), ISID_KW.c_str(),
m_isid.c_str());
477 kwl.
add(pfx.c_str(), SID_KW.c_str(),
m_sid.c_str());
478 kwl.
add(pfx.c_str(), STID_KW.c_str(),
m_stid.c_str());
480 kwl.
add(pfx.c_str(), YEAR_KW.c_str(),
m_year);
481 kwl.
add(pfx.c_str(), MONTH_KW.c_str(),
m_month);
482 kwl.
add(pfx.c_str(), DAY_KW.c_str(),
m_day);
483 kwl.
add(pfx.c_str(), HOUR_KW.c_str(),
m_hour);
487 kwl.
add(pfx.c_str(), NRG_KW.c_str(),
m_nrg);
488 kwl.
add(pfx.c_str(), NCG_KW.c_str(),
m_ncg);
490 kwl.
add(pfx.c_str(), TRG_KW.c_str(),
m_trg);
491 kwl.
add(pfx.c_str(), TCG_KW.c_str(),
m_tcg);
493 kwl.
add(pfx.c_str(), GRNDD_KW.c_str(),
m_grndd);
495 kwl.
add(pfx.c_str(), XUOR_KW.c_str(),
m_xuor);
496 kwl.
add(pfx.c_str(), YUOR_KW.c_str(),
m_yuor);
497 kwl.
add(pfx.c_str(), ZUOR_KW.c_str(),
m_zuor);
499 kwl.
add(pfx.c_str(), XUXR_KW.c_str(),
m_xuxr);
500 kwl.
add(pfx.c_str(), XUYR_KW.c_str(),
m_xuyr);
501 kwl.
add(pfx.c_str(), XUZR_KW.c_str(),
m_xuzr);
503 kwl.
add(pfx.c_str(), YUXR_KW.c_str(),
m_yuxr);
504 kwl.
add(pfx.c_str(), YUYR_KW.c_str(),
m_yuyr);
505 kwl.
add(pfx.c_str(), YUZR_KW.c_str(),
m_yuzr);
507 kwl.
add(pfx.c_str(), ZUXR_KW.c_str(),
m_zuxr);
508 kwl.
add(pfx.c_str(), ZUYR_KW.c_str(),
m_zuyr);
509 kwl.
add(pfx.c_str(), ZUZR_KW.c_str(),
m_zuzr);
511 kwl.
add(pfx.c_str(), V1X_KW.c_str(),
m_v1x);
512 kwl.
add(pfx.c_str(), V1Y_KW.c_str(),
m_v1y);
513 kwl.
add(pfx.c_str(), V1Z_KW.c_str(),
m_v1z);
515 kwl.
add(pfx.c_str(), V2X_KW.c_str(),
m_v2x);
516 kwl.
add(pfx.c_str(), V2Y_KW.c_str(),
m_v2y);
517 kwl.
add(pfx.c_str(), V2Z_KW.c_str(),
m_v2z);
519 kwl.
add(pfx.c_str(), V3X_KW.c_str(),
m_v3x);
520 kwl.
add(pfx.c_str(), V3Y_KW.c_str(),
m_v3y);
521 kwl.
add(pfx.c_str(), V3Z_KW.c_str(),
m_v3z);
523 kwl.
add(pfx.c_str(), V4X_KW.c_str(),
m_v4x);
524 kwl.
add(pfx.c_str(), V4Y_KW.c_str(),
m_v4y);
525 kwl.
add(pfx.c_str(), V4Z_KW.c_str(),
m_v4z);
527 kwl.
add(pfx.c_str(), V5X_KW.c_str(),
m_v5x);
528 kwl.
add(pfx.c_str(), V5Y_KW.c_str(),
m_v5y);
529 kwl.
add(pfx.c_str(), V5Z_KW.c_str(),
m_v5z);
531 kwl.
add(pfx.c_str(), V6X_KW.c_str(),
m_v6x);
532 kwl.
add(pfx.c_str(), V6Y_KW.c_str(),
m_v6y);
533 kwl.
add(pfx.c_str(), V6Z_KW.c_str(),
m_v6z);
535 kwl.
add(pfx.c_str(), V7X_KW.c_str(),
m_v7x);
536 kwl.
add(pfx.c_str(), V7Y_KW.c_str(),
m_v7y);
537 kwl.
add(pfx.c_str(), V7Z_KW.c_str(),
m_v7z);
539 kwl.
add(pfx.c_str(), V8X_KW.c_str(),
m_v8x);
540 kwl.
add(pfx.c_str(), V8Y_KW.c_str(),
m_v8y);
541 kwl.
add(pfx.c_str(), V8Z_KW.c_str(),
m_v8z);
543 kwl.
add(pfx.c_str(), GRPX_KW.c_str(),
m_grpx);
544 kwl.
add(pfx.c_str(), GRPY_KW.c_str(),
m_grpy);
545 kwl.
add(pfx.c_str(), GRPZ_KW.c_str(),
m_grpz);
547 kwl.
add(pfx.c_str(), FULLR_KW.c_str(),
m_fullr);
548 kwl.
add(pfx.c_str(), FULLC_KW.c_str(),
m_fullc);
550 kwl.
add(pfx.c_str(), MINR_KW.c_str(),
m_minr);
551 kwl.
add(pfx.c_str(), MAXR_KW.c_str(),
m_maxr);
552 kwl.
add(pfx.c_str(), MINC_KW.c_str(),
m_minc);
553 kwl.
add(pfx.c_str(), MAXC_KW.c_str(),
m_maxc);
555 kwl.
add(pfx.c_str(), IE0_KW.c_str(),
m_ie0);
556 kwl.
add(pfx.c_str(), IER_KW.c_str(),
m_ier);
557 kwl.
add(pfx.c_str(), IEC_KW.c_str(),
m_iec);
559 kwl.
add(pfx.c_str(), IERR_KW.c_str(),
m_ierr);
560 kwl.
add(pfx.c_str(), IERC_KW.c_str(),
m_ierc);
561 kwl.
add(pfx.c_str(), IECC_KW.c_str(),
m_iecc);
563 kwl.
add(pfx.c_str(), IA0_KW.c_str(),
m_ie0);
564 kwl.
add(pfx.c_str(), IAR_KW.c_str(),
m_ier);
565 kwl.
add(pfx.c_str(), IAC_KW.c_str(),
m_iec);
567 kwl.
add(pfx.c_str(), IARR_KW.c_str(),
m_ie0);
568 kwl.
add(pfx.c_str(), IARC_KW.c_str(),
m_ier);
569 kwl.
add(pfx.c_str(), IACC_KW.c_str(),
m_iec);
571 kwl.
add(pfx.c_str(), SPX_KW.c_str(),
m_spx);
572 kwl.
add(pfx.c_str(), SVX_KW.c_str(),
m_svx);
573 kwl.
add(pfx.c_str(), SAX_KW.c_str(),
m_sax);
575 kwl.
add(pfx.c_str(), SPY_KW.c_str(),
m_spy);
576 kwl.
add(pfx.c_str(), SVY_KW.c_str(),
m_svy);
577 kwl.
add(pfx.c_str(), SAY_KW.c_str(),
m_say);
579 kwl.
add(pfx.c_str(), SPZ_KW.c_str(),
m_spz);
580 kwl.
add(pfx.c_str(), SVZ_KW.c_str(),
m_svz);
581 kwl.
add(pfx.c_str(), SAZ_KW.c_str(),
m_saz);
586 const std::string& prefix )
588 static const char MODULE[] =
"ossimRsmida::loadState";
589 std::string pfx = prefix + std::string(
"rsmida.");
598 value = kwl.
findKey( pfx, key );
609 value = kwl.
findKey( pfx, key );
620 value = kwl.
findKey( pfx, key );
631 << MODULE <<
" NOTICE: " << ISID_KW <<
"was not found or is blank.\n";
636 value = kwl.
findKey( pfx, key );
647 << MODULE <<
" NOTICE: " << ISID_KW <<
"was not found or is blank.\n";
652 value = kwl.
findKey( pfx, key );
663 value = kwl.
findKey( pfx, key );
674 value = kwl.
findKey( pfx, key );
685 value = kwl.
findKey( pfx, key );
696 value = kwl.
findKey( pfx, key );
707 value = kwl.
findKey( pfx, key );
718 value = kwl.
findKey( pfx, key );
729 value = kwl.
findKey( pfx, key );
740 value = kwl.
findKey( pfx, key );
751 value = kwl.
findKey( pfx, key );
762 value = kwl.
findKey( pfx, key );
773 value = kwl.
findKey( pfx, key );
784 value = kwl.
findKey( pfx, key );
795 value = kwl.
findKey( pfx, key );
806 value = kwl.
findKey( pfx, key );
817 value = kwl.
findKey( pfx, key );
828 value = kwl.
findKey( pfx, key );
839 value = kwl.
findKey( pfx, key );
850 value = kwl.
findKey( pfx, key );
861 value = kwl.
findKey( pfx, key );
872 value = kwl.
findKey( pfx, key );
883 value = kwl.
findKey( pfx, key );
894 value = kwl.
findKey( pfx, key );
905 value = kwl.
findKey( pfx, key );
916 value = kwl.
findKey( pfx, key );
927 value = kwl.
findKey( pfx, key );
938 value = kwl.
findKey( pfx, key );
949 value = kwl.
findKey( pfx, key );
960 value = kwl.
findKey( pfx, key );
971 value = kwl.
findKey( pfx, key );
982 value = kwl.
findKey( pfx, key );
993 value = kwl.
findKey( pfx, key );
1004 value = kwl.
findKey( pfx, key );
1015 value = kwl.
findKey( pfx, key );
1026 value = kwl.
findKey( pfx, key );
1037 value = kwl.
findKey( pfx, key );
1048 value = kwl.
findKey( pfx, key );
1059 value = kwl.
findKey( pfx, key );
1070 value = kwl.
findKey( pfx, key );
1081 value = kwl.
findKey( pfx, key );
1092 value = kwl.
findKey( pfx, key );
1103 value = kwl.
findKey( pfx, key );
1114 value = kwl.
findKey( pfx, key );
1125 value = kwl.
findKey( pfx, key );
1136 value = kwl.
findKey( pfx, key );
1147 value = kwl.
findKey( pfx, key );
1158 value = kwl.
findKey( pfx, key );
1169 value = kwl.
findKey( pfx, key );
1180 value = kwl.
findKey( pfx, key );
1191 value = kwl.
findKey( pfx, key );
1202 value = kwl.
findKey( pfx, key );
1213 value = kwl.
findKey( pfx, key );
1224 value = kwl.
findKey( pfx, key );
1235 value = kwl.
findKey( pfx, key );
1246 value = kwl.
findKey( pfx, key );
1257 value = kwl.
findKey( pfx, key );
1268 value = kwl.
findKey( pfx, key );
1279 value = kwl.
findKey( pfx, key );
1290 value = kwl.
findKey( pfx, key );
1301 value = kwl.
findKey( pfx, key );
1312 value = kwl.
findKey( pfx, key );
1323 value = kwl.
findKey( pfx, key );
1334 value = kwl.
findKey( pfx, key );
1345 value = kwl.
findKey( pfx, key );
1356 value = kwl.
findKey( pfx, key );
1367 value = kwl.
findKey( pfx, key );
1378 value = kwl.
findKey( pfx, key );
1389 value = kwl.
findKey( pfx, key );
1400 value = kwl.
findKey( pfx, key );
1411 value = kwl.
findKey( pfx, key );
1422 value = kwl.
findKey( pfx, key );
1433 value = kwl.
findKey( pfx, key );
1444 value = kwl.
findKey( pfx, key );
1455 value = kwl.
findKey( pfx, key );
1466 value = kwl.
findKey( pfx, key );
1477 value = kwl.
findKey( pfx, key );
1488 value = kwl.
findKey( pfx, key );
1499 value = kwl.
findKey( pfx, key );
1517 if ( result ==
false )
1521 << MODULE <<
" WARNING:\n" 1522 <<
"Error encountered parsing the following required keyword: " 1524 <<
"\nCheck the keywordlist for required key:value pairs."
ossimString getHour() const
ossimString getV3x() const
ossimString getIer() const
ossimString getMaxc() const
ossimString getSpx() const
ossimString getV4z() const
ossimString getV3y() const
bool initialize(const ossimNitfRsmidaTag *rsmidaTag)
initialize Initializes from nitf rsmida tag.
ossimString getIsid() const
ossimString getXuyr() const
ossimString getSid() const
ossimString getV6z() const
ossimString getV1y() const
Represents serializable keyword/value map.
const std::string & findKey(const std::string &key) const
Find methods that take std::string(s).
ossimString getGrpx() const
ossimString getZuor() const
ossimString getStid() const
ossimString getIa0() const
ossimString getV1z() const
ossimString getSaz() const
ossimString getIec() const
ossimString getSvx() const
ossimString getV3z() const
ossimString getGrpz() const
ossimString getV2y() const
ossimString getMinc() const
ossimString getIacc() const
ossim_uint32 toUInt32() const
ossimString getV4x() const
ossimString getNcg() const
RSM Identification: Id's, time-of-image model, optional illumination model, footprint information...
ossimString getZuxr() const
ossimString getV2z() const
ossimString getXuzr() const
ossimString getMonth() const
ossimString getIid() const
bool loadState(const ossimKeywordlist &kwl, const std::string &prefix)
loadState Loads state from keyword list.
ossimString getSvy() const
ossimString getV5z() const
ossimString getIarr() const
ossim_int32 toInt32() const
ossimString getV1x() const
void add(const char *prefix, const ossimKeywordlist &kwl, bool overwrite=true)
ossimString getV5x() const
ossimString getSpy() const
ossimString getMinute() const
ossimString getGrndd() const
ossimString getSay() const
ossimString getYuor() const
ossimString getSax() const
ossimString getGrpy() const
ossimString getV7z() const
ossimString getYuzr() const
const ossimRsmida & operator=(const ossimRsmida &rhs)
assignment operator
ossimString getV2x() const
ossimString getV6y() const
ossimString getIac() const
ossimString trim(const ossimString &valueToTrim=ossimString(" \\)) const
this will strip lead and trailing character passed in.
ossimString getIerr() const
ossim_float64 toFloat64() const
ossimString getV7y() const
ossimString getXuor() const
void saveState(ossimKeywordlist &kwl, const std::string &prefix) const
saveState Saves state to keyword list.
ossimString getSecond() const
ossimString getIerc() const
ossimString getV8z() const
ossimString getDay() const
ossimString getYear() const
ossimString getV7x() const
ossimRsmida()
default constructor
ossimString getSpz() const
ossimString getFullr() const
ossimString getNrg() const
ossimString getXuxr() const
ossimString getV4y() const
ossimString getYuxr() const
ossimString getZuyr() const
ossimString getMinr() const
ossimString getIecc() const
ossimString getTcg() const
ossimString getZuzr() const
ossimString getV8y() const
ossimString getEdition() const
ossimString getSvz() const
ossimString getMaxr() const
ossimString getV5y() const
ossimString getYuyr() const
ossimString getTrg() const
ossimString getIarc() const
ossimString getFullc() const
ossimString getV8x() const
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)
ossimString getIar() const
ossimString getIe0() const
const std::string & string() const
ossimString getV6x() const