32 static ossimTrace traceDebug(
"ossimFgdcFileWriter:debug");
40 theSourceImageFilename()
53 <<
"ossimFgdcFileWriter::writeFile no filename set!" << endl;
60 <<
"ossimFgdcFileWriter::writeFile no input connection!" << endl;
68 <<
"ossimFgdcFileWriter::writeFile no input connection!" << endl;
79 <<
"ossimFgdcFileWriter::writeFile Not map projected." 86 os <<
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?>\n" 87 <<
"<?xml-stylesheet type=\"text/xsl\" href=\"/common/fgdc_classic.xsl\" ?>\n";
116 os <<
find(
ossimString(
"/metadata/idinfo/citation/citeinfo/serinfo/sername"));
128 os <<
find(
ossimString(
"/metadata/idinfo/citation/citeinfo/pubinfo/pubplace"));
132 os <<
find(
ossimString(
"/metadata/idinfo/citation/citeinfo/pubinfo/publish"));
160 os <<
find(
ossimString(
"/metadata/idinfo/timeperd/timeinfo/sngdate/caldate"));
258 os <<
find(
ossimString(
"/metadata/idinfo/ptcontac/cntinfo/cntperp/cntper"));
265 os <<
find(
ossimString(
"/metadata/idinfo/ptcontac/cntinfo/cntaddr/addrtype"));
269 os <<
find(
ossimString(
"/metadata/idinfo/ptcontac/cntinfo/cntaddr/address"));
273 os <<
find(
ossimString(
"/metadata/idinfo/ptcontac/cntinfo/cntaddr/city"));
277 os <<
find(
ossimString(
"/metadata/idinfo/ptcontac/cntinfo/cntaddr/state"));
281 os <<
find(
ossimString(
"/metadata/idinfo/ptcontac/cntinfo/cntaddr/postal"));
285 os <<
find(
ossimString(
"/metadata/idinfo/ptcontac/cntinfo/cntaddr/country"));
328 os <<
find(
ossimString(
"/metadata/distinfo/distrib/cntinfo/cntperp/cntper"));
336 os <<
find(
ossimString(
"/metadata/distinfo/distrib/cntinfo/cntaddr/addrtype"));
340 os <<
find(
ossimString(
"/metadata/distinfo/distrib/cntinfo/cntaddr/address"));
344 os <<
find(
ossimString(
"/metadata/distinfo/distrib/cntinfo/cntaddr/city"));
348 os <<
find(
ossimString(
"/metadata/distinfo/distrib/cntinfo/cntaddr/state"));
352 os <<
find(
ossimString(
"/metadata/distinfo/distrib/cntinfo/cntaddr/postal"));
356 os <<
find(
ossimString(
"/metadata/distinfo/distrib/cntinfo/cntaddr/country"));
362 os <<
find(
ossimString(
"/metadata/distinfo/distrib/cntinfo/cntvoice"));
370 os <<
find(
ossimString(
"/metadata/distinfo/distrib/cntinfo/cntemail"));
389 os <<
find(
ossimString(
"/metadata/distinfo/stdorder/digform/digtinfo/formname"));
400 os <<
find(
ossimString(
"/metadata/distinfo/stdorder/digform/digtopt/onlinopt/computer/networka/networkr"));
427 os <<
find(
ossimString(
"/metadata/metainfo/metc/cntinfo/cntperp/cntper"));
435 os <<
find(
ossimString(
"/metadata/metainfo/metc/cntinfo/cntaddr/addrtype"));
439 os <<
find(
ossimString(
"/metadata/metainfo/metc/cntinfo/cntaddr/address"));
443 os <<
find(
ossimString(
"/metadata/metainfo/metc/cntinfo/cntaddr/city"));
447 os <<
find(
ossimString(
"/metadata/metainfo/metc/cntinfo/cntaddr/state"));
451 os <<
find(
ossimString(
"/metadata/metainfo/metc/cntinfo/cntaddr/postal"));
455 os <<
find(
ossimString(
"/metadata/metainfo/metc/cntinfo/cntaddr/country"));
497 <<
"ossimFgdcFileWriter::writeTemplate Could not open: " << file
502 os <<
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\" ?>\n" 503 <<
"<?xml-stylesheet type=\"text/xsl\" href=\"/common/fgdc_classic.xsl\" ?>\n";
818 <<
"Wrote file: " << file.
c_str() << endl;
827 const char* lookup = kwl.
find(prefix,
"template");
832 lookup = kwl.
find(prefix,
"source_image_filename");
837 lookup = kwl.
find(prefix,
"tab_string");
842 lookup = kwl.
find(prefix,
"fgdc_template_doc");
886 os <<
"<" << tag.
c_str() <<
">";
897 bool decrementLevel)
const 910 os <<
"</" << tag.
c_str() <<
">\n";
932 vector< ossimRefPtr<ossimXmlNode> > xml_nodes;
935 if (xml_nodes.size())
937 if (xml_nodes[0].valid())
939 result = xml_nodes[0]->getText();
946 std::vector<ossimString>& metadatatypeList)
const 948 metadatatypeList.push_back(
ossimString(
"ossim_fgdc"));
954 return (metadataType ==
"ossim_fgdc");
ossimString getTabString() const
ossimXmlDocument theTemplate
virtual ossimIrect getBoundingRect(ossim_uint32 resLevel=0) const
This will return the bounding rect of the source.
static const ossimFilename NIL
This was taken from Wx widgets for performing touch and access date stamps.
ossimString find(const ossimString &xpath) const
Represents serializable keyword/value map.
const char * find(const char *key) const
ossim_uint32 theIndentionLevel
Class to write out meta data in a Federal Geographic Data Committe (FGDC) format. ...
static ossimString toString(bool aValue)
Numeric to string methods.
virtual bool isGeographic() const
void setTemplate(const ossimFilename &xmlTemplateFile)
void setIndentionLevel(ossim_uint32 level)
Sets the current indentation level.
ossim_uint32 getIndentionLevel() const
bool openFile(const ossimFilename &filename)
bool writeTemplate(const ossimFilename &file) const
void setTabString(const ossimString &tabString)
Sets the tab string.
std::string::size_type size() const
unsigned int ossim_uint32
virtual ~ossimFgdcFileWriter()
destructor
virtual ossimRefPtr< ossimImageGeometry > getImageGeometry()
Returns the image geometry object associated with this tile source or NULL if not defined...
virtual bool writeFile()
Writes file to disk.
ossimFgdcFileWriter()
constructor
const ossimProjection * getProjection() const
Access methods for projection (may be NULL pointer).
virtual ossimErrorCode getErrorStatus() const
ossimFilename theSourceImageFilename
const char * c_str() const
Returns a pointer to a null-terminated array of characters representing the string's contents...
virtual void getMetadatatypeList(std::vector< ossimString > &metadatatypeList) const
Satisfies pure virtual from ossimMetadataWriter base.
void closeTag(std::ostream &os, const ossimString &tag, bool decrementLevel) const
Closes tag decrementing indentation.
void openTag(std::ostream &os, const ossimString &tag, bool newLine) const
Writes openning tag adding any indentation and brackets.
std::basic_ofstream< char > ofstream
Class for char output file streams.
void findNodes(const ossimString &xpath, std::vector< ossimRefPtr< ossimXmlNode > > &nodelist) const
Appends any matching nodes to the list supplied (should be empty):
#define RTTI_DEF1(cls, name, b1)
virtual bool hasMetadataType(const ossimString &metadataType) const
Satisfies pure virtual from ossimMetadataWriter base.
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)
std::basic_ostream< char > ostream
Base class for char output streams.
virtual bool loadState(const ossimKeywordlist &kwl, const char *prefix=0)
Method to load the state from a keyword list.