46 #ifndef OME_XML_MODEL_WELLSAMPLE_H 47 #define OME_XML_MODEL_WELLSAMPLE_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/Image.h> 64 #include <ome/xml/model/Well.h> 65 #include <ome/xml/model/detail/OMEModelObject.h> 66 #include <ome/xml/model/enums/UnitsLength.h> 67 #include <ome/xml/model/primitives/NonNegativeInteger.h> 68 #include <ome/xml/model/primitives/Timestamp.h> 79 class PlateAcquisition;
89 std::shared_ptr<Impl>
impl;
120 static std::shared_ptr<WellSample>
150 link (std::shared_ptr<Reference>& reference,
151 std::shared_ptr<ome::xml::model::OMEModelObject>&
object);
174 std::shared_ptr<ome::xml::model::primitives::Quantity<ome::xml::model::enums::UnitsLength > >&
182 const std::shared_ptr<ome::xml::model::primitives::Quantity<ome::xml::model::enums::UnitsLength > >&
198 std::shared_ptr<ome::xml::model::primitives::Quantity<ome::xml::model::enums::UnitsLength > >&
206 const std::shared_ptr<ome::xml::model::primitives::Quantity<ome::xml::model::enums::UnitsLength > >&
222 std::shared_ptr<ome::xml::model::primitives::Timestamp>
230 const std::shared_ptr<ome::xml::model::primitives::Timestamp>
239 setTimepoint (std::shared_ptr<ome::xml::model::primitives::Timestamp>& timepoint);
255 setID (
const std::string&
id);
263 std::weak_ptr<ome::xml::model::Image>
272 const std::weak_ptr<ome::xml::model::Image>
281 linkImage (std::shared_ptr<ome::xml::model::Image>& image);
293 unlinkImage (std::shared_ptr<ome::xml::model::Image>& image);
318 const std::weak_ptr<ome::xml::model::PlateAcquisition>&
331 const std::weak_ptr<ome::xml::model::PlateAcquisition>&
333 const std::shared_ptr<ome::xml::model::PlateAcquisition>& plateAcquisition_BackReference);
346 linkPlateAcquisition (
const std::shared_ptr<ome::xml::model::PlateAcquisition>& plateAcquisition_BackReference);
364 unlinkPlateAcquisition (
const std::shared_ptr<ome::xml::model::PlateAcquisition>& plateAcquisition_BackReference);
371 std::weak_ptr<ome::xml::model::Well>
379 const std::weak_ptr<ome::xml::model::Well>
388 setWell (std::weak_ptr<ome::xml::model::Well>& well_BackReference);
406 #endif // OME_XML_MODEL_WELLSAMPLE_H OME model interface (abstract top-level container)
Definition: OMEModel.h:61
void setIndex(const ome::xml::model::primitives::NonNegativeInteger &index)
Set the Index property.
Definition: WellSample.cpp:324
bool linkPlateAcquisition(const std::shared_ptr< ome::xml::model::PlateAcquisition > &plateAcquisition_BackReference)
Link PlateAcquisition.
Definition: WellSample.cpp:465
void setID(const std::string &id)
Set the ID property.
Definition: WellSample.cpp:401
virtual void update(const common::xml::dom::Element &element, ome::xml::model::OMEModel &model)
Update the object hierarchy recursively from an XML DOM tree.
Definition: WellSample.cpp:205
const ome::xml::model::primitives::NonNegativeInteger & getIndex() const
Get the Index property.
Definition: WellSample.cpp:317
bool unlinkPlateAcquisition(const std::shared_ptr< ome::xml::model::PlateAcquisition > &plateAcquisition_BackReference)
Unlink PlateAcquisition.
Definition: WellSample.cpp:478
WellSample & operator=(const WellSample &)
Assignment operator (deleted).
const std::string & getID() const
Get the ID property.
Definition: WellSample.cpp:394
Private implementation details of WellSample model object.
Definition: WellSample.cpp:75
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
const std::weak_ptr< ome::xml::model::PlateAcquisition > & getLinkedPlateAcquisition(OMEModelObject::indexed_container< ome::xml::model::PlateAcquisition, std::weak_ptr >::type::size_type index) const
Get linked PlateAcquisition.
Definition: WellSample.cpp:449
OME model object (concrete implementation).
Definition: OMEModelObject.h:64
OMEModelObject::indexed_container< ome::xml::model::PlateAcquisition, std::weak_ptr >::type getLinkedPlateAcquisitionList() const
Get the linked PlateAcquisition list.
Definition: WellSample.cpp:443
std::weak_ptr< ome::xml::model::Well > getWell()
Get the Well property.
Definition: WellSample.cpp:495
virtual ~WellSample()
Destructor.
Definition: WellSample.cpp:178
static std::shared_ptr< WellSample > create(const common::xml::dom::Element &element, ome::xml::model::OMEModel &model)
Create a WellSample model object from DOM element.
Definition: WellSample.cpp:183
const std::weak_ptr< ome::xml::model::PlateAcquisition > & setLinkedPlateAcquisition(OMEModelObject::indexed_container< ome::xml::model::PlateAcquisition, std::weak_ptr >::type::size_type index, const std::shared_ptr< ome::xml::model::PlateAcquisition > &plateAcquisition_BackReference)
Set linked PlateAcquisition.
Definition: WellSample.cpp:455
void setTimepoint(std::shared_ptr< ome::xml::model::primitives::Timestamp > &timepoint)
Set the Timepoint property.
Definition: WellSample.cpp:387
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: WellSample.cpp:291
bool validElementName(const std::string &name) const
Check if a given element name is valid for processing by this model object.
Definition: WellSample.cpp:199
Multi-index container for efficient ordered insertion and deletion of model object references...
Definition: OMEModelObject.h:84
void setPositionX(const std::shared_ptr< ome::xml::model::primitives::Quantity< ome::xml::model::enums::UnitsLength > > &positionX)
Set the PositionX property.
Definition: WellSample.cpp:345
Open Microscopy Environment C++ implementation.
WellSample model object.
Definition: WellSample.h:84
OMEModelObject::indexed_container< ome::xml::model::PlateAcquisition, std::weak_ptr >::type::size_type sizeOfLinkedPlateAcquisitionList() const
Get size of linked PlateAcquisition list.
Definition: WellSample.cpp:437
void linkImage(std::shared_ptr< ome::xml::model::Image > &image)
Link Image.
Definition: WellSample.cpp:421
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: WellSample.cpp:515
const std::string & getXMLNamespace() const
Get the XML namespace for this model object.
Definition: WellSample.cpp:591
const std::string & elementName() const
Get the element name of this model object.
Definition: WellSample.cpp:192
void setPositionY(const std::shared_ptr< ome::xml::model::primitives::Quantity< ome::xml::model::enums::UnitsLength > > &positionY)
Set the PositionY property.
Definition: WellSample.cpp:366
std::shared_ptr< ome::xml::model::primitives::Quantity< ome::xml::model::enums::UnitsLength > > & getPositionX()
Get the PositionX property.
Definition: WellSample.cpp:331
void setWell(std::weak_ptr< ome::xml::model::Well > &well_BackReference)
Set the Well property.
Definition: WellSample.cpp:509
std::shared_ptr< ome::xml::model::primitives::Timestamp > getTimepoint()
Get the Timepoint property.
Definition: WellSample.cpp:373
std::shared_ptr< ome::xml::model::primitives::Quantity< ome::xml::model::enums::UnitsLength > > & getPositionY()
Get the PositionY property.
Definition: WellSample.cpp:352
A quantity of a defined unit.
Definition: Quantity.h:57
void unlinkImage(std::shared_ptr< ome::xml::model::Image > &image)
Unlink Image.
Definition: WellSample.cpp:427
WellSample()
Default constructor.
Definition: WellSample.cpp:163
std::weak_ptr< ome::xml::model::Image > getLinkedImage()
Get linked Image.
Definition: WellSample.cpp:408
std::shared_ptr< Impl > impl
Private implementation details.
Definition: WellSample.h:87
A numeric type constrained to a subrange (or subranges) of its range limits.
Definition: ConstrainedNumeric.h:118