blob: e8122a488a554bbcafaaf94868bea66186dd9e0d [file] [log] [blame]
Johannes.wendel.iese.fraunhofer.dec6de3de2019-08-09 11:16:50 +02001/*
2 * IFormula.h
3 *
4 * Author: wendel
5 */
6
7#ifndef BASYX_METAMODEL_IFormula_H_
8#define BASYX_METAMODEL_IFormula_H_
9
Thomas Psota176a20c2019-11-27 11:52:28 +010010#include "submodel/api/reference/IReference.h"
Johannes Wendel11b6dae2019-11-13 13:13:38 +010011#include "basyx/types.h"
Johannes Wendel10dc5522019-12-04 11:20:14 +010012#include "IConstraint.h"
Johannes.wendel.iese.fraunhofer.dec6de3de2019-08-09 11:16:50 +020013
14#include <vector>
15
Johannes Wendel11b6dae2019-11-13 13:13:38 +010016
17namespace basyx {
Thomas Psotab49d8df2019-11-27 15:55:41 +010018namespace submodel {
Johannes Wendel11b6dae2019-11-13 13:13:38 +010019
Johannes Wendel10dc5522019-12-04 11:20:14 +010020class IFormula : public IConstraint
Johannes.wendel.iese.fraunhofer.dec6de3de2019-08-09 11:16:50 +020021{
22public:
Johannes Wendel10dc5522019-12-04 11:20:14 +010023 struct Path {
24 static constexpr char Dependson[] = "dependsOn";
25 static constexpr char Modeltype[] = "Formula";
26 };
27
28public:
Johannes Wendel11b6dae2019-11-13 13:13:38 +010029 virtual ~IFormula() = default;
Johannes.wendel.iese.fraunhofer.dec6de3de2019-08-09 11:16:50 +020030
Thomas Psotab49d8df2019-11-27 15:55:41 +010031 virtual basyx::specificCollection_t<IReference> getDependsOn() const = 0;
Johannes.wendel.iese.fraunhofer.dec6de3de2019-08-09 11:16:50 +020032};
33
Johannes Wendel11b6dae2019-11-13 13:13:38 +010034}
35}
Johannes Wendel11b6dae2019-11-13 13:13:38 +010036
Johannes.wendel.iese.fraunhofer.dec6de3de2019-08-09 11:16:50 +020037#endif
38