bioformats  5.1.0
Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | List of all members
ome::xml::model::Laser Class Reference

Laser model object. More...

#include <ome/xml/model/Laser.h>

+ Inheritance diagram for ome::xml::model::Laser:
+ Collaboration diagram for ome::xml::model::Laser:

Public Member Functions

 Laser ()
 Default constructor.
 
 Laser (const Laser &copy)
 Copy constructor. More...
 
virtual ~Laser ()
 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< bool > getPockelCell ()
 Get the PockelCell property. More...
 
const ome::compat::shared_ptr< bool > getPockelCell () const
 Get the PockelCell property. More...
 
void setPockelCell (ome::compat::shared_ptr< bool > &pockelCell)
 Set the PockelCell property. More...
 
ome::compat::shared_ptr< ome::xml::model::enums::PulsegetPulse ()
 Get the Pulse property. More...
 
const ome::compat::shared_ptr< ome::xml::model::enums::PulsegetPulse () const
 Get the Pulse property. More...
 
void setPulse (ome::compat::shared_ptr< ome::xml::model::enums::Pulse > &pulse)
 Set the Pulse property. More...
 
ome::compat::shared_ptr< ome::xml::model::enums::LaserMediumgetLaserMedium ()
 Get the LaserMedium property. More...
 
const ome::compat::shared_ptr< ome::xml::model::enums::LaserMediumgetLaserMedium () const
 Get the LaserMedium property. More...
 
void setLaserMedium (ome::compat::shared_ptr< ome::xml::model::enums::LaserMedium > &laserMedium)
 Set the LaserMedium property. More...
 
ome::compat::shared_ptr< bool > getTuneable ()
 Get the Tuneable property. More...
 
const ome::compat::shared_ptr< bool > getTuneable () const
 Get the Tuneable property. More...
 
void setTuneable (ome::compat::shared_ptr< bool > &tuneable)
 Set the Tuneable property. More...
 
ome::compat::shared_ptr< ome::xml::model::primitives::PositiveIntegergetWavelength ()
 Get the Wavelength property. More...
 
const ome::compat::shared_ptr< ome::xml::model::primitives::PositiveIntegergetWavelength () const
 Get the Wavelength property. More...
 
void setWavelength (ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > &wavelength)
 Set the Wavelength property. More...
 
ome::compat::shared_ptr< ome::xml::model::primitives::PositiveIntegergetFrequencyMultiplication ()
 Get the FrequencyMultiplication property. More...
 
const ome::compat::shared_ptr< ome::xml::model::primitives::PositiveIntegergetFrequencyMultiplication () const
 Get the FrequencyMultiplication property. More...
 
void setFrequencyMultiplication (ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > &frequencyMultiplication)
 Set the FrequencyMultiplication property. More...
 
ome::compat::shared_ptr< ome::xml::model::enums::LaserTypegetType ()
 Get the Type property. More...
 
const ome::compat::shared_ptr< ome::xml::model::enums::LaserTypegetType () const
 Get the Type property. More...
 
void setType (ome::compat::shared_ptr< ome::xml::model::enums::LaserType > &type)
 Set the Type property. More...
 
ome::compat::shared_ptr< double > getRepetitionRate ()
 Get the RepetitionRate property. More...
 
const ome::compat::shared_ptr< double > getRepetitionRate () const
 Get the RepetitionRate property. More...
 
void setRepetitionRate (ome::compat::shared_ptr< double > &repetitionRate)
 Set the RepetitionRate property. More...
 
ome::compat::weak_ptr< ome::xml::model::LightSourcegetLinkedPump ()
 Get linked Pump. More...
 
const ome::compat::weak_ptr< ome::xml::model::LightSourcegetLinkedPump () const
 Get linked Pump. More...
 
void linkPump (ome::compat::shared_ptr< ome::xml::model::LightSource > &pump)
 Link Pump. More...
 
void unlinkPump (ome::compat::shared_ptr< ome::xml::model::LightSource > &pump)
 Unlink Pump. More...
 
const std::string & getLightSourceType () const
 Get the LightSource type. 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...
 
- Public Member Functions inherited from ome::xml::model::LightSource
 LightSource ()
 Default constructor.
 
 LightSource (const LightSource &copy)
 Copy constructor. More...
 
virtual ~LightSource ()
 Destructor.
 
bool validElementName (const std::string &name) const
 Check if a given element name is valid for processing by this model object. 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...
 
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< double > getPower ()
 Get the Power property. More...
 
const ome::compat::shared_ptr< double > getPower () const
 Get the Power property. More...
 
void setPower (ome::compat::shared_ptr< double > &power)
 Set the Power property. More...
 
ome::compat::weak_ptr< ome::xml::model::InstrumentgetInstrument ()
 Get the Instrument property. More...
 
const ome::compat::weak_ptr< ome::xml::model::InstrumentgetInstrument () const
 Get the Instrument property. More...
 
void setInstrument (ome::compat::weak_ptr< ome::xml::model::Instrument > &instrument_BackReference)
 Set the Instrument property. More...
 
const std::string & getXMLNamespace () const
 Get the XML namespace for this model object. More...
 
- Public Member Functions inherited from ome::xml::model::ManufacturerSpec
 ManufacturerSpec ()
 Default constructor.
 
 ManufacturerSpec (const ManufacturerSpec &copy)
 Copy constructor. More...
 
virtual ~ManufacturerSpec ()
 Destructor.
 
bool validElementName (const std::string &name) const
 Check if a given element name is valid for processing by this model object. 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< std::string > getLotNumber ()
 Get the LotNumber property. More...
 
const ome::compat::shared_ptr< std::string > getLotNumber () const
 Get the LotNumber property. More...
 
void setLotNumber (ome::compat::shared_ptr< std::string > &lotNumber)
 Set the LotNumber property. More...
 
ome::compat::shared_ptr< std::string > getModel ()
 Get the Model property. More...
 
const ome::compat::shared_ptr< std::string > getModel () const
 Get the Model property. More...
 
void setModel (ome::compat::shared_ptr< std::string > &model)
 Set the Model property. More...
 
ome::compat::shared_ptr< std::string > getSerialNumber ()
 Get the SerialNumber property. More...
 
const ome::compat::shared_ptr< std::string > getSerialNumber () const
 Get the SerialNumber property. More...
 
void setSerialNumber (ome::compat::shared_ptr< std::string > &serialNumber)
 Set the SerialNumber property. More...
 
ome::compat::shared_ptr< std::string > getManufacturer ()
 Get the Manufacturer property. More...
 
const ome::compat::shared_ptr< std::string > getManufacturer () const
 Get the Manufacturer property. More...
 
void setManufacturer (ome::compat::shared_ptr< std::string > &manufacturer)
 Set the Manufacturer property. More...
 
const std::string & getXMLNamespace () const
 Get the XML namespace for this model object. More...
 
- Public Member Functions inherited from ome::xml::model::detail::OMEModelObject
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...
 
- Public Member Functions inherited from ome::xml::model::OMEModelObject
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< Lasercreate (const common::xml::dom::Element &element, ome::xml::model::OMEModel &model)
 Create a Laser model object from DOM element. More...
 
- Static Public Member Functions inherited from ome::xml::model::detail::OMEModelObject
static std::vector< common::xml::dom::ElementgetChildrenByTagName (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...
 
- Protected Member Functions inherited from ome::xml::model::detail::OMEModelObject
 OMEModelObject (const std::string &objectType="OMEModelObject")
 Constructor.
 
 OMEModelObject (const OMEModelObject &copy)
 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...
 
- Protected Member Functions inherited from ome::xml::model::OMEModelObject
 OMEModelObject ()
 Constructor.
 

Private Attributes

ome::compat::shared_ptr< bool > pockelCell
 PockelCell property.
 
ome::compat::shared_ptr< ome::xml::model::enums::Pulsepulse
 Pulse property.
 
ome::compat::shared_ptr< ome::xml::model::enums::LaserMediumlaserMedium
 LaserMedium property.
 
ome::compat::shared_ptr< bool > tuneable
 Tuneable property.
 
ome::compat::shared_ptr< ome::xml::model::primitives::PositiveIntegerwavelength
 Wavelength property.
 
ome::compat::shared_ptr< ome::xml::model::primitives::PositiveIntegerfrequencyMultiplication
 FrequencyMultiplication property.
 
ome::compat::shared_ptr< ome::xml::model::enums::LaserTypetype
 Type property.
 
ome::compat::shared_ptr< double > repetitionRate
 RepetitionRate property.
 
ome::compat::weak_ptr< ome::xml::model::LightSourcepump
 Pump reference.
 

Additional Inherited Members

- Protected Attributes inherited from ome::xml::model::detail::OMEModelObject
ome::common::Logger logger
 Message logger.
 

Detailed Description

Laser model object.

Constructor & Destructor Documentation

ome::xml::model::Laser::Laser ( const Laser copy)

Copy constructor.

Parameters
copythe Laser to copy.

Member Function Documentation

common::xml::dom::Element ome::xml::model::Laser::asXMLElement ( common::xml::dom::Document document) const
virtual

Transform the object hierarchy rooted at this element to XML.

Parameters
documentdocument for element creation
Returns
an XML DOM tree root element for this model object.

Reimplemented from ome::xml::model::ManufacturerSpec.

References asXMLElementInternal(), and ome::common::xml::dom::Document::createElementNS().

common::xml::dom::Element ome::xml::model::Laser::asXMLElementInternal ( common::xml::dom::Document document,
common::xml::dom::Element element 
) const
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.

Parameters
documentXML document for element creation.
elementXML element for setting model data.
Returns
an XML DOM tree root element for this model object.

Reimplemented from ome::xml::model::LightSource.

References ome::common::xml::dom::Node::appendChild(), ome::xml::model::LightSource::asXMLElementInternal(), ome::common::xml::dom::Document::createElementNS(), frequencyMultiplication, laserMedium, pockelCell, pulse, pump, repetitionRate, ome::common::xml::dom::Element::setAttribute(), tuneable, type, and wavelength.

Referenced by asXMLElement().

+ Here is the caller graph for this function:

ome::compat::shared_ptr< Laser > ome::xml::model::Laser::create ( const common::xml::dom::Element element,
ome::xml::model::OMEModel model 
)
static

Create a Laser model object from DOM element.

Parameters
elementroot of the XML DOM tree to from which to construct the model object graph.
modelhandler for the OME model used to track instances and references seen during the update.
Exceptions
EnumerationExceptionif there is an error instantiating an enumeration during model object creation, or ModelException if there are any consistency or validity errors found during processing.
Returns
a new model object.

Referenced by ome::xml::model::Instrument::update().

+ Here is the caller graph for this function:

const std::string & ome::xml::model::Laser::elementName ( ) const
virtual

Get the element name of this model object.

This will be the most-derived class name.

Returns
the element type.

Implements ome::xml::model::OMEModelObject.

References type.

ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > ome::xml::model::Laser::getFrequencyMultiplication ( )

Get the FrequencyMultiplication property.

Returns
the FrequencyMultiplication property.

References frequencyMultiplication.

Referenced by ome::xml::meta::OMEXMLMetadata::getLaserFrequencyMultiplication().

+ Here is the caller graph for this function:

const ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > ome::xml::model::Laser::getFrequencyMultiplication ( ) const

Get the FrequencyMultiplication property.

Returns
the FrequencyMultiplication property.

References frequencyMultiplication.

ome::compat::shared_ptr< ome::xml::model::enums::LaserMedium > ome::xml::model::Laser::getLaserMedium ( )

Get the LaserMedium property.

Returns
the LaserMedium property.

References laserMedium.

Referenced by ome::xml::meta::OMEXMLMetadata::getLaserLaserMedium().

+ Here is the caller graph for this function:

const ome::compat::shared_ptr< ome::xml::model::enums::LaserMedium > ome::xml::model::Laser::getLaserMedium ( ) const

Get the LaserMedium property.

Returns
the LaserMedium property.

References laserMedium.

const std::string & ome::xml::model::Laser::getLightSourceType ( ) const
virtual

Get the LightSource type.

Returns
the concrete type of the LightSource.

Implements ome::xml::model::LightSource.

References type.

ome::compat::weak_ptr< ome::xml::model::LightSource > ome::xml::model::Laser::getLinkedPump ( )

Get linked Pump.

Returns
the linked Pump. The pointer may be null.

References pump.

const ome::compat::weak_ptr< ome::xml::model::LightSource > ome::xml::model::Laser::getLinkedPump ( ) const

Get linked Pump.

Returns
the linked Pump. The pointer may be null.

References pump.

ome::compat::shared_ptr< bool > ome::xml::model::Laser::getPockelCell ( )

Get the PockelCell property.

Returns
the PockelCell property.

References pockelCell.

Referenced by ome::xml::meta::OMEXMLMetadata::getLaserPockelCell().

+ Here is the caller graph for this function:

const ome::compat::shared_ptr< bool > ome::xml::model::Laser::getPockelCell ( ) const

Get the PockelCell property.

Returns
the PockelCell property.

References pockelCell.

ome::compat::shared_ptr< ome::xml::model::enums::Pulse > ome::xml::model::Laser::getPulse ( )

Get the Pulse property.

Returns
the Pulse property.

References pulse.

Referenced by ome::xml::meta::OMEXMLMetadata::getLaserPulse().

+ Here is the caller graph for this function:

const ome::compat::shared_ptr< ome::xml::model::enums::Pulse > ome::xml::model::Laser::getPulse ( ) const

Get the Pulse property.

Returns
the Pulse property.

References pulse.

ome::compat::shared_ptr< double > ome::xml::model::Laser::getRepetitionRate ( )

Get the RepetitionRate property.

Returns
the RepetitionRate property.

References repetitionRate.

Referenced by ome::xml::meta::OMEXMLMetadata::getLaserRepetitionRate().

+ Here is the caller graph for this function:

const ome::compat::shared_ptr< double > ome::xml::model::Laser::getRepetitionRate ( ) const

Get the RepetitionRate property.

Returns
the RepetitionRate property.

References repetitionRate.

ome::compat::shared_ptr< bool > ome::xml::model::Laser::getTuneable ( )

Get the Tuneable property.

Returns
the Tuneable property.

References tuneable.

Referenced by ome::xml::meta::OMEXMLMetadata::getLaserTuneable().

+ Here is the caller graph for this function:

const ome::compat::shared_ptr< bool > ome::xml::model::Laser::getTuneable ( ) const

Get the Tuneable property.

Returns
the Tuneable property.

References tuneable.

ome::compat::shared_ptr< ome::xml::model::enums::LaserType > ome::xml::model::Laser::getType ( )

Get the Type property.

Returns
the Type property.

References type.

Referenced by ome::xml::meta::OMEXMLMetadata::getLaserType().

+ Here is the caller graph for this function:

const ome::compat::shared_ptr< ome::xml::model::enums::LaserType > ome::xml::model::Laser::getType ( ) const

Get the Type property.

Returns
the Type property.

References type.

ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > ome::xml::model::Laser::getWavelength ( )

Get the Wavelength property.

Returns
the Wavelength property.

References wavelength.

Referenced by ome::xml::meta::OMEXMLMetadata::getLaserWavelength().

+ Here is the caller graph for this function:

const ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > ome::xml::model::Laser::getWavelength ( ) const

Get the Wavelength property.

Returns
the Wavelength property.

References wavelength.

const std::string & ome::xml::model::Laser::getXMLNamespace ( ) const
virtual

Get the XML namespace for this model object.

Returns
the XML namespace.

Implements ome::xml::model::OMEModelObject.

bool ome::xml::model::Laser::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.

Parameters
referencetype 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.
objectModel object to link to.
Returns
true if this model object was able to handle the reference, otherwise false.
Todo:
the use of reference to provide type information for the type of object is unconventional and quite possibly unnecessary–a simple string or type_info would suffice for what it's being used for, if it's needed at all. Is this true for all cases? The implementation also needs to do strict checking of the object type; it's not currently failing if it's of the wrong type. This applies to all generated model objects implementing this interface.
Todo:
This bit is silly; why do we have two dynamic_casts here.

References ome::xml::model::LightSource::link(), ome::xml::model::detail::OMEModelObject::logger, and pump.

void ome::xml::model::Laser::linkPump ( ome::compat::shared_ptr< ome::xml::model::LightSource > &  pump)

Link Pump.

Parameters
pumpthe Pump to link.

References pump.

void ome::xml::model::Laser::setFrequencyMultiplication ( ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > &  frequencyMultiplication)

Set the FrequencyMultiplication property.

Parameters
frequencyMultiplicationthe value to set.

References frequencyMultiplication.

Referenced by update().

+ Here is the caller graph for this function:

void ome::xml::model::Laser::setLaserMedium ( ome::compat::shared_ptr< ome::xml::model::enums::LaserMedium > &  laserMedium)

Set the LaserMedium property.

Parameters
laserMediumthe value to set.

References laserMedium.

Referenced by update().

+ Here is the caller graph for this function:

void ome::xml::model::Laser::setPockelCell ( ome::compat::shared_ptr< bool > &  pockelCell)

Set the PockelCell property.

Parameters
pockelCellthe value to set.

References pockelCell.

Referenced by update().

+ Here is the caller graph for this function:

void ome::xml::model::Laser::setPulse ( ome::compat::shared_ptr< ome::xml::model::enums::Pulse > &  pulse)

Set the Pulse property.

Parameters
pulsethe value to set.

References pulse.

Referenced by update().

+ Here is the caller graph for this function:

void ome::xml::model::Laser::setRepetitionRate ( ome::compat::shared_ptr< double > &  repetitionRate)

Set the RepetitionRate property.

Parameters
repetitionRatethe value to set.

References repetitionRate.

Referenced by update().

+ Here is the caller graph for this function:

void ome::xml::model::Laser::setTuneable ( ome::compat::shared_ptr< bool > &  tuneable)

Set the Tuneable property.

Parameters
tuneablethe value to set.

References tuneable.

Referenced by update().

+ Here is the caller graph for this function:

void ome::xml::model::Laser::setType ( ome::compat::shared_ptr< ome::xml::model::enums::LaserType > &  type)

Set the Type property.

Parameters
typethe value to set.

References type.

Referenced by update().

+ Here is the caller graph for this function:

void ome::xml::model::Laser::setWavelength ( ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > &  wavelength)

Set the Wavelength property.

Parameters
wavelengththe value to set.

References wavelength.

Referenced by update().

+ Here is the caller graph for this function:

void ome::xml::model::Laser::unlinkPump ( ome::compat::shared_ptr< ome::xml::model::LightSource > &  pump)

Unlink Pump.

Parameters
pumpthe Pump to unlink.
Todo:
This method is fairly pointless since it's equivalent to linking a null pointer. It could call link(0) internally.
void ome::xml::model::Laser::update ( const common::xml::dom::Element element,
ome::xml::model::OMEModel model 
)
virtual

Update the object hierarchy recursively from an XML DOM tree.

Note
No properties are removed, only added or updated.
Parameters
elementroot of the XML DOM tree to from which to construct the model object graph.
modelhandler for the OME model used to track instances and references seen during the update.
Exceptions
EnumerationExceptionif there is an error instantiating an enumeration during model object creation, or ModelException if there are any consistency or validity errors found during processing.

Reimplemented from ome::xml::model::LightSource.

References ome::xml::model::OMEModel::addReference(), ome::common::xml::dom::Element::getAttribute(), ome::xml::model::detail::OMEModelObject::getChildrenByTagName(), ome::common::xml::dom::Element::getTagName(), ome::common::xml::dom::Element::hasAttribute(), ome::xml::model::detail::OMEModelObject::logger, setFrequencyMultiplication(), setLaserMedium(), setPockelCell(), setPulse(), setRepetitionRate(), setTuneable(), setType(), setWavelength(), ome::xml::model::detail::OMEModelObject::stripNamespacePrefix(), ome::xml::model::LightSource::update(), and validElementName().

bool ome::xml::model::Laser::validElementName ( const std::string &  name) const
virtual

Check if a given element name is valid for processing by this model object.

Used for processing nodes when interitance is involved.

Parameters
namethe element name to check.
Returns
true if valid, false if invalid.

Implements ome::xml::model::detail::OMEModelObject.

References ome::xml::model::LightSource::validElementName().

Referenced by update().

+ Here is the caller graph for this function:


The documentation for this class was generated from the following files: