39 #ifndef OME_XML_MODEL_OMEMODEL_H 40 #define OME_XML_MODEL_OMEMODEL_H 48 #include <ome/xml/model/OMEModelObject.h> 68 typedef std::map<std::string, ome::compat::shared_ptr<OMEModelObject> >
object_map_type;
70 typedef std::map<ome::compat::shared_ptr<OMEModelObject>, reference_list_type>
reference_map_type;
108 ome::compat::shared_ptr<OMEModelObject>
110 ome::compat::shared_ptr<OMEModelObject>&
object) = 0;
121 ome::compat::shared_ptr<OMEModelObject>
135 ome::compat::shared_ptr<OMEModelObject>
144 const object_map_type&
164 addReference (ome::compat::shared_ptr<OMEModelObject>& a,
165 ome::compat::shared_ptr<Reference>& b) = 0;
173 const reference_map_type&
196 #endif // OME_XML_MODEL_OMEMODEL_H OME model interface (abstract top-level container)
Definition: OMEModel.h:62
virtual const object_map_type & getModelObjects() const =0
Retrieve all model objects from the model.
OMEModel()
Constructor.
Definition: OMEModel.h:76
std::vector< ome::compat::shared_ptr< Reference > > reference_list_type
A list of Reference objects.
Definition: OMEModel.h:66
virtual ~OMEModel()
Destructor.
Definition: OMEModel.h:82
std::map< std::string, ome::compat::shared_ptr< OMEModelObject > > object_map_type
A map of string model object identifiers to model objects.
Definition: OMEModel.h:68
virtual ome::compat::shared_ptr< OMEModelObject > removeModelObject(const std::string &id)=0
Remove a model object from the model.
Open Microscopy Environment C++ implementation.
std::map< ome::compat::shared_ptr< OMEModelObject >, reference_list_type > reference_map_type
A map of model objects to list of Reference objects.
Definition: OMEModel.h:70
virtual bool addReference(ome::compat::shared_ptr< OMEModelObject > &a, ome::compat::shared_ptr< Reference > &b)=0
Add a reference to a model object.
OMEModel & operator=(const OMEModel &)
Assignment operator (deleted).
reference_map_type::size_type size_type
Size type for reference map.
Definition: OMEModel.h:72
virtual const reference_map_type & getReferences() const =0
Retrieve all references from the model.
virtual ome::compat::shared_ptr< OMEModelObject > getModelObject(const std::string &id) const =0
Retrieve a model object from the model.
virtual ome::compat::shared_ptr< OMEModelObject > addModelObject(const std::string &id, ome::compat::shared_ptr< OMEModelObject > &object)=0
Add a model object to the model.
virtual size_type resolveReferences()=0
Resolve all references.