bioformats
5.1.2
|
Experiment model object. More...
#include <ome/xml/model/Experiment.h>
Public Member Functions | |
Experiment () | |
Default constructor. | |
Experiment (const Experiment ©) | |
Copy constructor. More... | |
virtual | ~Experiment () |
Destructor. | |
const std::string & | elementName () const |
Get the element name of this model object. More... | |
bool | validElementName (const std::string &name) const |
Check if a given element name is valid for processing by this model object. More... | |
virtual void | update (const common::xml::dom::Element &element, ome::xml::model::OMEModel &model) |
Update the object hierarchy recursively from an XML DOM tree. More... | |
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. More... | |
ome::compat::shared_ptr< ome::xml::model::enums::ExperimentType > | getType () |
Get the Type property. More... | |
const ome::compat::shared_ptr< ome::xml::model::enums::ExperimentType > | getType () const |
Get the Type property. More... | |
void | setType (ome::compat::shared_ptr< ome::xml::model::enums::ExperimentType > &type) |
Set the Type property. More... | |
const std::string & | getID () const |
Get the ID property. More... | |
void | setID (const std::string &id) |
Set the ID property. More... | |
ome::compat::shared_ptr< std::string > | getDescription () |
Get the Description property. More... | |
const ome::compat::shared_ptr< std::string > | getDescription () const |
Get the Description property. More... | |
void | setDescription (ome::compat::shared_ptr< std::string > &description) |
Set the Description property. More... | |
ome::compat::weak_ptr< ome::xml::model::Experimenter > | getLinkedExperimenter () |
Get linked Experimenter. More... | |
const ome::compat::weak_ptr< ome::xml::model::Experimenter > | getLinkedExperimenter () const |
Get linked Experimenter. More... | |
void | linkExperimenter (ome::compat::shared_ptr< ome::xml::model::Experimenter > &experimenter) |
Link Experimenter. More... | |
void | unlinkExperimenter (ome::compat::shared_ptr< ome::xml::model::Experimenter > &experimenter) |
Unlink Experimenter. More... | |
std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > >::size_type | sizeOfMicrobeamManipulationList () const |
Get size of linked MicrobeamManipulation list. More... | |
std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > > & | getMicrobeamManipulationList () |
Get the MicrobeamManipulation list. More... | |
const std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > > & | getMicrobeamManipulationList () const |
Get the MicrobeamManipulation list. More... | |
ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > & | getMicrobeamManipulation (std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > >::size_type index) |
Get MicrobeamManipulation. More... | |
const ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > & | getMicrobeamManipulation (std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > >::size_type index) const |
Get MicrobeamManipulation. More... | |
void | setMicrobeamManipulation (std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > µbeamManipulation) |
Set MicrobeamManipulation. More... | |
void | addMicrobeamManipulation (ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > µbeamManipulation) |
Add MicrobeamManipulation. More... | |
void | removeMicrobeamManipulation (ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > µbeamManipulation) |
Remove MicrobeamManipulation. More... | |
OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type::size_type | sizeOfLinkedImageList () const |
Get size of linked Image list. More... | |
OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type | getLinkedImageList () const |
Get the linked Image list. More... | |
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. More... | |
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. More... | |
bool | linkImage (const ome::compat::shared_ptr< ome::xml::model::Image > &image_BackReference) |
Link Image. More... | |
bool | unlinkImage (const ome::compat::shared_ptr< ome::xml::model::Image > &image_BackReference) |
Unlink Image. More... | |
virtual common::xml::dom::Element | asXMLElement (common::xml::dom::Document &document) const |
Transform the object hierarchy rooted at this element to XML. More... | |
const std::string & | getXMLNamespace () const |
Get the XML namespace for this model object. More... | |
![]() | |
virtual | ~OMEModelObject () |
Destructor. | |
virtual void | update (const common::xml::dom::Element &element,::ome::xml::model::OMEModel &model) |
Update the object hierarchy recursively from an XML DOM tree. More... | |
virtual 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. More... | |
![]() | |
virtual bool | link (ome::compat::shared_ptr< Reference > &reference, ome::compat::shared_ptr< OMEModelObject > &object)=0 |
Link a given OME model object to this model object. More... | |
Static Public Member Functions | |
static ome::compat::shared_ptr< Experiment > | create (const common::xml::dom::Element &element, ome::xml::model::OMEModel &model) |
Create a Experiment model object from DOM element. More... | |
![]() | |
static std::vector< common::xml::dom::Element > | getChildrenByTagName (const common::xml::dom::Element &parent, const std::string &name) |
Retrieve all the children of an element that have a given tag name. More... | |
static std::string | stripNamespacePrefix (const std::string &value) |
Strip the namespace prefix from a tag name. More... | |
Protected Member Functions | |
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. More... | |
![]() | |
OMEModelObject (const std::string &objectType="OMEModelObject") | |
Constructor. | |
OMEModelObject (const OMEModelObject ©) | |
Copy constructor. More... | |
template<class C , typename T > | |
bool | contains (const C &container, const ome::compat::shared_ptr< T > &element) |
Check if a container contains a particular element. More... | |
![]() | |
OMEModelObject () | |
Constructor. | |
Private Attributes | |
ome::compat::shared_ptr< ome::xml::model::enums::ExperimentType > | type |
Type property. | |
std::string | id |
ID property. | |
ome::compat::shared_ptr< std::string > | description |
Description property. | |
ome::compat::weak_ptr< ome::xml::model::Experimenter > | experimenter |
ExperimenterRef reference. | |
std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > > | microbeamManipulations |
MicrobeamManipulation property (occurs more than once) | |
OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type | images |
Image_BackReference back reference (occurs more than once) | |
Additional Inherited Members | |
![]() | |
ome::common::Logger | logger |
Message logger. | |
Experiment model object.
ome::xml::model::Experiment::Experiment | ( | const Experiment & | copy | ) |
Copy constructor.
copy | the Experiment to copy. |
void ome::xml::model::Experiment::addMicrobeamManipulation | ( | ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > & | microbeamManipulation | ) |
microbeamManipulation | the MicrobeamManipulation to add. |
Return list position?
Detect and handle duplicates?
References microbeamManipulations.
Referenced by update().
|
virtual |
Transform the object hierarchy rooted at this element to XML.
document | document for element creation |
Implements ome::xml::model::OMEModelObject.
References asXMLElementInternal(), and ome::common::xml::dom::Document::createElementNS().
|
protectedvirtual |
Transform the object hierarchy rooted at this element to XML.
This internal implementation of asXMLelement also requires an XML element, which must not be null, or may be instantiated and passed from superclasses.
document | XML document for element creation. |
element | XML element for setting model data. |
Implements ome::xml::model::detail::OMEModelObject.
References ome::common::xml::dom::Node::appendChild(), ome::xml::model::detail::OMEModelObject::asXMLElementInternal(), ome::common::xml::dom::Document::createElementNS(), description, experimenter, id, microbeamManipulations, ome::common::xml::dom::Element::setAttribute(), and type.
Referenced by asXMLElement().
|
static |
Create a Experiment model object from DOM element.
element | root of the XML DOM tree to from which to construct the model object graph. |
model | handler for the OME model used to track instances and references seen during the update. |
EnumerationException | if there is an error instantiating an enumeration during model object creation, or ModelException if there are any consistency or validity errors found during processing. |
Referenced by ome::xml::model::OME::update().
|
virtual |
Get the element name of this model object.
This will be the most-derived class name.
Implements ome::xml::model::OMEModelObject.
References type.
ome::compat::shared_ptr< std::string > ome::xml::model::Experiment::getDescription | ( | ) |
const ome::compat::shared_ptr< std::string > ome::xml::model::Experiment::getDescription | ( | ) | const |
const std::string & ome::xml::model::Experiment::getID | ( | ) | const |
ome::compat::weak_ptr< ome::xml::model::Experimenter > ome::xml::model::Experiment::getLinkedExperimenter | ( | ) |
Get linked Experimenter.
References experimenter.
const ome::compat::weak_ptr< ome::xml::model::Experimenter > ome::xml::model::Experiment::getLinkedExperimenter | ( | ) | const |
Get linked Experimenter.
References experimenter.
const ome::compat::weak_ptr< ome::xml::model::Image > & ome::xml::model::Experiment::getLinkedImage | ( | OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type::size_type | index | ) | const |
OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type ome::xml::model::Experiment::getLinkedImageList | ( | ) | const |
ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > & ome::xml::model::Experiment::getMicrobeamManipulation | ( | std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > >::size_type | index | ) |
index | the index number of the MicrobeamManipulation. |
std::out_of_range | if the index is invalid. |
References microbeamManipulations.
const ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > & ome::xml::model::Experiment::getMicrobeamManipulation | ( | std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > >::size_type | index | ) | const |
index | the index number of the MicrobeamManipulation. |
std::out_of_range | if the index is invalid. |
References microbeamManipulations.
std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > > & ome::xml::model::Experiment::getMicrobeamManipulationList | ( | ) |
Get the MicrobeamManipulation list.
References microbeamManipulations.
const std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > > & ome::xml::model::Experiment::getMicrobeamManipulationList | ( | ) | const |
Get the MicrobeamManipulation list.
References microbeamManipulations.
ome::compat::shared_ptr< ome::xml::model::enums::ExperimentType > ome::xml::model::Experiment::getType | ( | ) |
const ome::compat::shared_ptr< ome::xml::model::enums::ExperimentType > ome::xml::model::Experiment::getType | ( | ) | const |
|
virtual |
Get the XML namespace for this model object.
Implements ome::xml::model::OMEModelObject.
bool ome::xml::model::Experiment::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.
reference | type qualifier for the reference. This should be the corresponding reference type for object. If, for example, object is of type Image, reference must be of type ImageRef. |
object | Model object to link to. |
true
if this model object was able to handle the reference, otherwise false
.References experimenter, ome::xml::model::detail::OMEModelObject::link(), ome::xml::model::Experimenter::linkExperiment(), and ome::xml::model::detail::OMEModelObject::logger.
void ome::xml::model::Experiment::linkExperimenter | ( | ome::compat::shared_ptr< ome::xml::model::Experimenter > & | experimenter | ) |
bool ome::xml::model::Experiment::linkImage | ( | const ome::compat::shared_ptr< ome::xml::model::Image > & | image_BackReference | ) |
Link Image.
image_BackReference | the Image to link. |
true
if the object was added to the internal images list, otherwise false
.Referenced by ome::xml::model::Image::link().
void ome::xml::model::Experiment::removeMicrobeamManipulation | ( | ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > & | microbeamManipulation | ) |
Remove MicrobeamManipulation.
microbeamManipulation | the MicrobeamManipulation to remove. |
Doesn't the removal break the indexing?
Does the removal deal with multiple instances; we aren't preventing duplicates on insertion.
References microbeamManipulations.
void ome::xml::model::Experiment::setDescription | ( | ome::compat::shared_ptr< std::string > & | description | ) |
Set the Description property.
description | the value to set. |
References description.
Referenced by update().
void ome::xml::model::Experiment::setID | ( | const std::string & | id | ) |
const ome::compat::weak_ptr< ome::xml::model::Image > & ome::xml::model::Experiment::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 | ||
) |
void ome::xml::model::Experiment::setMicrobeamManipulation | ( | std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > >::size_type | index, |
ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > & | microbeamManipulation | ||
) |
index | the index number of the MicrobeamManipulation. |
microbeamManipulation | the MicrobeamManipulation to set. |
std::out_of_range | if the index is invalid. |
References microbeamManipulations.
void ome::xml::model::Experiment::setType | ( | ome::compat::shared_ptr< ome::xml::model::enums::ExperimentType > & | type | ) |
OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type::size_type ome::xml::model::Experiment::sizeOfLinkedImageList | ( | ) | const |
std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > >::size_type ome::xml::model::Experiment::sizeOfMicrobeamManipulationList | ( | ) | const |
Get size of linked MicrobeamManipulation list.
References microbeamManipulations.
void ome::xml::model::Experiment::unlinkExperimenter | ( | ome::compat::shared_ptr< ome::xml::model::Experimenter > & | experimenter | ) |
Unlink Experimenter.
experimenter | the Experimenter to unlink. |
link(0)
internally. bool ome::xml::model::Experiment::unlinkImage | ( | const ome::compat::shared_ptr< ome::xml::model::Image > & | image_BackReference | ) |
Unlink Image.
image_BackReference | the Image to unlink. |
true
if the Image was unlinked, otherwise false
if the Image was not linked and could hence not be unlinked.Does the return value serve any useful purpose? Is this also inherited Java API?
Doesn't the removal break the indexing?
Does the removal deal with multiple instances; we aren't preventing duplicates on insertion.
References images.
|
virtual |
Update the object hierarchy recursively from an XML DOM tree.
element | root of the XML DOM tree to from which to construct the model object graph. |
model | handler for the OME model used to track instances and references seen during the update. |
EnumerationException | if there is an error instantiating an enumeration during model object creation, or ModelException if there are any consistency or validity errors found during processing. |
Implements ome::xml::model::OMEModelObject.
References addMicrobeamManipulation(), ome::xml::model::OMEModel::addModelObject(), ome::xml::model::OMEModel::addReference(), ome::xml::model::MicrobeamManipulation::create(), ome::common::xml::dom::Element::getAttribute(), ome::xml::model::detail::OMEModelObject::getChildrenByTagName(), getID(), ome::common::xml::dom::Element::getTagName(), ome::common::xml::dom::Element::hasAttribute(), ome::xml::model::detail::OMEModelObject::logger, setDescription(), setID(), setType(), ome::xml::model::detail::OMEModelObject::stripNamespacePrefix(), ome::xml::model::detail::OMEModelObject::update(), and validElementName().
|
virtual |
Check if a given element name is valid for processing by this model object.
Used for processing nodes when interitance is involved.
name | the element name to check. |
true
if valid, false
if invalid. Implements ome::xml::model::detail::OMEModelObject.
References ome::xml::model::detail::OMEModelObject::validElementName().
Referenced by update().