App/Toponaming: ComplexGeoData serialization

Direct copy from TopoNaming branch with only modifications needed to compile against API changes.
This commit is contained in:
Chris Hennes
2023-11-04 10:24:17 -05:00
parent dc2da5aba1
commit 8f105dc162
2 changed files with 226 additions and 0 deletions

View File

@@ -280,6 +280,19 @@ public:
virtual void flushElementMap() const;
//@}
/** @name Save/restore */
//@{
void Save (Base::Writer &writer) const;
void Restore(Base::XMLReader &reader);
void SaveDocFile(Base::Writer &writer) const;
void RestoreDocFile(Base::Reader &reader);
unsigned int getMemSize (void) const;
void setPersistenceFileName(const char *name) const;
virtual void beforeSave() const;
bool isRestoreFailed() const { return _restoreFailed; }
void resetRestoreFailure() const { _restoreFailed = true; }
//@}
protected:
/// from local to outside
@@ -347,6 +360,8 @@ public:
protected:
void restoreStream(std::istream &s, std::size_t count);
/// from local to outside
inline Base::Vector3d transformToOutside(const Base::Vector3f& vec) const
{
@@ -370,6 +385,10 @@ protected:
private:
ElementMapPtr _elementMap;
protected:
mutable std::string _PersistenceName;
mutable bool _restoreFailed = false;
};
} //namespace App