Prusa Slicer 2.6.0
Loading...
Searching...
No Matches
cereal Namespace Reference

Classes

struct  specialize< Archive, Slic3r::DynamicPrintConfig, cereal::specialization::non_member_load_save >
 
struct  specialize< Archive, Slic3r::GUI::GLGizmosManager, cereal::specialization::member_load_save >
 
struct  specialize< Archive, Slic3r::Model *, cereal::specialization::non_member_load_save >
 
struct  specialize< Archive, Slic3r::ModelConfigObject, cereal::specialization::member_serialize >
 
struct  specialize< Archive, Slic3r::ModelInstance *, cereal::specialization::non_member_load_save >
 
struct  specialize< Archive, Slic3r::ModelMaterial *, cereal::specialization::non_member_load_save >
 
struct  specialize< Archive, Slic3r::ModelObject *, cereal::specialization::non_member_load_save >
 
struct  specialize< Archive, Slic3r::ModelVolume *, cereal::specialization::non_member_load_save >
 
struct  specialize< Archive, Slic3r::ModelVolume, cereal::specialization::member_load_save >
 
struct  specialize< Archive, Slic3r::TriangleMesh, cereal::specialization::non_member_load_save >
 
struct  specialize< Archive, std::shared_ptr< Slic3r::TriangleMesh >, cereal::specialization::non_member_load_save >
 

Functions

template<class Archive >
void serialize (Archive &archive, Slic3r::BoundingBox &bb)
 
template<class Archive >
void serialize (Archive &archive, Slic3r::BoundingBox3 &bb)
 
template<class Archive >
void serialize (Archive &archive, Slic3r::BoundingBoxf &bb)
 
template<class Archive >
void serialize (Archive &archive, Slic3r::BoundingBoxf3 &bb)
 
template<class T >
void load_optional (BinaryInputArchive &ar, std::shared_ptr< const T > &ptr)
 
template<class T >
void save_optional (BinaryOutputArchive &ar, const std::shared_ptr< const T > &ptr)
 
template<class T >
void load_by_value (BinaryInputArchive &ar, T &obj)
 
template<class T >
void save_by_value (BinaryOutputArchive &ar, const T &obj)
 
template<class Archive >
void serialize (Archive &archive, Slic3r::Vec2i &v)
 
template<class Archive , class T , int N>
void serialize (Archive &archive, Eigen::Transform< T, N, Eigen::Affine, Eigen::DontAlign > &t)
 
template<class Archive >
void load (Archive &archive, Slic3r::DynamicPrintConfig &config)
 
template<class Archive >
void save (Archive &archive, const Slic3r::DynamicPrintConfig &config)
 
template<class Archive >
void serialize (Archive &archive, Slic3r::t_layer_height_range &lhr)
 
template<class Archive >
void load (Archive &archive, Slic3r::TriangleMesh &mesh)
 
template<class Archive >
void save (Archive &archive, const Slic3r::TriangleMesh &mesh)
 
template<class T >
void save (BinaryOutputArchive &ar, T *const &ptr)
 
template<class T >
void load (BinaryInputArchive &ar, T *&ptr)
 
template<class T >
void save (BinaryOutputArchive &ar, const std::unique_ptr< T > &ptr)
 
template<class T >
void load (BinaryInputArchive &ar, std::unique_ptr< T > &ptr)
 
template<class T >
void save (BinaryOutputArchive &ar, const std::shared_ptr< const T > &ptr)
 
template<class T >
void load (BinaryInputArchive &ar, std::shared_ptr< const T > &ptr)
 

Class Documentation

◆ cereal::specialize< Archive, Slic3r::DynamicPrintConfig, cereal::specialization::non_member_load_save >

struct cereal::specialize< Archive, Slic3r::DynamicPrintConfig, cereal::specialization::non_member_load_save >
template<class Archive>
struct cereal::specialize< Archive, Slic3r::DynamicPrintConfig, cereal::specialization::non_member_load_save >

◆ cereal::specialize< Archive, Slic3r::GUI::GLGizmosManager, cereal::specialization::member_load_save >

struct cereal::specialize< Archive, Slic3r::GUI::GLGizmosManager, cereal::specialization::member_load_save >
template<class Archive>
struct cereal::specialize< Archive, Slic3r::GUI::GLGizmosManager, cereal::specialization::member_load_save >

◆ cereal::specialize< Archive, Slic3r::Model *, cereal::specialization::non_member_load_save >

struct cereal::specialize< Archive, Slic3r::Model *, cereal::specialization::non_member_load_save >
template<class Archive>
struct cereal::specialize< Archive, Slic3r::Model *, cereal::specialization::non_member_load_save >

◆ cereal::specialize< Archive, Slic3r::ModelConfigObject, cereal::specialization::member_serialize >

struct cereal::specialize< Archive, Slic3r::ModelConfigObject, cereal::specialization::member_serialize >
template<class Archive>
struct cereal::specialize< Archive, Slic3r::ModelConfigObject, cereal::specialization::member_serialize >

◆ cereal::specialize< Archive, Slic3r::ModelInstance *, cereal::specialization::non_member_load_save >

struct cereal::specialize< Archive, Slic3r::ModelInstance *, cereal::specialization::non_member_load_save >
template<class Archive>
struct cereal::specialize< Archive, Slic3r::ModelInstance *, cereal::specialization::non_member_load_save >

◆ cereal::specialize< Archive, Slic3r::ModelMaterial *, cereal::specialization::non_member_load_save >

struct cereal::specialize< Archive, Slic3r::ModelMaterial *, cereal::specialization::non_member_load_save >
template<class Archive>
struct cereal::specialize< Archive, Slic3r::ModelMaterial *, cereal::specialization::non_member_load_save >

◆ cereal::specialize< Archive, Slic3r::ModelObject *, cereal::specialization::non_member_load_save >

struct cereal::specialize< Archive, Slic3r::ModelObject *, cereal::specialization::non_member_load_save >
template<class Archive>
struct cereal::specialize< Archive, Slic3r::ModelObject *, cereal::specialization::non_member_load_save >

◆ cereal::specialize< Archive, Slic3r::ModelVolume *, cereal::specialization::non_member_load_save >

struct cereal::specialize< Archive, Slic3r::ModelVolume *, cereal::specialization::non_member_load_save >
template<class Archive>
struct cereal::specialize< Archive, Slic3r::ModelVolume *, cereal::specialization::non_member_load_save >

◆ cereal::specialize< Archive, Slic3r::ModelVolume, cereal::specialization::member_load_save >

struct cereal::specialize< Archive, Slic3r::ModelVolume, cereal::specialization::member_load_save >
template<class Archive>
struct cereal::specialize< Archive, Slic3r::ModelVolume, cereal::specialization::member_load_save >

◆ cereal::specialize< Archive, Slic3r::TriangleMesh, cereal::specialization::non_member_load_save >

struct cereal::specialize< Archive, Slic3r::TriangleMesh, cereal::specialization::non_member_load_save >
template<class Archive>
struct cereal::specialize< Archive, Slic3r::TriangleMesh, cereal::specialization::non_member_load_save >

◆ cereal::specialize< Archive, std::shared_ptr< Slic3r::TriangleMesh >, cereal::specialization::non_member_load_save >

struct cereal::specialize< Archive, std::shared_ptr< Slic3r::TriangleMesh >, cereal::specialization::non_member_load_save >
template<class Archive>
struct cereal::specialize< Archive, std::shared_ptr< Slic3r::TriangleMesh >, cereal::specialization::non_member_load_save >

Function Documentation

◆ load() [1/5]

template<class Archive >
void cereal::load ( Archive &  archive,
Slic3r::DynamicPrintConfig config 
)
1308 {
1309 size_t cnt;
1310 archive(cnt);
1311 config.clear();
1312 for (size_t i = 0; i < cnt; ++ i) {
1313 size_t serialization_key_ordinal;
1314 archive(serialization_key_ordinal);
1315 assert(serialization_key_ordinal > 0);
1316 auto it = Slic3r::print_config_def.by_serialization_key_ordinal.find(serialization_key_ordinal);
1317 assert(it != Slic3r::print_config_def.by_serialization_key_ordinal.end());
1318 config.set_key_value(it->second->opt_key, it->second->load_option_from_archive(archive));
1319 }
1320 }
std::map< size_t, const ConfigOptionDef * > by_serialization_key_ordinal
Definition Config.hpp:2066
void clear()
Definition Config.hpp:2400
bool set_key_value(const std::string &opt_key, ConfigOption *opt)
Definition Config.hpp:2431
const PrintConfigDef print_config_def
Definition PrintConfig.cpp:4288

References Slic3r::ConfigDef::by_serialization_key_ordinal, Slic3r::DynamicConfig::clear(), Slic3r::print_config_def, and Slic3r::DynamicConfig::set_key_value().

Referenced by Slic3r::ModelVolume::load(), Slic3r::FontProp::load(), and Slic3r::TextConfiguration::load().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ load() [2/5]

template<class Archive >
void cereal::load ( Archive &  archive,
Slic3r::TriangleMesh mesh 
)
378 {
379 archive.loadBinary(reinterpret_cast<char*>(const_cast<Slic3r::TriangleMeshStats*>(&mesh.stats())), sizeof(Slic3r::TriangleMeshStats));
380 archive(mesh.its.indices, mesh.its.vertices);
381 }
indexed_triangle_set its
Definition TriangleMesh.hpp:155
const TriangleMeshStats & stats() const
Definition TriangleMesh.hpp:153
Definition TriangleMesh.hpp:47
std::vector< stl_vertex > vertices
Definition stl.h:165
std::vector< stl_triangle_vertex_indices > indices
Definition stl.h:164

References indexed_triangle_set::indices, Slic3r::TriangleMesh::its, Slic3r::TriangleMesh::stats(), and indexed_triangle_set::vertices.

+ Here is the call graph for this function:

◆ load() [3/5]

template<class T >
void cereal::load ( BinaryInputArchive &  ar,
std::shared_ptr< const T > &  ptr 
)
784 {
785 Slic3r::UndoRedo::StackImpl &stack = cereal::get_user_data<Slic3r::UndoRedo::StackImpl>(ar);
786 size_t id;
787 ar(id);
788 ptr = stack.load_immutable_object<T>(Slic3r::ObjectID(id), false);
789 }
Definition ObjectID.hpp:21
Definition UndoRedo.cpp:547
std::shared_ptr< const T > load_immutable_object(const Slic3r::ObjectID id, bool optional)
Definition UndoRedo.cpp:872

References Slic3r::UndoRedo::StackImpl::load_immutable_object().

+ Here is the call graph for this function:

◆ load() [4/5]

template<class T >
void cereal::load ( BinaryInputArchive &  ar,
std::unique_ptr< T > &  ptr 
)
747 {
748 Slic3r::UndoRedo::StackImpl& stack = cereal::get_user_data<Slic3r::UndoRedo::StackImpl>(ar);
749 size_t id;
750 ar(id);
751 ptr.reset(stack.load_mutable_object<T>(Slic3r::ObjectID(id)));
752 }
T * load_mutable_object(const Slic3r::ObjectID id)
Definition UndoRedo.cpp:865

References Slic3r::UndoRedo::StackImpl::load_mutable_object().

+ Here is the call graph for this function:

◆ load() [5/5]

template<class T >
void cereal::load ( BinaryInputArchive &  ar,
T *&  ptr 
)
730 {
731 Slic3r::UndoRedo::StackImpl& stack = cereal::get_user_data<Slic3r::UndoRedo::StackImpl>(ar);
732 size_t id;
733 ar(id);
734 ptr = stack.load_mutable_object<T>(Slic3r::ObjectID(id));
735 }

References Slic3r::UndoRedo::StackImpl::load_mutable_object().

+ Here is the call graph for this function:

◆ load_by_value()

template<class T >
void cereal::load_by_value ( BinaryInputArchive &  ar,
T &  obj 
)
763 {
764 Slic3r::UndoRedo::StackImpl& stack = cereal::get_user_data<Slic3r::UndoRedo::StackImpl>(ar);
765 size_t id;
766 ar(id);
767 stack.load_mutable_object<T>(Slic3r::ObjectID(id), cfg);
768 }

References Slic3r::UndoRedo::StackImpl::load_mutable_object().

Referenced by Slic3r::Internal::StaticSerializationWrapper< T >::load(), and Slic3r::ModelVolume::load().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ load_optional()

template<class T >
void cereal::load_optional ( BinaryInputArchive &  ar,
std::shared_ptr< const T > &  ptr 
)
791 {
792 Slic3r::UndoRedo::StackImpl &stack = cereal::get_user_data<Slic3r::UndoRedo::StackImpl>(ar);
793 size_t id;
794 ar(id);
795 ptr = stack.load_immutable_object<T>(Slic3r::ObjectID(id), true);
796 }

References Slic3r::UndoRedo::StackImpl::load_immutable_object().

Referenced by Slic3r::ModelVolume::load().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ save() [1/5]

template<class Archive >
void cereal::save ( Archive &  archive,
const Slic3r::DynamicPrintConfig config 
)
1323 {
1324 size_t cnt = config.size();
1325 archive(cnt);
1326 for (auto it = config.cbegin(); it != config.cend(); ++it) {
1327 const Slic3r::ConfigOptionDef* optdef = Slic3r::print_config_def.get(it->first);
1328 assert(optdef != nullptr);
1329 assert(optdef->serialization_key_ordinal > 0);
1330 archive(optdef->serialization_key_ordinal);
1331 optdef->save_option_to_archive(archive, it->second.get());
1332 }
1333 }
const ConfigOptionDef * get(const t_config_option_key &opt_key) const
Definition Config.hpp:2069
Definition Config.hpp:1797
size_t serialization_key_ordinal
Definition Config.hpp:2028
ConfigOption * save_option_to_archive(Archive &archive, const ConfigOption *opt) const
Definition Config.hpp:1867
std::map< t_config_option_key, std::unique_ptr< ConfigOption > >::const_iterator cbegin() const
Definition Config.hpp:2453
std::map< t_config_option_key, std::unique_ptr< ConfigOption > >::const_iterator cend() const
Definition Config.hpp:2454
size_t size() const
Definition Config.hpp:2455

References Slic3r::DynamicConfig::cbegin(), Slic3r::DynamicConfig::cend(), Slic3r::ConfigDef::get(), Slic3r::print_config_def, Slic3r::ConfigOptionDef::save_option_to_archive(), Slic3r::ConfigOptionDef::serialization_key_ordinal, and Slic3r::DynamicConfig::size().

Referenced by Slic3r::ModelVolume::save(), Slic3r::FontProp::save(), and Slic3r::TextConfiguration::save().

+ Here is the call graph for this function:
+ Here is the caller graph for this function:

◆ save() [2/5]

template<class Archive >
void cereal::save ( Archive &  archive,
const Slic3r::TriangleMesh mesh 
)
382 {
383 archive.saveBinary(reinterpret_cast<const char*>(&mesh.stats()), sizeof(Slic3r::TriangleMeshStats));
384 archive(mesh.its.indices, mesh.its.vertices);
385 }

References indexed_triangle_set::indices, Slic3r::TriangleMesh::its, Slic3r::TriangleMesh::stats(), and indexed_triangle_set::vertices.

+ Here is the call graph for this function:

◆ save() [3/5]

template<class T >
void cereal::save ( BinaryOutputArchive &  ar,
const std::shared_ptr< const T > &  ptr 
)
773 {
774 ar(cereal::get_user_data<Slic3r::UndoRedo::StackImpl>(ar).save_immutable_object<T>(const_cast<std::shared_ptr<const T>&>(ptr), false));
775 }

◆ save() [4/5]

template<class T >
void cereal::save ( BinaryOutputArchive &  ar,
const std::unique_ptr< T > &  ptr 
)
740 {
741 ar(cereal::get_user_data<Slic3r::UndoRedo::StackImpl>(ar).save_mutable_object<T>(*ptr.get()));
742 }

◆ save() [5/5]

template<class T >
void cereal::save ( BinaryOutputArchive &  ar,
T *const ptr 
)
723 {
724 ar(cereal::get_user_data<Slic3r::UndoRedo::StackImpl>(ar).save_mutable_object<T>(*ptr));
725 }

◆ save_by_value()

template<class T >
void cereal::save_by_value ( BinaryOutputArchive &  ar,
const T &  obj 
)
757 {
758 ar(cereal::get_user_data<Slic3r::UndoRedo::StackImpl>(ar).save_mutable_object<T>(cfg));
759 }

Referenced by Slic3r::Internal::StaticSerializationWrapper< T >::save(), and Slic3r::ModelVolume::save().

+ Here is the caller graph for this function:

◆ save_optional()

template<class T >
void cereal::save_optional ( BinaryOutputArchive &  ar,
const std::shared_ptr< const T > &  ptr 
)
777 {
778 ar(cereal::get_user_data<Slic3r::UndoRedo::StackImpl>(ar).save_immutable_object<T>(const_cast<std::shared_ptr<const T>&>(ptr), true));
779 }

Referenced by Slic3r::ModelVolume::save().

+ Here is the caller graph for this function:

◆ serialize() [1/7]

template<class Archive , class T , int N>
void cereal::serialize ( Archive &  archive,
Eigen::Transform< T, N, Eigen::Affine, Eigen::DontAlign > &  t 
)
inline
599{ archive(t.matrix()); }
EIGEN_DEVICE_FUNC const MatrixType & matrix() const
Definition Transform.h:395

References Eigen::Transform< _Scalar, _Dim, _Mode, _Options >::matrix().

+ Here is the call graph for this function:

◆ serialize() [2/7]

template<class Archive >
void cereal::serialize ( Archive &  archive,
Slic3r::BoundingBox bb 
)
305{ archive(bb.min, bb.max, bb.defined); }
PointType max
Definition BoundingBox.hpp:17
bool defined
Definition BoundingBox.hpp:18
PointType min
Definition BoundingBox.hpp:16

References Slic3r::BoundingBoxBase< PointType, APointsType >::defined, Slic3r::BoundingBoxBase< PointType, APointsType >::max, and Slic3r::BoundingBoxBase< PointType, APointsType >::min.

◆ serialize() [3/7]

◆ serialize() [4/7]

◆ serialize() [5/7]

◆ serialize() [6/7]

template<class Archive >
void cereal::serialize ( Archive &  archive,
Slic3r::t_layer_height_range lhr 
)
201{ archive(lhr.first, lhr.second); }

◆ serialize() [7/7]

template<class Archive >
void cereal::serialize ( Archive &  archive,
Slic3r::Vec2i v 
)
586{ archive(v.x(), v.y()); }