11 #include <cereal/types/memory.hpp>
12 #include <cereal/archives/xml.hpp>
14 #include <isce3/geometry/Topo.h>
15 #include <isce3/geometry/Geo2rdr.h>
22 void load_archive(std::string metadata,
char * objectTag, T *
object) {
23 std::stringstream metastream;
24 metastream << metadata;
25 cereal::XMLInputArchive archive(metastream);
26 archive(cereal::make_nvp(objectTag, (*
object)));
34 template <
class Archive>
35 void save(Archive &,
const Topo &) {}
38 template <
class Archive>
39 void load(Archive & archive, Topo & topo) {
44 size_t numiter, extraiter;
46 archive(cereal::make_nvp(
"threshold", threshold),
47 cereal::make_nvp(
"numIterations", numiter),
48 cereal::make_nvp(
"extraIterations", extraiter),
49 cereal::make_nvp(
"demMethod", demMethod),
50 cereal::make_nvp(
"epsgOut", epsgOut));
53 topo.threshold(threshold);
54 topo.numiter(numiter);
55 topo.extraiter(extraiter);
56 topo.demMethod(demMethod);
57 topo.epsgOut(epsgOut);
65 template <
class Archive>
66 void save(Archive &,
const Geo2rdr &) {}
69 template <
class Archive>
70 void load(Archive & archive, Geo2rdr & geo) {
75 archive(cereal::make_nvp(
"threshold", threshold),
76 cereal::make_nvp(
"numIterations", numiter));
79 geo.threshold(threshold);
dataInterpMethod
Enumeration type to indicate interpolation method.
Definition: Constants.h:23