OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
ossimNitfRegisteredTagFactory.cpp
Go to the documentation of this file.
1 //*******************************************************************
2 //
3 // License: LGPL
4 //
5 // See LICENSE.txt file in the top level directory for more details.
6 //
7 // Author: Garrett Potts
8 //
9 // Description: Nitf support class
10 //
11 //********************************************************************
12 // $Id: ossimNitfRegisteredTagFactory.cpp 23113 2015-01-28 17:04:17Z gpotts $
13 
15 
28 // #include <ossim/support_data/ossimNitfLocalGeographicTag.h>
47 
48 
49 RTTI_DEF1(ossimNitfRegisteredTagFactory, "ossimNitfRegisteredTagFactory", ossimNitfTagFactory);
50 
51 static const char ACFTB_TAG[] = "ACFTB";
52 static const char AIMIDB_TAG[] = "AIMIDB";
53 static const char BLOCKA_TAG[] = "BLOCKA";
54 static const char CSCRNA_TAG[] = "CSCRNA";
55 static const char CSDIDA_TAG[] = "CSDIDA";
56 static const char CSEXRA_TAG[] = "CSEXRA";
57 static const char ENGRDA_TAG[] = "ENGRDA";
58 static const char GEOLOB_TAG[] = "GEOLOB";
59 static const char GEO_POSITIONING_TAG[] = "GEOPSB";
60 static const char ICHIPB_TAG[] = "ICHIPB";
61 static const char J2KLRA_TAG[] = "J2KLRA";
62 static const char LOCAL_GEOGRAPHIC_TAG[] = "GEOLOB";
63 static const char LOCAL_CARTOGRAPHIC_TAG[] = "MAPLOB";
64 static const char MSTGTA_TAG[] = "MSTGTA";
65 static const char PIAIMC_TAG[] = "PIAIMC";
66 static const char PROJECTION_PARAMETER_TAG[] = "PRJPSB";
67 static const char RPCB_TAG[] = "RPC00B";
68 static const char RPCA_TAG[] = "RPC00A";
69 static const char SENSRA_TAG[] = "SENSRA";
70 static const char STDIDC_TAG[] = "STDIDC";
71 static const char STREOB_TAG[] = "STREOB";
72 static const char USE00A_TAG[] = "USE00A";
73 static const char HISTOA_TAG[] = "HISTOA";
74 static const char CSCCGA_TAG[] = "CSCCGA";
75 static const char CSPROA_TAG[] = "CSPROA";
76 static const char EXOPTA_TAG[] = "EXOPTA";
77 static const char RSMECA_TAG[] = "RSMECA";
78 static const char RSMIDA_TAG[] = "RSMIDA";
79 static const char RSMPCA_TAG[] = "RSMPCA";
80 static const char RSMPIA_TAG[] = "RSMPIA";
82 {
83 }
84 
86 {
87 }
88 
90 {
92  return &inst;
93 }
94 
96  const ossimString& tagName)const
97 {
98  ossimString name = ossimString(tagName).trim().upcase();
99 
100  if(tagName == ACFTB_TAG)
101  {
102  return new ossimNitfAcftbTag;
103  }
104  else if(tagName == AIMIDB_TAG)
105  {
106  return new ossimNitfAimidbTag;
107  }
108  else if(tagName == BLOCKA_TAG)
109  {
110  return new ossimNitfBlockaTag;
111  }
112  else if(tagName == CSCRNA_TAG)
113  {
114  return new ossimNitfCscrnaTag;
115  }
116  else if(tagName == CSDIDA_TAG)
117  {
118  return new ossimNitfCsdidaTag;
119  }
120  else if(tagName == CSEXRA_TAG)
121  {
122  return new ossimNitfCsexraTag;
123  }
124  else if(tagName == ENGRDA_TAG)
125  {
126  return new ossimNitfEngrdaTag;
127  }
128  else if(tagName == GEOLOB_TAG)
129  {
130  return new ossimNitfGeolobTag;
131  }
132  else if(tagName == GEO_POSITIONING_TAG)
133  {
134  return new ossimNitfGeoPositioningTag;
135  }
136  else if(tagName == ICHIPB_TAG)
137  {
138  return new ossimNitfIchipbTag;
139  }
140  else if(tagName == J2KLRA_TAG)
141  {
142  return new ossimNitfJ2klraTag;
143  }
144 #if 0 /* ossimNitfGeolobTag */
145  else if(tagName == LOCAL_GEOGRAPHIC_TAG)
146  {
147  return new ossimNitfLocalGeographicTag;
148  }
149 #endif
150  else if(tagName == LOCAL_CARTOGRAPHIC_TAG)
151  {
153  }
154  else if(tagName == MSTGTA_TAG)
155  {
156  return new ossimNitfMstgtaTag;
157  }
158  else if(tagName == PIAIMC_TAG)
159  {
160  return new ossimNitfPiaimcTag;
161  }
162  else if(tagName == PROJECTION_PARAMETER_TAG)
163  {
165  }
166  else if(tagName == RPCB_TAG)
167  {
168  return new ossimNitfRpcBTag();
169  }
170  else if(tagName == RPCA_TAG)
171  {
172  return new ossimNitfRpcATag();
173  }
174  else if (tagName == SENSRA_TAG)
175  {
176  return new ossimNitfSensraTag();
177  }
178  else if (tagName == STDIDC_TAG)
179  {
180  return new ossimNitfStdidcTag();
181  }
182  else if (tagName == STREOB_TAG)
183  {
184  return new ossimNitfStreobTag();
185  }
186  else if (tagName == USE00A_TAG)
187  {
188  return new ossimNitfUse00aTag();
189  }
190  else if(tagName == HISTOA_TAG)
191  {
192  return new ossimNitfHistoaTag();
193  }
194  else if(tagName == CSCCGA_TAG)
195  {
196  return new ossimNitfCsccgaTag();
197  }
198  else if(tagName == CSPROA_TAG)
199  {
200  return new ossimNitfCsproaTag();
201  }
202  else if(tagName == EXOPTA_TAG)
203  {
204  return new ossimNitfExoptaTag();
205  }
206  else if(tagName == RSMECA_TAG)
207  {
208  return new ossimNitfRsmecaTag();
209  }
210  else if(tagName == RSMIDA_TAG)
211  {
212  return new ossimNitfRsmidaTag();
213  }
214  else if(tagName == RSMPCA_TAG)
215  {
216  return new ossimNitfRsmpcaTag();
217  }
218  else if(tagName == RSMPIA_TAG)
219  {
220  return new ossimNitfRsmpiaTag();
221  }
222  return NULL;
223 }
static ossimString upcase(const ossimString &aString)
Definition: ossimString.cpp:34
RTTI_DEF1(ossimNitfRegisteredTagFactory, "ossimNitfRegisteredTagFactory", ossimNitfTagFactory)
The layout of RPC00B is the same as RPC00A.
The layout of RPC00B is the same as RPC00A.
RSM Identification: Id&#39;s, time-of-image model, optional illumination model, footprint information...
EXOPTA - Exploitation Usability Optical Information Extension Format.
ossimString trim(const ossimString &valueToTrim=ossimString(" \\)) const
this will strip lead and trailing character passed in.
virtual ossimRefPtr< ossimNitfRegisteredTag > create(const ossimString &tagName) const
RSM Polynomial Coefficients: Polynomials coefficients for a section.
static ossimNitfRegisteredTagFactory * instance()
All comments in this document were taken from the online resource found at: