46 #ifndef OME_XML_MODEL_UNION_H 47 #define OME_XML_MODEL_UNION_H 57 #include <ome/common/xml/dom/Document.h> 58 #include <ome/common/xml/dom/Element.h> 59 #include <ome/common/xml/dom/Node.h> 61 #include <ome/xml/model/primitives/Quantity.h> 63 #include <ome/xml/model/detail/OMEModelObject.h> 84 std::shared_ptr<Impl>
impl;
115 static std::shared_ptr<Union>
129 operator= (
const Union&) =
delete;
144 link (std::shared_ptr<Reference>& reference,
145 std::shared_ptr<ome::xml::model::OMEModelObject>&
object);
152 std::vector<std::shared_ptr<ome::xml::model::Shape>>::size_type
161 std::vector<std::shared_ptr<ome::xml::model::Shape>>&
170 const std::vector<std::shared_ptr<ome::xml::model::Shape>>&
180 std::shared_ptr<ome::xml::model::Shape>&
181 getShape (std::vector<std::shared_ptr<ome::xml::model::Shape>>::size_type index);
190 const std::shared_ptr<ome::xml::model::Shape>&
191 getShape (std::vector<std::shared_ptr<ome::xml::model::Shape>>::size_type index)
const;
201 setShape (std::vector<std::shared_ptr<ome::xml::model::Shape>>::size_type index,
202 std::shared_ptr<ome::xml::model::Shape>& shape);
213 addShape (std::shared_ptr<ome::xml::model::Shape>& shape);
225 removeShape (std::shared_ptr<ome::xml::model::Shape>& shape);
243 #endif // OME_XML_MODEL_UNION_H OME model interface (abstract top-level container)
Definition: OMEModel.h:61
std::vector< std::shared_ptr< ome::xml::model::Shape > > & getShapeList()
Get the Shape list.
Definition: Union.cpp:262
const std::string & getXMLNamespace() const
Get the XML namespace for this model object.
Definition: Union.cpp:343
virtual ~Union()
Destructor.
Definition: Union.cpp:148
const std::string & elementName() const
Get the element name of this model object.
Definition: Union.cpp:162
std::shared_ptr< ome::xml::model::Shape > & getShape(std::vector< std::shared_ptr< ome::xml::model::Shape >>::size_type index)
Get Shape.
Definition: Union.cpp:274
OME model object (concrete implementation).
Definition: OMEModelObject.h:64
Private implementation details of Union model object.
Definition: Union.cpp:86
Union()
Default constructor.
Definition: Union.cpp:129
std::vector< std::shared_ptr< ome::xml::model::Shape > >::size_type sizeOfShapeList() const
Get size of linked Shape list.
Definition: Union.cpp:256
void addShape(std::shared_ptr< ome::xml::model::Shape > &shape)
Add Shape.
Definition: Union.cpp:295
Open Microscopy Environment C++ implementation.
void setShape(std::vector< std::shared_ptr< ome::xml::model::Shape >>::size_type index, std::shared_ptr< ome::xml::model::Shape > &shape)
Set Shape.
Definition: Union.cpp:286
bool link(std::shared_ptr< Reference > &reference, std::shared_ptr< ome::xml::model::OMEModelObject > &object)
Link a given OME model object to this model object.
Definition: Union.cpp:241
static std::shared_ptr< Union > create(const common::xml::dom::Element &element, ome::xml::model::OMEModel &model)
Create a Union model object from DOM element.
Definition: Union.cpp:153
std::shared_ptr< Impl > impl
Private implementation details.
Definition: Union.h:82
virtual void asXMLElementInternal(common::xml::dom::Document &document, common::xml::dom::Element &element) const
Transform the object hierarchy rooted at this element to XML.
Definition: Union.cpp:313
bool validElementName(const std::string &name) const
Check if a given element name is valid for processing by this model object.
Definition: Union.cpp:169
virtual SKIP void update(const common::xml::dom::Element &element, ome::xml::model::OMEModel &model)
Update the object hierarchy recursively from an XML DOM tree.
Definition: Union.cpp:175
Union model object.
Definition: Union.h:79
void removeShape(std::shared_ptr< ome::xml::model::Shape > &shape)
Remove Shape.
Definition: Union.cpp:303