blob: 905e1f45b02f277ca8d4b712210362427e653bd9 [file] [log] [blame]
#ifndef BASYX_SUBMODEL_API_V2_SUBMODELELEMENT_IENTITY_H
#define BASYX_SUBMODEL_API_V2_SUBMODELELEMENT_IENTITY_H
#include <BaSyx/submodel/api_v2/submodelelement/ISubmodelElement.h>
#include <BaSyx/submodel/api_v2/common/IElementContainer.h>
#include <BaSyx/submodel/enumerations/EntityType.h>
namespace basyx {
namespace submodel {
namespace api {
class IEntity : public virtual ISubmodelElement
{
public:
virtual ~IEntity() = 0;
virtual IElementContainer<ISubmodelElement> & getStatement() = 0;
virtual EntityType getEntityType() const = 0;
virtual const IReference * const getAssetRef() const = 0;
virtual void setAssetRef(const IReference & assetRef) = 0;
};
inline IEntity::~IEntity() = default;
}
}
}
#endif /* BASYX_SUBMODEL_API_V2_SUBMODELELEMENT_IENTITY_H */