46 #ifndef OME_XML_MODEL_MICROBEAMMANIPULATION_H 47 #define OME_XML_MODEL_MICROBEAMMANIPULATION_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/primitives/Quantity.h> 64 #include <ome/xml/model/Experiment.h> 65 #include <ome/xml/model/Experimenter.h> 66 #include <ome/xml/model/detail/OMEModelObject.h> 67 #include <ome/xml/model/enums/MicrobeamManipulationType.h> 78 class LightSourceSettings;
90 ome::compat::shared_ptr<Impl>
impl;
121 static ome::compat::shared_ptr< MicrobeamManipulation>
151 link (ome::compat::shared_ptr<Reference>& reference,
152 ome::compat::shared_ptr< ome::xml::model::OMEModelObject>&
object);
159 ome::compat::shared_ptr<ome::xml::model::enums::MicrobeamManipulationType>
167 const ome::compat::shared_ptr<ome::xml::model::enums::MicrobeamManipulationType>
176 setType (ome::compat::shared_ptr<ome::xml::model::enums::MicrobeamManipulationType>& type);
192 setID (
const std::string&
id);
199 ome::compat::shared_ptr<std::string>
207 const ome::compat::shared_ptr<std::string>
216 setDescription (ome::compat::shared_ptr<std::string>& description);
241 const ome::compat::weak_ptr<ome::xml::model::ROI>&
254 const ome::compat::weak_ptr<ome::xml::model::ROI>&
256 const ome::compat::shared_ptr<ome::xml::model::ROI>& roi);
269 linkROI (
const ome::compat::shared_ptr<ome::xml::model::ROI>& roi);
287 unlinkROI (
const ome::compat::shared_ptr<ome::xml::model::ROI>& roi);
295 ome::compat::weak_ptr<ome::xml::model::Experimenter>
304 const ome::compat::weak_ptr<ome::xml::model::Experimenter>
313 linkExperimenter (ome::compat::shared_ptr<ome::xml::model::Experimenter>& experimenter);
325 unlinkExperimenter (ome::compat::shared_ptr<ome::xml::model::Experimenter>& experimenter);
332 std::vector<ome::compat::shared_ptr<ome::xml::model::LightSourceSettings> >::size_type
341 std::vector<ome::compat::shared_ptr<ome::xml::model::LightSourceSettings> >&
350 const std::vector<ome::compat::shared_ptr<ome::xml::model::LightSourceSettings> >&
360 ome::compat::shared_ptr<ome::xml::model::LightSourceSettings>&
361 getLightSourceSettings (std::vector<ome::compat::shared_ptr<ome::xml::model::LightSourceSettings> >::size_type index);
370 const ome::compat::shared_ptr<ome::xml::model::LightSourceSettings>&
371 getLightSourceSettings (std::vector<ome::compat::shared_ptr<ome::xml::model::LightSourceSettings> >::size_type index)
const;
381 setLightSourceSettings (std::vector<ome::compat::shared_ptr<ome::xml::model::LightSourceSettings> >::size_type index,
382 ome::compat::shared_ptr<ome::xml::model::LightSourceSettings>& lightSourceSettings);
393 addLightSourceSettings (ome::compat::shared_ptr<ome::xml::model::LightSourceSettings>& lightSourceSettings);
430 const ome::compat::weak_ptr<ome::xml::model::Image>&
443 const ome::compat::weak_ptr<ome::xml::model::Image>&
445 const ome::compat::shared_ptr<ome::xml::model::Image>& image_BackReference);
458 linkImage (
const ome::compat::shared_ptr<ome::xml::model::Image>& image_BackReference);
476 unlinkImage (
const ome::compat::shared_ptr<ome::xml::model::Image>& image_BackReference);
483 ome::compat::weak_ptr<ome::xml::model::Experiment>
491 const ome::compat::weak_ptr<ome::xml::model::Experiment>
500 setExperiment (ome::compat::weak_ptr<ome::xml::model::Experiment>& experiment_BackReference);
523 #endif // OME_XML_MODEL_MICROBEAMMANIPULATION_H OME model interface (abstract top-level container)
Definition: OMEModel.h:62
ome::compat::weak_ptr< ome::xml::model::Experiment > getExperiment()
Get the Experiment property.
Definition: MicrobeamManipulation.cpp:601
ome::compat::shared_ptr< ome::xml::model::LightSourceSettings > & getLightSourceSettings(std::vector< ome::compat::shared_ptr< ome::xml::model::LightSourceSettings > >::size_type index)
Get LightSourceSettings.
Definition: MicrobeamManipulation.cpp:503
const std::string & getID() const
Get the ID property.
Definition: MicrobeamManipulation.cpp:361
OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type getLinkedImageList() const
Get the linked Image list.
Definition: MicrobeamManipulation.cpp:549
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: MicrobeamManipulation.cpp:628
bool linkROI(const ome::compat::shared_ptr< ome::xml::model::ROI > &roi)
Link ROI.
Definition: MicrobeamManipulation.cpp:424
void setExperiment(ome::compat::weak_ptr< ome::xml::model::Experiment > &experiment_BackReference)
Set the Experiment property.
Definition: MicrobeamManipulation.cpp:615
std::vector< ome::compat::shared_ptr< ome::xml::model::LightSourceSettings > > & getLightSourceSettingsList()
Get the LightSourceSettings list.
Definition: MicrobeamManipulation.cpp:491
OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type::size_type sizeOfLinkedImageList() const
Get size of linked Image list.
Definition: MicrobeamManipulation.cpp:543
const ome::compat::weak_ptr< ome::xml::model::ROI > & getLinkedROI(OMEModelObject::indexed_container< ome::xml::model::ROI, ome::compat::weak_ptr >::type::size_type index) const
Get linked ROI.
Definition: MicrobeamManipulation.cpp:408
void unlinkExperimenter(ome::compat::shared_ptr< ome::xml::model::Experimenter > &experimenter)
Unlink Experimenter.
Definition: MicrobeamManipulation.cpp:475
const ome::compat::weak_ptr< ome::xml::model::ROI > & setLinkedROI(OMEModelObject::indexed_container< ome::xml::model::ROI, ome::compat::weak_ptr >::type::size_type index, const ome::compat::shared_ptr< ome::xml::model::ROI > &roi)
Set linked ROI.
Definition: MicrobeamManipulation.cpp:414
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
void removeLightSourceSettings(ome::compat::shared_ptr< ome::xml::model::LightSourceSettings > &lightSourceSettings)
Remove LightSourceSettings.
Definition: MicrobeamManipulation.cpp:532
virtual ~MicrobeamManipulation()
Destructor.
Definition: MicrobeamManipulation.cpp:183
ome::compat::shared_ptr< ome::xml::model::enums::MicrobeamManipulationType > getType()
Get the Type property.
Definition: MicrobeamManipulation.cpp:340
const ome::compat::weak_ptr< ome::xml::model::Image > & getLinkedImage(OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type::size_type index) const
Get linked Image.
Definition: MicrobeamManipulation.cpp:555
Multi-index container for efficient ordered insertion and deletion of model object references...
Definition: OMEModelObject.h:85
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: MicrobeamManipulation.cpp:298
Open Microscopy Environment C++ implementation.
bool unlinkROI(const ome::compat::shared_ptr< ome::xml::model::ROI > &roi)
Unlink ROI.
Definition: MicrobeamManipulation.cpp:438
const std::string & elementName() const
Get the element name of this model object.
Definition: MicrobeamManipulation.cpp:197
bool unlinkImage(const ome::compat::shared_ptr< ome::xml::model::Image > &image_BackReference)
Unlink Image.
Definition: MicrobeamManipulation.cpp:584
ome::compat::weak_ptr< ome::xml::model::Experimenter > getLinkedExperimenter()
Get linked Experimenter.
Definition: MicrobeamManipulation.cpp:456
OMEModelObject::indexed_container< ome::xml::model::ROI, ome::compat::weak_ptr >::type::size_type sizeOfLinkedROIList() const
Get size of linked ROI list.
Definition: MicrobeamManipulation.cpp:396
MicrobeamManipulation()
Default constructor.
Definition: MicrobeamManipulation.cpp:168
bool validElementName(const std::string &name) const
Check if a given element name is valid for processing by this model object.
Definition: MicrobeamManipulation.cpp:204
MicrobeamManipulation model object.
Definition: MicrobeamManipulation.h:85
const ome::compat::weak_ptr< ome::xml::model::Image > & setLinkedImage(OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type::size_type index, const ome::compat::shared_ptr< ome::xml::model::Image > &image_BackReference)
Set linked Image.
Definition: MicrobeamManipulation.cpp:561
OMEModelObject::indexed_container< ome::xml::model::ROI, ome::compat::weak_ptr >::type getLinkedROIList() const
Get the linked ROI list.
Definition: MicrobeamManipulation.cpp:402
void addLightSourceSettings(ome::compat::shared_ptr< ome::xml::model::LightSourceSettings > &lightSourceSettings)
Add LightSourceSettings.
Definition: MicrobeamManipulation.cpp:524
static ome::compat::shared_ptr< MicrobeamManipulation > create(const common::xml::dom::Element &element, ome::xml::model::OMEModel &model)
Create a MicrobeamManipulation model object from DOM element.
Definition: MicrobeamManipulation.cpp:188
void setType(ome::compat::shared_ptr< ome::xml::model::enums::MicrobeamManipulationType > &type)
Set the Type property.
Definition: MicrobeamManipulation.cpp:354
Private implementation details of MicrobeamManipulation model object.
Definition: MicrobeamManipulation.cpp:80
const std::string & getXMLNamespace() const
Get the XML namespace for this model object.
Definition: MicrobeamManipulation.cpp:737
virtual common::xml::dom::Element asXMLElement(common::xml::dom::Document &document) const
Transform the object hierarchy rooted at this element to XML.
Definition: MicrobeamManipulation.cpp:621
void setLightSourceSettings(std::vector< ome::compat::shared_ptr< ome::xml::model::LightSourceSettings > >::size_type index, ome::compat::shared_ptr< ome::xml::model::LightSourceSettings > &lightSourceSettings)
Set LightSourceSettings.
Definition: MicrobeamManipulation.cpp:515
std::vector< ome::compat::shared_ptr< ome::xml::model::LightSourceSettings > >::size_type sizeOfLightSourceSettingsList() const
Get size of linked LightSourceSettings list.
Definition: MicrobeamManipulation.cpp:485
void setDescription(ome::compat::shared_ptr< std::string > &description)
Set the Description property.
Definition: MicrobeamManipulation.cpp:389
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: MicrobeamManipulation.cpp:212
ome::compat::shared_ptr< Impl > impl
Private implementation details.
Definition: MicrobeamManipulation.h:88
MicrobeamManipulation & operator=(const MicrobeamManipulation &)
Assignment operator (deleted).
void setID(const std::string &id)
Set the ID property.
Definition: MicrobeamManipulation.cpp:368
bool linkImage(const ome::compat::shared_ptr< ome::xml::model::Image > &image_BackReference)
Link Image.
Definition: MicrobeamManipulation.cpp:571
void linkExperimenter(ome::compat::shared_ptr< ome::xml::model::Experimenter > &experimenter)
Link Experimenter.
Definition: MicrobeamManipulation.cpp:469
ome::compat::shared_ptr< std::string > getDescription()
Get the Description property.
Definition: MicrobeamManipulation.cpp:375