ome-xml  5.6.0
Classes | Public Member Functions | Static Public Member Functions | Protected Member Functions | Private Attributes | List of all members
ome::xml::model::BinData Class Reference

BinData model object. More...

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

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

Classes

class  Impl
 Private implementation details of BinData model object. More...
 

Public Member Functions

 BinData ()
 Default constructor.
 
 BinData (const BinData &copy)
 Copy constructor. More...
 
virtual ~BinData ()
 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 SKIP 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 (std::shared_ptr< Reference > &reference, std::shared_ptr< ome::xml::model::OMEModelObject > &object)
 Link a given OME model object to this model object. More...
 
const std::vector< uint8_t > & getBase64Binary () const
 Get the Base64Binary property. More...
 
void setBase64Binary (const std::vector< uint8_t > &base64Binary)
 Set the Base64Binary property. More...
 
bool getBigEndian () const
 Get the BigEndian property. More...
 
void setBigEndian (bool bigEndian)
 Set the BigEndian property. More...
 
const ome::xml::model::primitives::NonNegativeLonggetLength () const
 Get the Length property. More...
 
void setLength (const ome::xml::model::primitives::NonNegativeLong &length)
 Set the Length property. More...
 
std::shared_ptr< ome::xml::model::enums::CompressiongetCompression ()
 Get the Compression property. More...
 
const std::shared_ptr< ome::xml::model::enums::CompressiongetCompression () const
 Get the Compression property. More...
 
void setCompression (std::shared_ptr< ome::xml::model::enums::Compression > &compression)
 Set the Compression property. More...
 
std::weak_ptr< ome::xml::model::PixelsgetPixels ()
 Get the Pixels property. More...
 
const std::weak_ptr< ome::xml::model::PixelsgetPixels () const
 Get the Pixels property. More...
 
void setPixels (std::weak_ptr< ome::xml::model::Pixels > &pixels_BackReference)
 Set the Pixels 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 common::xml::dom::Element asXMLElement (common::xml::dom::Document &document) const
 Transform the object hierarchy rooted at this element to XML. More...
 
virtual void asXMLElement (common::xml::dom::Document &document, common::xml::dom::Element &element) const
 Transform the object hierarchy rooted at this element to XML. 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...
 
virtual bool link (std::shared_ptr< Reference > &reference, std::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 (std::shared_ptr< Reference > &reference, std::shared_ptr< OMEModelObject > &object)=0
 Link a given OME model object to this model object. More...
 

Static Public Member Functions

static std::shared_ptr< BinDatacreate (const common::xml::dom::Element &element, ome::xml::model::OMEModel &model)
 Create a BinData 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 void 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. More...
 
 OMEModelObject (const OMEModelObject &copy)
 Copy constructor. More...
 
template<class C , typename T >
bool contains (const C &container, const std::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

std::shared_ptr< Implimpl
 Private implementation details.
 

Additional Inherited Members

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

Detailed Description

BinData model object.

Constructor & Destructor Documentation

◆ BinData()

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

Copy constructor.

Parameters
copythe BinData to copy.

Member Function Documentation

◆ asXMLElementInternal()

void ome::xml::model::BinData::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.

Concrete model object implementations should override this method.

Parameters
documentXML document for element creation.
elementXML element for setting model data.

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

References ome::xml::model::detail::OMEModelObject::asXMLElementInternal(), ome::common::base64_encode(), ome::common::xml::dom::Document::createElementNS(), getXMLNamespace(), impl, ome::common::xml::dom::Element::setAttribute(), and ome::common::xml::dom::Element::setTextContent().

◆ create()

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

Create a BinData 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::Mask::update(), ome::xml::model::BinaryFile::update(), and ome::xml::model::Pixels::update().

+ Here is the caller graph for this function:

◆ elementName()

const std::string & ome::xml::model::BinData::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.

◆ getBase64Binary()

const std::vector< uint8_t > & ome::xml::model::BinData::getBase64Binary ( ) const

Get the Base64Binary property.

Returns
the Base64Binary property.

References impl.

◆ getBigEndian()

bool ome::xml::model::BinData::getBigEndian ( ) const

Get the BigEndian property.

Returns
the BigEndian property.

References impl.

◆ getCompression() [1/2]

std::shared_ptr< ome::xml::model::enums::Compression > ome::xml::model::BinData::getCompression ( )

Get the Compression property.

Returns
the Compression property.

References impl.

◆ getCompression() [2/2]

const std::shared_ptr< ome::xml::model::enums::Compression > ome::xml::model::BinData::getCompression ( ) const

Get the Compression property.

Returns
the Compression property.

References impl.

◆ getLength()

const ome::xml::model::primitives::NonNegativeLong & ome::xml::model::BinData::getLength ( ) const

Get the Length property.

Returns
the Length property.

References impl.

◆ getPixels() [1/2]

std::weak_ptr< ome::xml::model::Pixels > ome::xml::model::BinData::getPixels ( )

Get the Pixels property.

Returns
the Pixels property.

References impl.

◆ getPixels() [2/2]

const std::weak_ptr< ome::xml::model::Pixels > ome::xml::model::BinData::getPixels ( ) const

Get the Pixels property.

Returns
the Pixels property.

References impl.

◆ getXMLNamespace()

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

Get the XML namespace for this model object.

Returns
the XML namespace.

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

Referenced by asXMLElementInternal().

+ Here is the caller graph for this function:

◆ link()

bool ome::xml::model::BinData::link ( std::shared_ptr< Reference > &  reference,
std::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.

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

◆ setBase64Binary()

void ome::xml::model::BinData::setBase64Binary ( const std::vector< uint8_t > &  base64Binary)

Set the Base64Binary property.

Parameters
base64Binarythe value to set.

References impl.

Referenced by update().

+ Here is the caller graph for this function:

◆ setBigEndian()

void ome::xml::model::BinData::setBigEndian ( bool  bigEndian)

Set the BigEndian property.

Parameters
bigEndianthe value to set.

References impl.

Referenced by update().

+ Here is the caller graph for this function:

◆ setCompression()

void ome::xml::model::BinData::setCompression ( std::shared_ptr< ome::xml::model::enums::Compression > &  compression)

Set the Compression property.

Parameters
compressionthe value to set.

References impl.

Referenced by update().

+ Here is the caller graph for this function:

◆ setLength()

void ome::xml::model::BinData::setLength ( const ome::xml::model::primitives::NonNegativeLong length)

Set the Length property.

Parameters
lengththe value to set.

References impl.

Referenced by update().

+ Here is the caller graph for this function:

◆ setPixels()

void ome::xml::model::BinData::setPixels ( std::weak_ptr< ome::xml::model::Pixels > &  pixels_BackReference)

Set the Pixels property.

Parameters
pixels_BackReferencethe value to set.

References impl.

◆ update()

void ome::xml::model::BinData::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.

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

References ome::common::base64_decode(), ome::common::xml::dom::Element::getAttribute(), ome::common::xml::dom::Element::getTagName(), ome::common::xml::dom::Element::getTextContent(), ome::common::xml::dom::Element::hasAttribute(), ome::xml::model::detail::OMEModelObject::logger, setBase64Binary(), setBigEndian(), setCompression(), setLength(), ome::xml::model::detail::OMEModelObject::update(), and validElementName().

◆ validElementName()

bool ome::xml::model::BinData::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.
Deprecated:
Always returns true since any element name is now regarded as being valid.

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

Referenced by update().

+ Here is the caller graph for this function:

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