20 #ifdef GENOM_SERIALIZATION
21 #include <boost/archive/binary_iarchive.hpp>
22 #include <boost/archive/binary_oarchive.hpp>
23 #include <boost/serialization/base_object.hpp>
24 #include <boost/serialization/is_abstract.hpp>
25 #include <boost/serialization/string.hpp>
26 #endif //GENOM_SERIALIZATION
78 std::map<std::string, PropertySharedPtr>::const_iterator entry = inSource.begin();
79 std::map<std::string, PropertySharedPtr>::const_iterator end = inSource.end();
80 for(; entry != end; ++entry) {
98 #ifdef GENOM_SERIALIZATION
100 template <
class Archive>
void Property::serialize(Archive& ar,
unsigned int) {
101 ar & boost::serialization::base_object<Commentable>(*this);
102 ar & boost::serialization::base_object<Nameable>(*this);
103 ar & boost::serialization::base_object<Renamable>(*this);
104 ar & boost::serialization::base_object< SelfReferencing<Property> >(*this);
105 ar & boost::serialization::base_object< Visitable >(*this);
113 template void Property::serialize<boost::archive::binary_iarchive>(
114 boost::archive::binary_iarchive& ar,
const unsigned int);
116 template void Property::serialize<boost::archive::binary_oarchive>(
117 boost::archive::binary_oarchive& ar,
const unsigned int);
119 #endif //GENOM_SERIALIZATION
SymTab< std::string, PropertySharedPtr > mChildren
virtual void accept(BaseVisitor &inoutVisitor)
bool set(const KeyType &inKey, const ValueType &inValue)
void runVisitor(_Tp &inoutVisited, BaseVisitor &inoutVisitor)
bool addChildProperty(const std::string &inName, const PropertySharedPtr &inProperty)
void setValue(const Value &inSource)
The Error object thrown by different methods of EdifOM.
A base class for Visitor.
void setChildren(const std::map< std::string, PropertySharedPtr > &inSource)
void setOwner(const std::string &inSource)
void setUnit(const Unit &inSource)
boost::shared_ptr< Property > PropertySharedPtr
Represents objects that can be renamed.
An object that receives an inoutVisitor.
void setCurrentLocation(const std::string &inFunction, const std::string &inFile, uint32_t inLine)