-
Thomas Witkowski authoredThomas Witkowski authored
ElementData.cc 757 B
#include "ElementData.h"
namespace AMDiS {
void ElementData::serialize(::std::ostream& out) {
::std::string decoratedType;
if (decorated_) {
decoratedType = decorated_->getTypeName();
out << decoratedType << ::std::endl;
decorated_->serialize(out);
} else {
out << "NULL" << ::std::endl;
}
}
void ElementData::deserialize(::std::istream& in) {
TEST_EXIT(decorated_ == NULL)
("there are already decorated element data\n");
::std::string decoratedType;
in >> decoratedType;
in.get();
if (decoratedType != "NULL") {
decorated_ = CreatorMap<ElementData>::getCreator(decoratedType)->create();
decorated_->deserialize(in);
} else {
decorated_ = NULL;
};
}
}