46 #ifndef OME_XML_MODEL_SHAPE_H 47 #define OME_XML_MODEL_SHAPE_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/AffineTransform.h> 64 #include <ome/xml/model/Union.h> 65 #include <ome/xml/model/detail/OMEModelObject.h> 66 #include <ome/xml/model/enums/FillRule.h> 67 #include <ome/xml/model/enums/FontFamily.h> 68 #include <ome/xml/model/enums/FontStyle.h> 69 #include <ome/xml/model/enums/UnitsLength.h> 70 #include <ome/xml/model/primitives/Color.h> 71 #include <ome/xml/model/primitives/NonNegativeInteger.h> 92 std::shared_ptr<Impl>
impl;
115 operator= (
const Shape&) =
delete;
130 link (std::shared_ptr<Reference>& reference,
131 std::shared_ptr<ome::xml::model::OMEModelObject>&
object);
138 std::shared_ptr<std::string>
146 const std::shared_ptr<std::string>
162 std::shared_ptr<ome::xml::model::primitives::Quantity<ome::xml::model::enums::UnitsLength > >&
170 const std::shared_ptr<ome::xml::model::primitives::Quantity<ome::xml::model::enums::UnitsLength > >&
186 std::shared_ptr<bool>
194 const std::shared_ptr<bool>
203 setLocked (std::shared_ptr<bool>& locked);
210 std::shared_ptr<ome::xml::model::enums::FillRule>
218 const std::shared_ptr<ome::xml::model::enums::FillRule>
227 setFillRule (std::shared_ptr<ome::xml::model::enums::FillRule>& fillRule);
234 std::shared_ptr<std::string>
242 const std::shared_ptr<std::string>
251 setText (std::shared_ptr<std::string>& text);
258 std::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>
266 const std::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>
275 setTheC (std::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>& theC);
282 std::shared_ptr<ome::xml::model::enums::FontFamily>
290 const std::shared_ptr<ome::xml::model::enums::FontFamily>
299 setFontFamily (std::shared_ptr<ome::xml::model::enums::FontFamily>& fontFamily);
306 std::shared_ptr<ome::xml::model::enums::FontStyle>
314 const std::shared_ptr<ome::xml::model::enums::FontStyle>
323 setFontStyle (std::shared_ptr<ome::xml::model::enums::FontStyle>& fontStyle);
330 std::shared_ptr<ome::xml::model::primitives::Quantity<ome::xml::model::enums::UnitsLength, ome::xml::model::primitives::NonNegativeInteger > >&
338 const std::shared_ptr<ome::xml::model::primitives::Quantity<ome::xml::model::enums::UnitsLength, ome::xml::model::primitives::NonNegativeInteger > >&
354 std::shared_ptr<ome::xml::model::primitives::Color>
362 const std::shared_ptr<ome::xml::model::primitives::Color>
371 setFillColor (std::shared_ptr<ome::xml::model::primitives::Color>& fillColor);
378 std::shared_ptr<ome::xml::model::primitives::Color>
386 const std::shared_ptr<ome::xml::model::primitives::Color>
395 setStrokeColor (std::shared_ptr<ome::xml::model::primitives::Color>& strokeColor);
402 std::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>
410 const std::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>
419 setTheT (std::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>& theT);
435 setID (
const std::string&
id);
442 std::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>
450 const std::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>
459 setTheZ (std::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>& theZ);
466 std::shared_ptr<ome::xml::model::AffineTransform>
474 const std::shared_ptr<ome::xml::model::AffineTransform>
508 const std::weak_ptr<ome::xml::model::Annotation>&
521 const std::weak_ptr<ome::xml::model::Annotation>&
523 const std::shared_ptr<ome::xml::model::Annotation>& annotation);
536 linkAnnotation (
const std::shared_ptr<ome::xml::model::Annotation>& annotation);
554 unlinkAnnotation (
const std::shared_ptr<ome::xml::model::Annotation>& annotation);
561 std::weak_ptr<ome::xml::model::Union>
569 const std::weak_ptr<ome::xml::model::Union>
578 setUnion (std::weak_ptr<ome::xml::model::Union>& union_BackReference);
585 virtual const std::string&
604 #endif // OME_XML_MODEL_SHAPE_H OME model interface (abstract top-level container)
Definition: OMEModel.h:61
std::shared_ptr< ome::xml::model::primitives::Quantity< ome::xml::model::enums::UnitsLength, ome::xml::model::primitives::NonNegativeInteger > > & getFontSize()
Get the FontSize property.
Definition: Shape.cpp:639
const std::string & getXMLNamespace() const
Get the XML namespace for this model object.
Definition: Shape.cpp:1041
void setFontFamily(std::shared_ptr< ome::xml::model::enums::FontFamily > &fontFamily)
Set the FontFamily property.
Definition: Shape.cpp:611
std::shared_ptr< ome::xml::model::primitives::Color > getStrokeColor()
Get the StrokeColor property.
Definition: Shape.cpp:681
void setStrokeDashArray(std::shared_ptr< std::string > &strokeDashArray)
Set the StrokeDashArray property.
Definition: Shape.cpp:485
void setFillColor(std::shared_ptr< ome::xml::model::primitives::Color > &fillColor)
Set the FillColor property.
Definition: Shape.cpp:674
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: Shape.cpp:860
void setTheZ(std::shared_ptr< ome::xml::model::primitives::NonNegativeInteger > &theZ)
Set the TheZ property.
Definition: Shape.cpp:751
void setFontSize(const std::shared_ptr< ome::xml::model::primitives::Quantity< ome::xml::model::enums::UnitsLength, ome::xml::model::primitives::NonNegativeInteger > > &fontSize)
Set the FontSize property.
Definition: Shape.cpp:653
bool unlinkAnnotation(const std::shared_ptr< ome::xml::model::Annotation > &annotation)
Unlink Annotation.
Definition: Shape.cpp:821
boost::multi_index_container< Ptr< T >, boost::multi_index::indexed_by< boost::multi_index::random_access<>, boost::multi_index::ordered_unique< boost::multi_index::identity< Ptr< T > >, std::owner_less< Ptr< T > > > > > type
Multi-index container type.
Definition: OMEModelObject.h:93
std::shared_ptr< ome::xml::model::enums::FontFamily > getFontFamily()
Get the FontFamily property.
Definition: Shape.cpp:597
void setTheC(std::shared_ptr< ome::xml::model::primitives::NonNegativeInteger > &theC)
Set the TheC property.
Definition: Shape.cpp:590
void setTheT(std::shared_ptr< ome::xml::model::primitives::NonNegativeInteger > &theT)
Set the TheT property.
Definition: Shape.cpp:716
bool validElementName(const std::string &name) const
Check if a given element name is valid for processing by this model object.
Definition: Shape.cpp:257
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: Shape.cpp:263
void setText(std::shared_ptr< std::string > &text)
Set the Text property.
Definition: Shape.cpp:569
OME model object (concrete implementation).
Definition: OMEModelObject.h:64
void setID(const std::string &id)
Set the ID property.
Definition: Shape.cpp:730
virtual const std::string & getShapeType() const =0
Get the Shape type.
std::shared_ptr< ome::xml::model::primitives::Color > getFillColor()
Get the FillColor property.
Definition: Shape.cpp:660
std::shared_ptr< bool > getLocked()
Get the Locked property.
Definition: Shape.cpp:513
const std::weak_ptr< ome::xml::model::Annotation > & getLinkedAnnotation(OMEModelObject::indexed_container< ome::xml::model::Annotation, std::weak_ptr >::type::size_type index) const
Get linked Annotation.
Definition: Shape.cpp:791
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: Shape.cpp:440
void setStrokeWidth(const std::shared_ptr< ome::xml::model::primitives::Quantity< ome::xml::model::enums::UnitsLength > > &strokeWidth)
Set the StrokeWidth property.
Definition: Shape.cpp:506
void setUnion(std::weak_ptr< ome::xml::model::Union > &union_BackReference)
Set the Union property.
Definition: Shape.cpp:853
void setFillRule(std::shared_ptr< ome::xml::model::enums::FillRule > &fillRule)
Set the FillRule property.
Definition: Shape.cpp:548
Multi-index container for efficient ordered insertion and deletion of model object references...
Definition: OMEModelObject.h:84
std::shared_ptr< ome::xml::model::primitives::NonNegativeInteger > getTheZ()
Get the TheZ property.
Definition: Shape.cpp:737
std::shared_ptr< ome::xml::model::primitives::NonNegativeInteger > getTheC()
Get the TheC property.
Definition: Shape.cpp:576
Open Microscopy Environment C++ implementation.
std::shared_ptr< ome::xml::model::enums::FontStyle > getFontStyle()
Get the FontStyle property.
Definition: Shape.cpp:618
bool linkAnnotation(const std::shared_ptr< ome::xml::model::Annotation > &annotation)
Link Annotation.
Definition: Shape.cpp:807
std::shared_ptr< Impl > impl
Private implementation details.
Definition: Shape.h:90
void transform(const std::string &target_schema, const Input &input, Output &output, ome::common::xml::EntityResolver &entity_resolver, OMETransformResolver &transform_resolver)
Transform OME-XML to a different model schema version.
Definition: OMETransform.h:101
void setTransform(std::shared_ptr< ome::xml::model::AffineTransform > &transform)
Set the Transform property.
Definition: Shape.cpp:772
std::shared_ptr< ome::xml::model::primitives::Quantity< ome::xml::model::enums::UnitsLength > > & getStrokeWidth()
Get the StrokeWidth property.
Definition: Shape.cpp:492
OMEModelObject::indexed_container< ome::xml::model::Annotation, std::weak_ptr >::type getLinkedAnnotationList() const
Get the linked Annotation list.
Definition: Shape.cpp:785
const std::string & getID() const
Get the ID property.
Definition: Shape.cpp:723
OMEModelObject::indexed_container< ome::xml::model::Annotation, std::weak_ptr >::type::size_type sizeOfLinkedAnnotationList() const
Get size of linked Annotation list.
Definition: Shape.cpp:779
Shape model object.
Definition: Shape.h:87
Shape()
Default constructor.
Definition: Shape.cpp:233
std::shared_ptr< std::string > getText()
Get the Text property.
Definition: Shape.cpp:555
std::weak_ptr< ome::xml::model::Union > getUnion()
Get the Union property.
Definition: Shape.cpp:839
Private implementation details of Shape model object.
Definition: Shape.cpp:78
void setFontStyle(std::shared_ptr< ome::xml::model::enums::FontStyle > &fontStyle)
Set the FontStyle property.
Definition: Shape.cpp:632
A quantity of a defined unit.
Definition: Quantity.h:57
virtual ~Shape()
Destructor.
Definition: Shape.cpp:252
const std::weak_ptr< ome::xml::model::Annotation > & setLinkedAnnotation(OMEModelObject::indexed_container< ome::xml::model::Annotation, std::weak_ptr >::type::size_type index, const std::shared_ptr< ome::xml::model::Annotation > &annotation)
Set linked Annotation.
Definition: Shape.cpp:797
void setLocked(std::shared_ptr< bool > &locked)
Set the Locked property.
Definition: Shape.cpp:527
void setStrokeColor(std::shared_ptr< ome::xml::model::primitives::Color > &strokeColor)
Set the StrokeColor property.
Definition: Shape.cpp:695
std::shared_ptr< ome::xml::model::primitives::NonNegativeInteger > getTheT()
Get the TheT property.
Definition: Shape.cpp:702
std::shared_ptr< std::string > getStrokeDashArray()
Get the StrokeDashArray property.
Definition: Shape.cpp:471
std::shared_ptr< ome::xml::model::enums::FillRule > getFillRule()
Get the FillRule property.
Definition: Shape.cpp:534
std::shared_ptr< ome::xml::model::AffineTransform > getTransform()
Get the Transform property.
Definition: Shape.cpp:758