20 #ifndef __CONTAINER_HXX__
21 #define __CONTAINER_HXX__
34 class ComponentInstance;
51 virtual std::string getDiscreminantStrOfThis(
const Task *askingNode)
const;
54 virtual void start(
const Task *askingNode,
55 const std::string& resource_name,
56 const std::string& container_name);
57 virtual bool canAcceptImposedResource();
58 virtual bool isUsingPythonCache();
59 virtual void usePythonCache(
bool v);
63 virtual void setAttachOnCloningStatus(
bool val)
const;
64 virtual void attachOnCloning()
const;
65 virtual void dettachOnCloning()
const;
66 virtual bool isAttachedOnCloning()
const;
72 virtual bool isSupportingRTODefNbOfComp()
const;
74 virtual void setProperty(
const std::string& name,
const std::string& value) = 0;
75 virtual std::string
getProperty(
const std::string& name)
const = 0;
80 virtual void setProperties(
const std::map<std::string,std::string>& properties);
81 virtual std::string
getName()
const {
return _name; }
83 void setName(std::string name) { _name = name; }
87 static const char KIND_ENTRY[];
88 static const char AOC_ENTRY[];
89 static const char USE_PYCACHE_PROPERTY[];
#define YACSLIBENGINE_EXPORT
Base class for all component instances.
virtual std::map< std::string, std::string > getProperties() const =0
void setName(std::string name)
WARNING ! name is used in edition to identify different containers, it is not the runtime name of the...
virtual void start(const Task *askingNode)=0
virtual void shutdown(int level)=0
virtual std::string getKind() const =0
virtual bool isAlreadyStarted(const Task *askingNode) const =0
virtual void setProperty(const std::string &name, const std::string &value)=0
virtual std::string getFullPlacementId(const Task *askingNode) const =0
virtual void clearProperties()=0
virtual void addComponentName(const std::string &name)=0
virtual std::string getProperty(const std::string &name) const =0
virtual std::string getPlacementId(const Task *askingNode) const =0
virtual Container * cloneAlways() const =0
bool _isAttachedOnCloning
virtual std::map< std::string, std::string > getResourceProperties(const std::string &name) const =0
virtual Container * clone() const =0
WARNING ! clone behaviour MUST be in coherence with what is returned by isAttachedOnCloning() method
virtual void checkCapabilityToDealWith(const ComponentInstance *inst) const =0
virtual std::string getName() const
Base class for all schema objects.