Go to the documentation of this file.
20 #ifndef RB_DATA_SERIALIZATION_H
21 #define RB_DATA_SERIALIZATION_H
23 #include "libmesh/libmesh_config.h"
24 #if defined(LIBMESH_HAVE_CAPNPROTO)
30 #include "libmesh/rb_data.capnp.h"
33 #include "capnp/message.h"
40 class TransientRBEvaluation;
41 class RBEIMEvaluation;
42 class RBSCMEvaluation;
47 namespace RBDataSerialization
155 #if defined(LIBMESH_HAVE_SLEPC) && (LIBMESH_HAVE_GLPK)
189 #endif // LIBMESH_HAVE_SLEPC && LIBMESH_HAVE_GLPK
195 RBData::ParameterRanges::Builder & parameter_ranges,
196 RBData::DiscreteParameterList::Builder & discrete_parameters_list);
201 template <
typename RBEvaluationBuilderNumber>
203 RBEvaluationBuilderNumber & rb_eval_builder);
209 template <
typename RBEvaluationBuilderNumber,
typename TransRBEvaluationBuilderNumber>
211 RBEvaluationBuilderNumber & rb_eval_builder,
212 TransRBEvaluationBuilderNumber & trans_rb_eval_builder);
218 template <
typename RBEvaluationBuilderNumber,
typename RBEIMEvaluationBuilderNumber>
220 RBEvaluationBuilderNumber & rb_eval_builder,
221 RBEIMEvaluationBuilderNumber & rb_eim_eval_builder);
223 #if defined(LIBMESH_HAVE_SLEPC) && (LIBMESH_HAVE_GLPK)
232 RBData::RBSCMEvaluation::Builder & rb_scm_eval_builder);
233 #endif // LIBMESH_HAVE_SLEPC && LIBMESH_HAVE_GLPK
239 RBData::Point3D::Builder point_builder);
245 RBData::MeshElem::Builder mesh_elem_builder);
251 #endif // #if defined(LIBMESH_HAVE_CAPNPROTO)
253 #endif // RB_DATA_SERIALIZATION_H
void add_point_to_builder(const Point &point, RBData::Point3D::Builder point_builder)
Helper function that adds point data.
void add_elem_to_builder(const Elem &elem, RBData::MeshElem::Builder mesh_elem_builder)
Helper function that adds element data.
The libMesh namespace provides an interface to certain functionality in the library.
RBEvaluationSerialization(RBEvaluation &rb_eval)
Initialize a new buffer using the structure from the Cap'n'Proto schema described in rb_data....
RBEIMEvaluation & _rb_eim_eval
The RBEvaluation object that will be written to disk.
This class serializes an RBEvaluation object using the Cap'n Proto library.
void add_rb_scm_evaluation_data_to_builder(RBSCMEvaluation &rb_scm_eval, RBData::RBSCMEvaluation::Builder &rb_scm_eval_builder)
Add data for an RBSCMEvaluation to the builder.
TransientRBEvaluation & _trans_rb_eval
The RBEvaluation object that will be written to disk.
virtual ~TransientRBEvaluationSerialization()
Destructor.
virtual ~RBEIMEvaluationSerialization()
Destructor.
void write_to_file(const std::string &path)
Write the Cap'n'Proto buffer to disk.
This class serializes a TransientRBEvaluation object using the Cap'n Proto library.
void write_to_file(const std::string &path)
Write the Cap'n'Proto buffer to disk.
virtual ~RBSCMEvaluationSerialization()
Destructor.
A Point defines a location in LIBMESH_DIM dimensional Real space.
This class is part of the rbOOmit framework.
This class is part of the rbOOmit framework.
void write_to_file(const std::string &path)
Write the Cap'n'Proto buffer to disk.
This class serializes an RBEIMEvaluation object using the Cap'n Proto library.
void add_transient_rb_evaluation_data_to_builder(TransientRBEvaluation &trans_rb_eval, RBEvaluationBuilderNumber &rb_eval_builder, TransRBEvaluationBuilderNumber &trans_rb_eval_builder)
Add data for a TransientRBEvaluation to the builder.
RBSCMEvaluation & _rb_scm_eval
The RBEvaluation object that will be written to disk.
RBEvaluation & _rb_eval
The RBEvaluation object that will be written to disk.
RBEIMEvaluationSerialization(RBEIMEvaluation &rb_eval)
Initialize a new buffer using the structure from the Cap'n'Proto schema described in rb_data....
virtual ~RBEvaluationSerialization()
Destructor.
void add_rb_evaluation_data_to_builder(RBEvaluation &rb_eval, RBEvaluationBuilderNumber &rb_eval_builder)
Add data for an RBEvaluation to the builder.
This class is part of the rbOOmit framework.
TransientRBEvaluationSerialization(TransientRBEvaluation &rb_eval)
Initialize a new buffer using the structure from the Cap'n'Proto schema described in rb_data....
This is the base class from which all geometric element types are derived.
This class is part of the rbOOmit framework.
void add_rb_eim_evaluation_data_to_builder(RBEIMEvaluation &rb_eim_eval, RBEvaluationBuilderNumber &rb_eval_builder, RBEIMEvaluationBuilderNumber &rb_eim_eval_builder)
Add data for an RBEIMEvaluation to the builder.
This class serializes an RBSCMEvaluation object using the Cap'n Proto library.
This class is part of the rbOOmit framework.
void add_parameter_ranges_to_builder(const RBParametrized &rb_evaluation, RBData::ParameterRanges::Builder ¶meter_ranges, RBData::DiscreteParameterList::Builder &discrete_parameters_list)
Add parameter ranges for continuous and discrete parameters.
RBSCMEvaluationSerialization(RBSCMEvaluation &rb_eval)
Initialize a new buffer using the structure from the Cap'n'Proto schema described in rb_data....
void write_to_file(const std::string &path)
Write the Cap'n'Proto buffer to disk.