46 #ifndef OME_XML_MODEL_EXPERIMENT_H 
   47 #define OME_XML_MODEL_EXPERIMENT_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/Experimenter.h> 
   63 #include <ome/xml/model/detail/OMEModelObject.h> 
   64 #include <ome/xml/model/enums/ExperimentType.h> 
   75       class MicrobeamManipulation;
 
   85         ome::compat::shared_ptr<ome::xml::model::enums::ExperimentType> 
type;
 
  128         static ome::compat::shared_ptr< Experiment>
 
  153         link (ome::compat::shared_ptr<Reference>& reference,
 
  154               ome::compat::shared_ptr< ome::xml::model::OMEModelObject>& 
object);
 
  161         ome::compat::shared_ptr<ome::xml::model::enums::ExperimentType>
 
  169         const ome::compat::shared_ptr<ome::xml::model::enums::ExperimentType>
 
  178         setType (ome::compat::shared_ptr<ome::xml::model::enums::ExperimentType>& type);
 
  194         setID (
const std::string& 
id);
 
  201         ome::compat::shared_ptr<std::string>
 
  209         const ome::compat::shared_ptr<std::string>
 
  218         setDescription (ome::compat::shared_ptr<std::string>& description);
 
  226         ome::compat::weak_ptr<ome::xml::model::Experimenter>
 
  235         const ome::compat::weak_ptr<ome::xml::model::Experimenter>
 
  244         linkExperimenter (ome::compat::shared_ptr<ome::xml::model::Experimenter>& experimenter);
 
  256         unlinkExperimenter (ome::compat::shared_ptr<ome::xml::model::Experimenter>& experimenter);
 
  263         std::vector<ome::compat::shared_ptr<ome::xml::model::MicrobeamManipulation> >::size_type
 
  272         std::vector<ome::compat::shared_ptr<ome::xml::model::MicrobeamManipulation> >&
 
  281         const std::vector<ome::compat::shared_ptr<ome::xml::model::MicrobeamManipulation> >&
 
  291         ome::compat::shared_ptr<ome::xml::model::MicrobeamManipulation>&
 
  292         getMicrobeamManipulation (std::vector<ome::compat::shared_ptr<ome::xml::model::MicrobeamManipulation> >::size_type index);
 
  301         const ome::compat::shared_ptr<ome::xml::model::MicrobeamManipulation>&
 
  302         getMicrobeamManipulation (std::vector<ome::compat::shared_ptr<ome::xml::model::MicrobeamManipulation> >::size_type index) 
const;
 
  312         setMicrobeamManipulation (std::vector<ome::compat::shared_ptr<ome::xml::model::MicrobeamManipulation> >::size_type index,
 
  313                                ome::compat::shared_ptr<ome::xml::model::MicrobeamManipulation>& microbeamManipulation);
 
  361         const ome::compat::weak_ptr<ome::xml::model::Image>&
 
  374         const ome::compat::weak_ptr<ome::xml::model::Image>&
 
  376                                      const ome::compat::shared_ptr<ome::xml::model::Image>& image_BackReference);
 
  389         linkImage (
const ome::compat::shared_ptr<ome::xml::model::Image>& image_BackReference);
 
  407         unlinkImage (
const ome::compat::shared_ptr<ome::xml::model::Image>& image_BackReference);
 
  431 #endif // OME_XML_MODEL_EXPERIMENT_H 
std::string id
ID property. 
Definition: Experiment.h:87
ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > & getMicrobeamManipulation(std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > >::size_type index)
Get MicrobeamManipulation. 
Definition: Experiment.cpp:381
OME model interface (abstract top-level container) 
Definition: OMEModel.h:62
void addMicrobeamManipulation(ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > µbeamManipulation)
Add MicrobeamManipulation. 
Definition: Experiment.cpp:402
OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type getLinkedImageList() const 
Get the linked Image list. 
Definition: Experiment.cpp:427
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: Experiment.cpp:439
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: Experiment.cpp:179
OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type images
Image_BackReference back reference (occurs more than once) 
Definition: Experiment.h:95
ome::compat::shared_ptr< std::string > description
Description property. 
Definition: Experiment.h:89
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. 
Definition: Experiment.cpp:154
const std::string & getXMLNamespace() const 
Get the XML namespace for this model object. 
Definition: Experiment.cpp:571
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
void setType(ome::compat::shared_ptr< ome::xml::model::enums::ExperimentType > &type)
Set the Type property. 
Definition: Experiment.cpp:292
void linkExperimenter(ome::compat::shared_ptr< ome::xml::model::Experimenter > &experimenter)
Link Experimenter. 
Definition: Experiment.cpp:347
bool validElementName(const std::string &name) const 
Check if a given element name is valid for processing by this model object. 
Definition: Experiment.cpp:170
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: Experiment.cpp:252
ome::compat::shared_ptr< ome::xml::model::enums::ExperimentType > getType()
Get the Type property. 
Definition: Experiment.cpp:278
const std::string & getID() const 
Get the ID property. 
Definition: Experiment.cpp:299
OMEModelObject::indexed_container< ome::xml::model::Image, ome::compat::weak_ptr >::type::size_type sizeOfLinkedImageList() const 
Get size of linked Image list. 
Definition: Experiment.cpp:421
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: Experiment.cpp:433
std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > >::size_type sizeOfMicrobeamManipulationList() const 
Get size of linked MicrobeamManipulation list. 
Definition: Experiment.cpp:363
void removeMicrobeamManipulation(ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > µbeamManipulation)
Remove MicrobeamManipulation. 
Definition: Experiment.cpp:410
Experiment model object. 
Definition: Experiment.h:81
Multi-index container for efficient ordered insertion and deletion of model object references...
Definition: OMEModelObject.h:85
ome::compat::shared_ptr< std::string > getDescription()
Get the Description property. 
Definition: Experiment.cpp:313
void setID(const std::string &id)
Set the ID property. 
Definition: Experiment.cpp:306
Open Microscopy Environment C++ implementation. 
Definition: CoreMetadata.cpp:40
bool unlinkImage(const ome::compat::shared_ptr< ome::xml::model::Image > &image_BackReference)
Unlink Image. 
Definition: Experiment.cpp:462
ome::compat::weak_ptr< ome::xml::model::Experimenter > experimenter
ExperimenterRef reference. 
Definition: Experiment.h:91
std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > > microbeamManipulations
MicrobeamManipulation property (occurs more than once) 
Definition: Experiment.h:93
void unlinkExperimenter(ome::compat::shared_ptr< ome::xml::model::Experimenter > &experimenter)
Unlink Experimenter. 
Definition: Experiment.cpp:353
bool linkImage(const ome::compat::shared_ptr< ome::xml::model::Image > &image_BackReference)
Link Image. 
Definition: Experiment.cpp:449
void setDescription(ome::compat::shared_ptr< std::string > &description)
Set the Description property. 
Definition: Experiment.cpp:327
ome::compat::shared_ptr< ome::xml::model::enums::ExperimentType > type
Type property. 
Definition: Experiment.h:85
Experiment()
Default constructor. 
Definition: Experiment.cpp:120
ome::compat::weak_ptr< ome::xml::model::Experimenter > getLinkedExperimenter()
Get linked Experimenter. 
Definition: Experiment.cpp:334
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: Experiment.cpp:486
virtual ~Experiment()
Destructor. 
Definition: Experiment.cpp:149
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. 
Definition: Experiment.cpp:393
std::vector< ome::compat::shared_ptr< ome::xml::model::MicrobeamManipulation > > & getMicrobeamManipulationList()
Get the MicrobeamManipulation list. 
Definition: Experiment.cpp:369
virtual common::xml::dom::Element asXMLElement(common::xml::dom::Document &document) const 
Transform the object hierarchy rooted at this element to XML. 
Definition: Experiment.cpp:479
const std::string & elementName() const 
Get the element name of this model object. 
Definition: Experiment.cpp:163
Xerces-C modern C++ wrapper. 
Definition: Base.h:53