46 #ifndef OME_XML_MODEL_PLATE_H
47 #define OME_XML_MODEL_PLATE_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>
60 #include <ome/common/xml/dom/NodeList.h>
62 #include <ome/xml/model/detail/OMEModelObject.h>
63 #include <ome/xml/model/enums/NamingConvention.h>
64 #include <ome/xml/model/primitives/NonNegativeInteger.h>
65 #include <ome/xml/model/primitives/PositiveInteger.h>
77 class PlateAcquisition;
88 ome::compat::shared_ptr<std::string>
status;
90 ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
rows;
98 ome::compat::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>
fieldIndex;
106 ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
columns;
108 ome::compat::shared_ptr<std::string>
name;
112 std::vector<ome::compat::shared_ptr<ome::xml::model::Well> >
wells;
151 static ome::compat::shared_ptr< Plate>
176 link (ome::compat::shared_ptr<Reference>& reference,
177 ome::compat::shared_ptr< ome::xml::model::OMEModelObject>&
object);
184 ome::compat::shared_ptr<std::string>
192 const ome::compat::shared_ptr<std::string>
201 setStatus (ome::compat::shared_ptr<std::string>& status);
208 ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
216 const ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
225 setRows (ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>& rows);
232 ome::compat::shared_ptr<std::string>
240 const ome::compat::shared_ptr<std::string>
256 ome::compat::shared_ptr<ome::xml::model::enums::NamingConvention>
264 const ome::compat::shared_ptr<ome::xml::model::enums::NamingConvention>
273 setRowNamingConvention (ome::compat::shared_ptr<ome::xml::model::enums::NamingConvention>& rowNamingConvention);
280 ome::compat::shared_ptr<ome::xml::model::enums::NamingConvention>
288 const ome::compat::shared_ptr<ome::xml::model::enums::NamingConvention>
304 ome::compat::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>
312 const ome::compat::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>
321 setFieldIndex (ome::compat::shared_ptr<ome::xml::model::primitives::NonNegativeInteger>& fieldIndex);
328 ome::compat::shared_ptr<double>
336 const ome::compat::shared_ptr<double>
352 ome::compat::shared_ptr<double>
360 const ome::compat::shared_ptr<double>
385 setID (
const std::string&
id);
392 ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
400 const ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
409 setColumns (ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>& columns);
416 ome::compat::shared_ptr<std::string>
424 const ome::compat::shared_ptr<std::string>
433 setName (ome::compat::shared_ptr<std::string>& name);
440 ome::compat::shared_ptr<std::string>
448 const ome::compat::shared_ptr<std::string>
457 setDescription (ome::compat::shared_ptr<std::string>& description);
464 std::vector<ome::compat::shared_ptr<ome::xml::model::Well> >::size_type
473 std::vector<ome::compat::shared_ptr<ome::xml::model::Well> >&
482 const std::vector<ome::compat::shared_ptr<ome::xml::model::Well> >&
492 ome::compat::shared_ptr<ome::xml::model::Well>&
493 getWell (std::vector<ome::compat::shared_ptr<ome::xml::model::Well> >::size_type index);
502 const ome::compat::shared_ptr<ome::xml::model::Well>&
503 getWell (std::vector<ome::compat::shared_ptr<ome::xml::model::Well> >::size_type index)
const;
513 setWell (std::vector<ome::compat::shared_ptr<ome::xml::model::Well> >::size_type index,
514 ome::compat::shared_ptr<ome::xml::model::Well>& well);
525 addWell (ome::compat::shared_ptr<ome::xml::model::Well>& well);
537 removeWell (ome::compat::shared_ptr<ome::xml::model::Well>& well);
562 const ome::compat::weak_ptr<ome::xml::model::Annotation>&
575 const ome::compat::weak_ptr<ome::xml::model::Annotation>&
577 const ome::compat::shared_ptr<ome::xml::model::Annotation>& annotation);
590 linkAnnotation (
const ome::compat::shared_ptr<ome::xml::model::Annotation>& annotation);
608 unlinkAnnotation (
const ome::compat::shared_ptr<ome::xml::model::Annotation>& annotation);
615 std::vector<ome::compat::shared_ptr<ome::xml::model::PlateAcquisition> >::size_type
624 std::vector<ome::compat::shared_ptr<ome::xml::model::PlateAcquisition> >&
633 const std::vector<ome::compat::shared_ptr<ome::xml::model::PlateAcquisition> >&
643 ome::compat::shared_ptr<ome::xml::model::PlateAcquisition>&
644 getPlateAcquisition (std::vector<ome::compat::shared_ptr<ome::xml::model::PlateAcquisition> >::size_type index);
653 const ome::compat::shared_ptr<ome::xml::model::PlateAcquisition>&
654 getPlateAcquisition (std::vector<ome::compat::shared_ptr<ome::xml::model::PlateAcquisition> >::size_type index)
const;
664 setPlateAcquisition (std::vector<ome::compat::shared_ptr<ome::xml::model::PlateAcquisition> >::size_type index,
665 ome::compat::shared_ptr<ome::xml::model::PlateAcquisition>& plateAcquisition);
676 addPlateAcquisition (ome::compat::shared_ptr<ome::xml::model::PlateAcquisition>& plateAcquisition);
713 const ome::compat::weak_ptr<ome::xml::model::Screen>&
726 const ome::compat::weak_ptr<ome::xml::model::Screen>&
728 const ome::compat::shared_ptr<ome::xml::model::Screen>& screen_BackReference);
741 linkScreen (
const ome::compat::shared_ptr<ome::xml::model::Screen>& screen_BackReference);
759 unlinkScreen (
const ome::compat::shared_ptr<ome::xml::model::Screen>& screen_BackReference);
783 #endif // OME_XML_MODEL_PLATE_H
OME model interface (abstract top-level container)
Definition: OMEModel.h:62
void setWell(std::vector< ome::compat::shared_ptr< ome::xml::model::Well > >::size_type index, ome::compat::shared_ptr< ome::xml::model::Well > &well)
Set Well.
Definition: Plate.cpp:701
bool linkScreen(const ome::compat::shared_ptr< ome::xml::model::Screen > &screen_BackReference)
Link Screen.
Definition: Plate.cpp:875
std::vector< ome::compat::shared_ptr< ome::xml::model::Well > >::size_type sizeOfWellList() const
Get size of linked Well list.
Definition: Plate.cpp:671
virtual ~Plate()
Destructor.
Definition: Plate.cpp:201
OMEModelObject::indexed_container< ome::xml::model::Screen, ome::compat::weak_ptr >::type screenLinks
Screen_BackReference back reference (occurs more than once)
Definition: Plate.h:118
ome::compat::shared_ptr< double > wellOriginX
WellOriginX property.
Definition: Plate.h:102
Plate model object.
Definition: Plate.h:84
std::vector< ome::compat::shared_ptr< ome::xml::model::Well > > wells
Well property (occurs more than once)
Definition: Plate.h:112
virtual common::xml::dom::Element asXMLElementInternal(common::xml::dom::Document &document, common::xml::dom::Element &element) const
Transform the object hierarchy rooted at this element to XML.
Definition: Plate.cpp:912
bool unlinkAnnotation(const ome::compat::shared_ptr< ome::xml::model::Annotation > &annotation)
Unlink Annotation.
Definition: Plate.cpp:771
const std::string & getID() const
Get the ID property.
Definition: Plate.cpp:594
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: Plate.cpp:231
const std::string & elementName() const
Get the element name of this model object.
Definition: Plate.cpp:215
void removeWell(ome::compat::shared_ptr< ome::xml::model::Well > &well)
Remove Well.
Definition: Plate.cpp:718
void setID(const std::string &id)
Set the ID property.
Definition: Plate.cpp:601
OMEModelObject::indexed_container< ome::xml::model::Screen, ome::compat::weak_ptr >::type getLinkedScreenList() const
Get the linked Screen list.
Definition: Plate.cpp:853
virtual common::xml::dom::Element asXMLElement(common::xml::dom::Document &document) const
Transform the object hierarchy rooted at this element to XML.
Definition: Plate.cpp:905
const ome::compat::weak_ptr< ome::xml::model::Screen > & getLinkedScreen(OMEModelObject::indexed_container< ome::xml::model::Screen, ome::compat::weak_ptr >::type::size_type index) const
Get linked Screen.
Definition: Plate.cpp:859
OMEModelObject::indexed_container< ome::xml::model::Annotation, ome::compat::weak_ptr >::type annotationLinks
AnnotationRef reference (occurs more than once)
Definition: Plate.h:114
std::vector< ome::compat::shared_ptr< ome::xml::model::PlateAcquisition > >::size_type sizeOfPlateAcquisitionList() const
Get size of linked PlateAcquisition list.
Definition: Plate.cpp:789
ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > rows
Rows property.
Definition: Plate.h:90
DOM Document wrapper.
Definition: Document.h:80
DOM Element wrapper.
Definition: Element.h:66
OME model object (concrete implementation).
Definition: OMEModelObject.h:64
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 > >, ome::compat::owner_less< Ptr< T > > > > > type
Multi-index container type.
Definition: OMEModelObject.h:94
const ome::compat::weak_ptr< ome::xml::model::Screen > & setLinkedScreen(OMEModelObject::indexed_container< ome::xml::model::Screen, ome::compat::weak_ptr >::type::size_type index, const ome::compat::shared_ptr< ome::xml::model::Screen > &screen_BackReference)
Set linked Screen.
Definition: Plate.cpp:865
OMEModelObject::indexed_container< ome::xml::model::Annotation, ome::compat::weak_ptr >::type getLinkedAnnotationList() const
Get the linked Annotation list.
Definition: Plate.cpp:735
ome::compat::shared_ptr< std::string > description
Description property.
Definition: Plate.h:110
void addPlateAcquisition(ome::compat::shared_ptr< ome::xml::model::PlateAcquisition > &plateAcquisition)
Add PlateAcquisition.
Definition: Plate.cpp:828
ome::compat::shared_ptr< ome::xml::model::primitives::NonNegativeInteger > fieldIndex
FieldIndex property.
Definition: Plate.h:98
bool linkAnnotation(const ome::compat::shared_ptr< ome::xml::model::Annotation > &annotation)
Link Annotation.
Definition: Plate.cpp:757
ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > getColumns()
Get the Columns property.
Definition: Plate.cpp:608
void setRowNamingConvention(ome::compat::shared_ptr< ome::xml::model::enums::NamingConvention > &rowNamingConvention)
Set the RowNamingConvention property.
Definition: Plate.cpp:503
void setRows(ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > &rows)
Set the Rows property.
Definition: Plate.cpp:461
ome::compat::shared_ptr< ome::xml::model::enums::NamingConvention > getRowNamingConvention()
Get the RowNamingConvention property.
Definition: Plate.cpp:489
Plate()
Default constructor.
Definition: Plate.cpp:152
void setWellOriginY(ome::compat::shared_ptr< double > &wellOriginY)
Set the WellOriginY property.
Definition: Plate.cpp:566
ome::compat::shared_ptr< std::string > getDescription()
Get the Description property.
Definition: Plate.cpp:650
void setDescription(ome::compat::shared_ptr< std::string > &description)
Set the Description property.
Definition: Plate.cpp:664
void setExternalIdentifier(ome::compat::shared_ptr< std::string > &externalIdentifier)
Set the ExternalIdentifier property.
Definition: Plate.cpp:482
std::vector< ome::compat::shared_ptr< ome::xml::model::PlateAcquisition > > plateAcquisitions
PlateAcquisition property (occurs more than once)
Definition: Plate.h:116
void setStatus(ome::compat::shared_ptr< std::string > &status)
Set the Status property.
Definition: Plate.cpp:440
ome::compat::shared_ptr< ome::xml::model::PlateAcquisition > & getPlateAcquisition(std::vector< ome::compat::shared_ptr< ome::xml::model::PlateAcquisition > >::size_type index)
Get PlateAcquisition.
Definition: Plate.cpp:807
OMEModelObject::indexed_container< ome::xml::model::Screen, ome::compat::weak_ptr >::type::size_type sizeOfLinkedScreenList() const
Get size of linked Screen list.
Definition: Plate.cpp:847
Multi-index container for efficient ordered insertion and deletion of model object references...
Definition: OMEModelObject.h:85
ome::compat::shared_ptr< double > getWellOriginY()
Get the WellOriginY property.
Definition: Plate.cpp:552
std::vector< ome::compat::shared_ptr< ome::xml::model::Well > > & getWellList()
Get the Well list.
Definition: Plate.cpp:677
ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > columns
Columns property.
Definition: Plate.h:106
Open Microscopy Environment C++ implementation.
Definition: CoreMetadata.cpp:40
ome::compat::shared_ptr< std::string > status
Status property.
Definition: Plate.h:88
ome::compat::shared_ptr< std::string > getName()
Get the Name property.
Definition: Plate.cpp:629
void addWell(ome::compat::shared_ptr< ome::xml::model::Well > &well)
Add Well.
Definition: Plate.cpp:710
ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > getRows()
Get the Rows property.
Definition: Plate.cpp:447
bool link(ome::compat::shared_ptr< Reference > &reference, ome::compat::shared_ptr< ome::xml::model::OMEModelObject > &object)
Link a given OME model object to this model object.
Definition: Plate.cpp:395
std::string id
ID property.
Definition: Plate.h:104
void setColumns(ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > &columns)
Set the Columns property.
Definition: Plate.cpp:622
void setColumnNamingConvention(ome::compat::shared_ptr< ome::xml::model::enums::NamingConvention > &columnNamingConvention)
Set the ColumnNamingConvention property.
Definition: Plate.cpp:524
void setFieldIndex(ome::compat::shared_ptr< ome::xml::model::primitives::NonNegativeInteger > &fieldIndex)
Set the FieldIndex property.
Definition: Plate.cpp:545
ome::compat::shared_ptr< ome::xml::model::enums::NamingConvention > rowNamingConvention
RowNamingConvention property.
Definition: Plate.h:94
ome::compat::shared_ptr< std::string > getStatus()
Get the Status property.
Definition: Plate.cpp:426
ome::compat::shared_ptr< std::string > getExternalIdentifier()
Get the ExternalIdentifier property.
Definition: Plate.cpp:468
ome::compat::shared_ptr< ome::xml::model::enums::NamingConvention > columnNamingConvention
ColumnNamingConvention property.
Definition: Plate.h:96
void removePlateAcquisition(ome::compat::shared_ptr< ome::xml::model::PlateAcquisition > &plateAcquisition)
Remove PlateAcquisition.
Definition: Plate.cpp:836
ome::compat::shared_ptr< ome::xml::model::enums::NamingConvention > getColumnNamingConvention()
Get the ColumnNamingConvention property.
Definition: Plate.cpp:510
ome::compat::shared_ptr< ome::xml::model::primitives::NonNegativeInteger > getFieldIndex()
Get the FieldIndex property.
Definition: Plate.cpp:531
ome::compat::shared_ptr< double > getWellOriginX()
Get the WellOriginX property.
Definition: Plate.cpp:573
void setWellOriginX(ome::compat::shared_ptr< double > &wellOriginX)
Set the WellOriginX property.
Definition: Plate.cpp:587
bool validElementName(const std::string &name) const
Check if a given element name is valid for processing by this model object.
Definition: Plate.cpp:222
ome::compat::shared_ptr< std::string > name
Name property.
Definition: Plate.h:108
void setName(ome::compat::shared_ptr< std::string > &name)
Set the Name property.
Definition: Plate.cpp:643
bool unlinkScreen(const ome::compat::shared_ptr< ome::xml::model::Screen > &screen_BackReference)
Unlink Screen.
Definition: Plate.cpp:888
void setPlateAcquisition(std::vector< ome::compat::shared_ptr< ome::xml::model::PlateAcquisition > >::size_type index, ome::compat::shared_ptr< ome::xml::model::PlateAcquisition > &plateAcquisition)
Set PlateAcquisition.
Definition: Plate.cpp:819
std::vector< ome::compat::shared_ptr< ome::xml::model::PlateAcquisition > > & getPlateAcquisitionList()
Get the PlateAcquisition list.
Definition: Plate.cpp:795
const ome::compat::weak_ptr< ome::xml::model::Annotation > & setLinkedAnnotation(OMEModelObject::indexed_container< ome::xml::model::Annotation, ome::compat::weak_ptr >::type::size_type index, const ome::compat::shared_ptr< ome::xml::model::Annotation > &annotation)
Set linked Annotation.
Definition: Plate.cpp:747
const std::string & getXMLNamespace() const
Get the XML namespace for this model object.
Definition: Plate.cpp:1127
const ome::compat::weak_ptr< ome::xml::model::Annotation > & getLinkedAnnotation(OMEModelObject::indexed_container< ome::xml::model::Annotation, ome::compat::weak_ptr >::type::size_type index) const
Get linked Annotation.
Definition: Plate.cpp:741
ome::compat::shared_ptr< double > wellOriginY
WellOriginY property.
Definition: Plate.h:100
ome::compat::shared_ptr< std::string > externalIdentifier
ExternalIdentifier property.
Definition: Plate.h:92
OMEModelObject::indexed_container< ome::xml::model::Annotation, ome::compat::weak_ptr >::type::size_type sizeOfLinkedAnnotationList() const
Get size of linked Annotation list.
Definition: Plate.cpp:729
Xerces-C modern C++ wrapper.
Definition: Base.h:53
ome::compat::shared_ptr< ome::xml::model::Well > & getWell(std::vector< ome::compat::shared_ptr< ome::xml::model::Well > >::size_type index)
Get Well.
Definition: Plate.cpp:689
static ome::compat::shared_ptr< Plate > create(const common::xml::dom::Element &element, ome::xml::model::OMEModel &model)
Create a Plate model object from DOM element.
Definition: Plate.cpp:206