2 #ifndef GRAMODS_CORE_OBJECT
3 #define GRAMODS_CORE_OBJECT
5 #include <gmCore/config.hh>
10 BEGIN_NAMESPACE_GMCORE;
42 :
public std::enable_shared_from_this<Object> {
124 END_NAMESPACE_GMCORE;
Base type for objects in the Gramods package for standardized handling of construction,...
Definition: Object.hh:42
virtual std::string getDefaultKey()
Returns the default key for the Object when automatically instantiated in a Configuration,...
Definition: Object.hh:111
Object()
Initializes internal data.
Definition: Object.hh:49
virtual void traverse(Visitor *visitor)
Calls the child Object's accept method, if such exist.
Definition: Object.hh:90
virtual ~Object()
Cleaning up internal data.
Definition: Object.hh:54
bool isInitialized()
Returns true if the Object is initialized.
Definition: Object.hh:117
virtual void initialize()
Called to initialize the Object.
Definition: Object.hh:63
virtual void accept(Visitor *visitor)
Calls the visitors apply method with this as argument.
Definition: Object.hh:85
The visitor of a design pattern for automatic traversal.
Definition: Object.hh:75
virtual void apply(Object *node)
This method is called for each visited objects.
Definition: Object.hh:79