64 void load_model(std::shared_ptr<const ModelData> modelData);
94 template <
typename RandomAccessIterator>
95 void _set_constraints(std::vector<T>& constraints, std::vector<T>& constraintEvaluation, RandomAccessIterator& constraintValue)
const;
106 template <
typename RandomAccessIterator>
107 void _set_constraints(std::vector<T>& constraints, T& constraintEvaluation, RandomAccessIterator& constraintValue)
const;
113 template <
typename T>
115 load_model(
"", modelName, fileType);
121 template <
typename T>
124 std::shared_ptr<ModelData> modelData;
127 std::unique_ptr<ModelParser> parser = _parserFactory->create_model_parser(fileType);
128 modelData = parser->parse_model(modelPath, modelName);
129 _set_data_object(modelData);
131 catch (
const std::exception& e) {
132 throw(
MelonException(
" Encountered a fatal error while loading model from file. Terminating.", e));
135 throw(
MelonException(
" Encountered a fatal error while loading model from file. Terminating."));
145 template <
typename T>
149 _set_data_object(modelData);
151 catch (std::exception &e) {
152 throw(
MelonException(
" Encountered a fatal error while loading model from data object. Terminating.", e));
155 throw(
MelonException(
" Encountered a fatal error while loading model from data object. Terminating."));
163 template <
typename T>
164 template <
typename RandomAccessIterator>
166 for (
auto& i : constraintEvaluation) {
167 _set_constraints(constraints, i, constraintValue);
174 template <
typename T>
175 template <
typename RandomAccessIterator>
177 T cv = *constraintValue;
178 T constraint = constraintEvaluation - cv;
179 constraints.push_back(constraint);
182 constraintEvaluation = *constraintValue;
This class defines the exceptions thrown by FeedForwardNet.
Definition exceptions.h:32
MelonModel(std::shared_ptr< ModelParserFactory > parserFactory)
Constructor.
Definition MeLOn.h:76
bool _modelLoaded
Definition MeLOn.h:68
virtual ~MelonModel()=default
Default destructor.
std::shared_ptr< ModelParserFactory > _parserFactory
Definition MeLOn.h:69
void load_model(std::string modelName, MODEL_FILE_TYPE fileType)
Loads new model from file.
Definition MeLOn.h:114
void _set_constraints(std::vector< T > &constraints, std::vector< T > &constraintEvaluation, RandomAccessIterator &constraintValue) const
Sets constraints required for fullspace opimization.
Definition MeLOn.h:165
virtual void _set_data_object(std::shared_ptr< const ModelData > modelData)=0
Sets data object containing model parameters.
MODEL_FILE_TYPE
Enum for representing the parsable filetypes.
Definition modelParser.h:30