OSSIM - Open Source Software Image Map  Version 1.9.0 (20180803)
Public Member Functions | Private Member Functions | Private Attributes | Friends | List of all members
ossimXmlDocument Class Reference

#include <ossimXmlDocument.h>

Inheritance diagram for ossimXmlDocument:
ossimObject ossimErrorStatusInterface ossimReferenced

Public Member Functions

 ossimXmlDocument (const ossimFilename &xmlFileName="")
 
 ossimXmlDocument (const ossimXmlDocument &src)
 
virtual ossimObjectdup () const
 
virtual ~ossimXmlDocument ()
 
bool write (const ossimFilename &file)
 
bool openFile (const ossimFilename &filename)
 
bool read (std::istream &in)
 
void findNodes (const ossimString &xpath, std::vector< ossimRefPtr< ossimXmlNode > > &nodelist) const
 Appends any matching nodes to the list supplied (should be empty): More...
 
void initRoot (ossimRefPtr< ossimXmlNode > node)
 
ossimRefPtr< ossimXmlNodegetRoot ()
 
const ossimRefPtr< ossimXmlNodegetRoot () const
 
ossimRefPtr< ossimXmlNoderemoveRoot ()
 
void fromKwl (const ossimKeywordlist &kwl)
 
void toKwl (ossimKeywordlist &kwl, const ossimString &prefix="") const
 
- Public Member Functions inherited from ossimObject
 ossimObject ()
 
virtual ~ossimObject ()
 
virtual ossimString getShortName () const
 
virtual ossimString getLongName () const
 
virtual ossimString getDescription () const
 
virtual ossimString getClassName () const
 
virtual RTTItypeid getType () const
 
virtual bool canCastTo (ossimObject *obj) const
 
virtual bool canCastTo (const RTTItypeid &id) const
 
virtual bool canCastTo (const ossimString &parentClassName) const
 
virtual bool saveState (ossimKeywordlist &kwl, const char *prefix=0) const
 
virtual bool loadState (const ossimKeywordlist &kwl, const char *prefix=0)
 
virtual std::ostream & print (std::ostream &out) const
 Generic print method. More...
 
virtual bool isEqualTo (const ossimObject &obj, ossimCompareType compareType=OSSIM_COMPARE_FULL) const
 
virtual void accept (ossimVisitor &visitor)
 
- Public Member Functions inherited from ossimReferenced
 ossimReferenced ()
 
 ossimReferenced (const ossimReferenced &)
 
ossimReferencedoperator= (const ossimReferenced &)
 
void ref () const
 increment the reference count by one, indicating that this object has another pointer which is referencing it. More...
 
void unref () const
 decrement the reference count by one, indicating that a pointer to this object is referencing it. More...
 
void unref_nodelete () const
 decrement the reference count by one, indicating that a pointer to this object is referencing it. More...
 
int referenceCount () const
 
- Public Member Functions inherited from ossimErrorStatusInterface
 ossimErrorStatusInterface ()
 
virtual ~ossimErrorStatusInterface ()
 
virtual ossimErrorCode getErrorStatus () const
 
virtual ossimString getErrorStatusString () const
 
virtual void setErrorStatus (ossimErrorCode error_status) const
 
virtual void setErrorStatus () const
 
virtual void clearErrorStatus () const
 
bool hasError () const
 
virtual std::ostream & print (std::ostream &out) const
 Outputs theErrorStatus as an ossimErrorCode and an ossimString. More...
 

Private Member Functions

bool readHeader (std::istream &in)
 

Private Attributes

ossimRefPtr< ossimXmlNodetheRootNode
 
ossimString theXmlHeader
 
ossimFilename theFilename
 
bool theStrictCheckFlag
 

Friends

OSSIMDLLEXPORT friend std::ostream & operator<< (std::ostream &os, const ossimXmlDocument &xml_doc)
 

Additional Inherited Members

- Protected Member Functions inherited from ossimReferenced
virtual ~ossimReferenced ()
 
- Protected Attributes inherited from ossimErrorStatusInterface
ossimErrorCode theErrorStatus
 

Detailed Description

Definition at line 24 of file ossimXmlDocument.h.

Constructor & Destructor Documentation

◆ ossimXmlDocument() [1/2]

ossimXmlDocument::ossimXmlDocument ( const ossimFilename xmlFileName = "")

Definition at line 49 of file ossimXmlDocument.cpp.

50  :
51  theRootNode (0),
52  theXmlHeader("<?xml version='1.0'?>"),
53  theStrictCheckFlag(false)
54 {
55  if(xmlFileName != "")
56  {
57  openFile(xmlFileName);
58  }
59 }
bool openFile(const ossimFilename &filename)
ossimString theXmlHeader
ossimRefPtr< ossimXmlNode > theRootNode

◆ ossimXmlDocument() [2/2]

ossimXmlDocument::ossimXmlDocument ( const ossimXmlDocument src)

Definition at line 61 of file ossimXmlDocument.cpp.

62 :ossimObject(src),
67 {
68 
69 }
bool valid() const
Definition: ossimRefPtr.h:75
ossimFilename theFilename
ossimString theXmlHeader
ossimRefPtr< ossimXmlNode > theRootNode
virtual ossimObject * dup() const
Definition: ossimXmlNode.h:36

◆ ~ossimXmlDocument()

ossimXmlDocument::~ossimXmlDocument ( )
virtual

Definition at line 71 of file ossimXmlDocument.cpp.

72 {
73 }

Member Function Documentation

◆ dup()

virtual ossimObject* ossimXmlDocument::dup ( ) const
inlinevirtual

Reimplemented from ossimObject.

Definition at line 30 of file ossimXmlDocument.h.

31  {
32  return new ossimXmlDocument(*this);
33  }
ossimXmlDocument(const ossimFilename &xmlFileName="")

◆ findNodes()

void ossimXmlDocument::findNodes ( const ossimString xpath,
std::vector< ossimRefPtr< ossimXmlNode > > &  nodelist 
) const

Appends any matching nodes to the list supplied (should be empty):

Definition at line 172 of file ossimXmlDocument.cpp.

References theRootNode, and ossimRefPtr< T >::valid().

Referenced by ossimGmlSupportData::addLineSamps(), ossimGmlSupportData::addScale(), ossimGmlSupportData::addTie(), ossimFgdcFileWriter::find(), ossimplugins::ossimTerraSarProductDoc::getCommonPrf(), ossimplugins::ossimTerraSarProductDoc::getCommonRsf(), ossimplugins::ossimTerraSarProductDoc::getImageDataStrartWith(), ossimGmlSupportData::getImageGeometryFromRectifiedGrid(), ossimGmlSupportData::getImageGeometryFromSeonsorModel(), ossimFgdcXmlDoc::getImageSize(), ossimplugins::ossimTerraSarProductDoc::getNumberOfAzimuthLooks(), ossimplugins::ossimTerraSarProductDoc::getNumberOfRangeLooks(), ossimplugins::ossim::getPath(), ossimAuxXmlSupportData::getPath(), ossimXmpInfo::getPath(), ossimFgdcXmlDoc::getPath(), ossimplugins::ossimTerraSarModel::getPolLayerFromImageFile(), ossimplugins::ossimTerraSarModel::initCalibration(), ossimSpotDimapSupportData::initFramePoints(), ossimFormosatDimapSupportData::initFramePoints(), ossimAuxXmlSupportData::initializeProjection(), ossimSpotDimapSupportData::initImageId(), ossimFormosatDimapSupportData::initImageId(), ossimplugins::ossimRadarSat2Model::InitLut(), ossimSpotDimapSupportData::initMetadataVersion(), ossimFormosatDimapSupportData::initMetadataVersion(), ossimplugins::ossimTerraSarModel::initNoise(), ossimplugins::ossimTerraSarProductDoc::initNoise(), ossimplugins::ossimTerraSarProductDoc::initPlatformPosition(), ossimplugins::ossimRadarSat2Model::InitRefNoiseLevel(), ossimplugins::ossimTerraSarProductDoc::initSceneCoord(), ossimSpotDimapSupportData::initSceneSource(), ossimFormosatDimapSupportData::initSceneSource(), ossimplugins::ossimTerraSarModel::initSRGR(), ossimplugins::ossimRadarSat2Model::initSRGR(), ossimplugins::ossimTerraSarProductDoc::initTiePoints(), ossimNitfXmlDataContentDes::loadValueFromXml(), ossimplugins::ossimSpot6DimapSupportData::parseDatasetContent(), ossimplugins::ossimPleiadesDimapSupportData::parseDatasetContent(), ossimplugins::ossimSpot6DimapSupportData::parseGeometricData(), ossimplugins::ossimPleiadesDimapSupportData::parseGeometricData(), ossimplugins::ossimSpot6DimapSupportData::parseMetadataIdentificationDIMAPv2(), ossimplugins::ossimPleiadesDimapSupportData::parseMetadataIdentificationDIMAPv2(), ossimSpotDimapSupportData::parsePart1(), ossimFormosatDimapSupportData::parsePart1(), ossimFormosatDimapSupportData::parsePart2(), ossimSpotDimapSupportData::parsePart2(), ossimFormosatDimapSupportData::parsePart3(), ossimSpotDimapSupportData::parsePart3(), ossimFormosatDimapSupportData::parsePart4(), ossimSpotDimapSupportData::parsePart4(), ossimplugins::ossimSpot6DimapSupportData::parseRadiometricData(), ossimplugins::ossimPleiadesDimapSupportData::parseRadiometricData(), ossimplugins::ossimSpot6DimapSupportData::parseRasterData(), ossimplugins::ossimPleiadesDimapSupportData::parseRasterData(), ossimplugins::ossimSpot6DimapSupportData::parseRPCMetadata(), ossimplugins::ossimPleiadesDimapSupportData::parseRPCMetadata(), and ossimTiffInfo::printXmpMetadata().

174 {
175  //
176  // First verify the root node exists:
177  //
178  if (!theRootNode.valid())
179  {
180  if (traceDebug())
181  {
183  << "WARNING: ossimXmlDocument::findNodes,\n"
184  << "No root node has been instantiated. Returning null "
185  << "node list..." << endl;
186  }
187  return;
188  }
189 
190  //
191  // Make a copy to manipulate:
192  //
193  ossimString xpath (arg_xpath);
194  if (xpath.empty())
195  return;
196 
197  //
198  // Check if absolute path:
199  //
200  if (xpath[static_cast<std::string::size_type>(0)] !=
201  XPATH_DELIM[static_cast<std::string::size_type>(0)])
202  {
203  if (traceDebug())
204  {
206  << "WARNING: ossimXmlDocument::findNodes\n"
207  << "Only absolute XPaths are supported. Returning null "
208  << "node list..." << endl;
209  }
210  return;
211  }
212 
213  //
214  // Check that root tag matches path root:
215  //
216  ossimString rel_xpath (xpath.after(XPATH_DELIM));
217  ossimString root_tag (rel_xpath);
218  if (root_tag.contains(XPATH_DELIM))
219  root_tag = rel_xpath.before(XPATH_DELIM);
220 
221  if (root_tag != theRootNode->getTag())
222  {
223  if (traceDebug())
224  {
226  << "WARNING: ossimXmlDocument::findNodes\n"
227  << "XPath's root node <"<<root_tag<<"> does not match the "
228  << "stored root node's tag <" << theRootNode->getTag() << ">. "
229  << "Returning null node list..." << endl;
230  }
231  return;
232  }
233 
234  //
235  // If the root node was the requested node, return it alone:
236  //
237  rel_xpath = rel_xpath.after(XPATH_DELIM);
238  if (rel_xpath.empty())
239  {
240  result.push_back(theRootNode);
241  return;
242  }
243 
244  //
245  // Pass the node request on to the root node with the relative path:
246  //
247  theRootNode->findChildNodes(rel_xpath, result);
248 }
void findChildNodes(const ossimString &rel_xpath, ossimXmlNode::ChildListType &nodelist) const
bool valid() const
Definition: ossimRefPtr.h:75
ossimString const & getTag() const
Definition: ossimXmlNode.h:53
void push_back(char c)
Equivalent to insert(end(), c).
Definition: ossimString.h:905
ossimRefPtr< ossimXmlNode > theRootNode
bool empty() const
Definition: ossimString.h:411
ossimString after(const ossimString &str, std::string::size_type pos=0) const
METHOD: after(str, pos) Returns string immediately after the token str.
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)

◆ fromKwl()

void ossimXmlDocument::fromKwl ( const ossimKeywordlist kwl)

Definition at line 288 of file ossimXmlDocument.cpp.

References ossimXmlNode::addAttribute(), ossimXmlNode::addNode(), ossimString::contains(), ossimXmlNode::getChildNodes(), ossimKeywordlist::getMap(), ossimXmlNode::getParentNode(), ossimXmlNode::getTag(), ossimXmlNode::getText(), ossimXmlNode::removeChild(), ossimXmlNode::setTag(), ossimXmlNode::setText(), ossimString::substitute(), and theRootNode.

Referenced by ossimSubImageTool::execute(), and ossimInfo::outputXml().

289 {
290 
291  ossimKeywordlist kwl = kwlToConvert;
292  theRootNode = 0;
294 
295 
296  ossimString prefix = "";
298  ossimKeywordlist::KeywordMap::iterator mapIter = map.begin();
299 
300  while(mapIter != map.end())
301  {
302  ossimString key = mapIter->first;
303  key = key.substitute(".", "/", true);
304  theRootNode->addNode(key, mapIter->second);
305  ++mapIter;
306  }
307 
308  // now collapse all keywordlist styles to the XML style
309  //
310  std::stack<ossimRefPtr<ossimXmlNode> > tempStack;
311  tempStack.push(theRootNode);
312  while(!tempStack.empty())
313  {
314 
315  ossimRefPtr<ossimXmlNode> node = tempStack.top();
316  tempStack.pop();
317  vector<ossimRefPtr<ossimXmlNode> >& childNodes = node->getChildNodes();
318  ossim_uint32 idx = 0;
319  for(idx = 0; idx < childNodes.size(); ++idx)
320  {
321  tempStack.push(childNodes[idx]);
322  }
323  if(node->getChildNodes().size() > 0)
324  {
325  if(node->getTag()!="")
326  {
327  node->addAttribute("name", node->getTag());
328  }
329  node->setTag("object");
330  }
331 
332  if(node->getTag() == "type")
333  {
334  if(node->getParentNode())
335  {
336  node->getParentNode()->removeChild("type");
337  node->getParentNode()->addAttribute("type", node->getText());
338  }
339  }
340  else if(node->getChildNodes().size() < 1)
341  {
342  if(node->getTag()!="")
343  {
344  node->addAttribute("name", node->getTag());
345  }
346  if(!node->getText().contains("\n"))
347  {
348  if(node->getText()!="")
349  {
350  node->addAttribute("value", node->getText());
351  node->setText("");
352  }
353  }
354  node->setTag("property");
355  }
356  }
357 }
void setTag(const ossimString &tag)
ossimString substitute(const ossimString &searchKey, const ossimString &replacementValue, bool replaceAll=false) const
Substitutes searchKey string with replacementValue and returns a string.
void setText(const ossimString &text)
Represents serializable keyword/value map.
const ossimXmlNode::ChildListType & getChildNodes() const
ossimString const & getTag() const
Definition: ossimXmlNode.h:53
bool contains(char aChar) const
Definition: ossimString.h:58
ossimRefPtr< ossimXmlNode > addNode(const ossimString &relPath, const ossimString &text="")
ossimRefPtr< ossimXmlNode > removeChild(ossimRefPtr< ossimXmlNode > node)
const ossimString & getText() const
Definition: ossimXmlNode.h:92
std::map< std::string, std::string > KeywordMap
const ossimXmlNode * getParentNode() const
unsigned int ossim_uint32
ossimRefPtr< ossimXmlNode > theRootNode
const ossimKeywordlist::KeywordMap & getMap() const
void addAttribute(ossimRefPtr< ossimXmlAttribute > attribute)

◆ getRoot() [1/2]

ossimRefPtr< ossimXmlNode > ossimXmlDocument::getRoot ( )

◆ getRoot() [2/2]

const ossimRefPtr< ossimXmlNode > ossimXmlDocument::getRoot ( ) const

Definition at line 273 of file ossimXmlDocument.cpp.

References theRootNode.

274 {
275  return theRootNode;
276 }
ossimRefPtr< ossimXmlNode > theRootNode

◆ initRoot()

void ossimXmlDocument::initRoot ( ossimRefPtr< ossimXmlNode node)

Definition at line 263 of file ossimXmlDocument.cpp.

References theRootNode.

Referenced by ossimGmlSupportData::initialize(), and ossimKakaduJpipInfo::print().

264 {
265  theRootNode = node;
266 }
ossimRefPtr< ossimXmlNode > theRootNode

◆ openFile()

bool ossimXmlDocument::openFile ( const ossimFilename filename)

Definition at line 91 of file ossimXmlDocument.cpp.

References ossimString::c_str(), and theFilename.

Referenced by ossimplugins::ossimRadarSat2TiffReader::getInternalImageGeometry(), ossimplugins::ossimTerraSarTiffReader::getInternalImageGeometry(), ossimplugins::ossimRadarSat2Model::InitLut(), ossimplugins::ossimRadarSat2TiffReader::isRadarSat2ProductFile(), ossimplugins::ossimTerraSarTiffReader::isTerraSarProductFile(), ossimplugins::ossimRadarSat2TiffReader::open(), ossimplugins::ossimTerraSarTiffReader::open(), ossimplugins::ossimRadarSat2RPCModel::open(), ossimplugins::ossimTerraSarModel::open(), ossimplugins::ossimRadarSat2Model::open(), and ossimFgdcFileWriter::setTemplate().

92 {
93 
94  theFilename = filename;
95 
96  if(theFilename == "")
97  {
98  return false;
99  }
100 
101  //
102  // Open XML File:
103  // Note: Opening text document binary to overcome an apparent windows bug.
104  //
105  ifstream xml_stream (filename.c_str(), ios::binary);
106  if (!xml_stream)
107  {
108  if (traceDebug())
109  {
111  << "DEBUG: ossimXmlDocument::ossimXmlDocument\n"
112  << "encountered opening file <" << filename << "> for "
113  << "reading. Aborting..." << endl;
114  }
115  return false;
116  }
117 
118  return read(xml_stream);
119 }
std::basic_ifstream< char > ifstream
Class for char input file streams.
Definition: ossimIosFwd.h:44
ossimFilename theFilename
const char * c_str() const
Returns a pointer to a null-terminated array of characters representing the string&#39;s contents...
Definition: ossimString.h:396
bool read(std::istream &in)
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)

◆ read()

bool ossimXmlDocument::read ( std::istream &  in)

Definition at line 121 of file ossimXmlDocument.cpp.

References ossimString::contains(), readHeader(), ossimErrorStatusInterface::setErrorStatus(), theStrictCheckFlag, and theXmlHeader.

Referenced by ossimXmpInfo::getDate(), ossimAuxXmlSupportData::getProjection(), ossimXmpInfo::getProjection(), ossimKmlSuperOverlayReader::getTopLevelKmlFileInfo(), ossimGmlSupportData::initialize(), ossimNitfXmlDataContentDes::parseStream(), ossimplugins::ossimSpot6DimapSupportData::parseXmlFile(), ossimplugins::ossimPleiadesDimapSupportData::parseXmlFile(), ossimKakaduJpipInfo::print(), ossimTiffInfo::printXmpMetadata(), ossimWmsCapabilitiesDocument::read(), and ossimPpjFrameSensorFile::readStream().

122 {
123 // char buffer[BUFFER_MAX_LEN];
124 // streampos file_pos;
125 // bool readingHeader = true;
126  bool startTagCharacterFound = false;
127  char c = in.peek();
128 
129  // Initially we will do our own skipping to make sure we ar not binary.
130  while(!in.bad() && (c != '<') && (c >= 0x20) && (c <= 0x7e))
131  {
132  in.ignore(1);
133  c = in.peek();
134  }
135 
136  if (in.bad() || (c!='<'))
137  {
138  setErrorStatus();
139  return false;
140  }
141  startTagCharacterFound = true;
142 
143  if(readHeader(in))
144  {
145  if(theXmlHeader=="")
146  {
147  if(startTagCharacterFound)
148  {
149  theXmlHeader = "<?xml version='1.0'?>";
150  }
151  }
152  }
153  if((!theXmlHeader.contains("xml version")) && theStrictCheckFlag)
154  {
155  if (traceDebug())
156  {
158  << "FATAL: ossimXmlDocument::ossimXmlDocument"
159  << "encountered parsing XML file <" << theFilename
160  << ">. The file does not appear to be XML v1.0. \n"
161  << "Header = \n" << theXmlHeader <<"\n"
162  << endl;
163  }
164  setErrorStatus();
165  return false;
166  }
167  theRootNode = new ossimXmlNode(in, 0);
170 }
static const ossimErrorCode OSSIM_OK
bool contains(char aChar) const
Definition: ossimString.h:58
ossimFilename theFilename
ossimString theXmlHeader
ossimRefPtr< ossimXmlNode > theRootNode
bool readHeader(std::istream &in)
virtual ossimErrorCode getErrorStatus() const
OSSIMDLLEXPORT std::ostream & ossimNotify(ossimNotifyLevel level=ossimNotifyLevel_WARN)

◆ readHeader()

bool ossimXmlDocument::readHeader ( std::istream &  in)
private

Definition at line 376 of file ossimXmlDocument.cpp.

References ossimString::clear(), and theXmlHeader.

Referenced by read().

377 {
378  //---
379  // Clear the existing header so we don't get double:
380  // <?xml version='1.0'?><?xml version='1.0'?>
381  //---
383 
384  char c;
385  in>>xmlskipws;
386 
387  while(in.peek() == '<')
388  {
389  std::stack<char> theLessThanStack;
390  theLessThanStack.push('<');
391  in.ignore(1);
392  c = in.peek();
393  // we will for now skip things like !DOCTYPE and any other things in the header of the document that start with <? or <!
394  if((c == '?')||
395  (c == '!'))
396  {
397  theXmlHeader += "<";
398  theXmlHeader += (char)in.get();
399 
400  while(!theLessThanStack.empty()&&
401  (!in.bad()))
402  {
403  if(in.peek() == '<')
404  {
405  theLessThanStack.push('<');
406  }
407  else if(in.peek() == '>')
408  {
409  theLessThanStack.pop();
410  }
411  theXmlHeader += (char)in.get();
412  }
413  if(!in.bad())
414  {
415  if(in.peek()=='\n'||
416  in.peek()=='\r')
417  {
418  theXmlHeader += (char)in.get();
419  }
420  }
421 // if(!in.bad())
422 // {
423 // theXmlHeader += (char)in.get();
424 // }
425  in>>xmlskipws;
426  }
427  }
428 
429  return (!in.bad());
430 }
void clear()
Erases the entire container.
Definition: ossimString.h:432
ossimString theXmlHeader

◆ removeRoot()

ossimRefPtr< ossimXmlNode > ossimXmlDocument::removeRoot ( )

Definition at line 278 of file ossimXmlDocument.cpp.

References theRootNode.

279 {
281 
282  theRootNode = 0;
283 
284  return root;
285 }
ossimRefPtr< ossimXmlNode > theRootNode

◆ toKwl()

void ossimXmlDocument::toKwl ( ossimKeywordlist kwl,
const ossimString prefix = "" 
) const

Definition at line 359 of file ossimXmlDocument.cpp.

References theRootNode, ossimXmlNode::toKwl(), and ossimRefPtr< T >::valid().

Referenced by ossimKakaduJpipInfo::print().

361 {
362  if(theRootNode.valid())
363  {
364  theRootNode->toKwl(kwl, prefix);
365  }
366 // const std::vector<ossimRefPtr<ossimXmlNode> >& children = theRootNode->getChildNodes();
367 
368 // ossim_uint32 idx = 0;
369 
370 // for(idx = 0; idx < children.size(); ++idx)
371 // {
372 // children[idx]->toKwl(kwl, prefix);
373 // }
374 }
bool valid() const
Definition: ossimRefPtr.h:75
void toKwl(ossimKeywordlist &kwl, const ossimString &prefix="") const
ossimRefPtr< ossimXmlNode > theRootNode

◆ write()

bool ossimXmlDocument::write ( const ossimFilename file)

Definition at line 75 of file ossimXmlDocument.cpp.

References ossimString::c_str().

Referenced by ossimSubImageTool::execute(), and ossimInfo::outputXml().

76 {
77  std::ofstream out(file.c_str());
78 
79  if(out)
80  {
81  out << *this << std::endl;
82  }
83  else
84  {
85  return false;
86  }
87 
88  return true;
89 }
const char * c_str() const
Returns a pointer to a null-terminated array of characters representing the string&#39;s contents...
Definition: ossimString.h:396
std::basic_ofstream< char > ofstream
Class for char output file streams.
Definition: ossimIosFwd.h:47

Friends And Related Function Documentation

◆ operator<<

OSSIMDLLEXPORT friend std::ostream& operator<< ( std::ostream &  os,
const ossimXmlDocument xml_doc 
)
friend

Member Data Documentation

◆ theFilename

ossimFilename ossimXmlDocument::theFilename
private

Definition at line 58 of file ossimXmlDocument.h.

Referenced by openFile().

◆ theRootNode

ossimRefPtr<ossimXmlNode> ossimXmlDocument::theRootNode
private

Definition at line 56 of file ossimXmlDocument.h.

Referenced by findNodes(), fromKwl(), getRoot(), initRoot(), operator<<(), removeRoot(), and toKwl().

◆ theStrictCheckFlag

bool ossimXmlDocument::theStrictCheckFlag
private

Definition at line 59 of file ossimXmlDocument.h.

Referenced by read().

◆ theXmlHeader

ossimString ossimXmlDocument::theXmlHeader
private

Definition at line 57 of file ossimXmlDocument.h.

Referenced by operator<<(), read(), and readHeader().


The documentation for this class was generated from the following files: