ome-xml  5.2.0-m5
StructuredAnnotations.h
1 /*
2  * #%L
3  * OME-XML C++ library for working with OME-XML metadata structures.
4  * %%
5  * Copyright © 2006 - 2016 Open Microscopy Environment:
6  * - Massachusetts Institute of Technology
7  * - National Institutes of Health
8  * - University of Dundee
9  * - Board of Regents of the University of Wisconsin-Madison
10  * - Glencoe Software, Inc.
11  * %%
12  * Redistribution and use in source and binary forms, with or without
13  * modification, are permitted provided that the following conditions are met:
14  *
15  * 1. Redistributions of source code must retain the above copyright notice,
16  * this list of conditions and the following disclaimer.
17  * 2. Redistributions in binary form must reproduce the above copyright notice,
18  * this list of conditions and the following disclaimer in the documentation
19  * and/or other materials provided with the distribution.
20  *
21  * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
22  * AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24  * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDERS OR CONTRIBUTORS BE
25  * LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
26  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
27  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
28  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
29  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
30  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
31  * POSSIBILITY OF SUCH DAMAGE.
32  *
33  * The views and conclusions contained in the software and documentation are
34  * those of the authors and should not be interpreted as representing official
35  * policies, either expressed or implied, of any organization.
36  * #L%
37  */
38 
39 /*─────────────────────────────────────────────────────────────────────────────
40  *
41  * THIS IS AUTOMATICALLY GENERATED CODE. DO NOT MODIFY.
42  *
43  *─────────────────────────────────────────────────────────────────────────────
44  */
45 
46 #ifndef OME_XML_MODEL_STRUCTUREDANNOTATIONS_H
47 #define OME_XML_MODEL_STRUCTUREDANNOTATIONS_H
48 
49 #include <algorithm>
50 #include <list>
51 #include <stdexcept>
52 #include <string>
53 #include <vector>
54 
55 #include <ome/common/log.h>
56 
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>
61 
62 #include <ome/xml/model/primitives/Quantity.h>
63 
64 #include <ome/xml/model/detail/OMEModelObject.h>
65 
66 namespace ome
67 {
68  namespace xml
69  {
70  namespace model
71  {
72 
73  // Forward declarations.
74  class BooleanAnnotation;
75  class CommentAnnotation;
76  class DoubleAnnotation;
77  class FileAnnotation;
78  class ListAnnotation;
79  class LongAnnotation;
80  class MapAnnotation;
81  class OMEModel;
82  class TagAnnotation;
83  class TermAnnotation;
84  class TimestampAnnotation;
85  class XMLAnnotation;
86 
91  {
92  private:
93  class Impl;
95  ome::compat::shared_ptr<Impl> impl;
96 
97  public:
100 
107 
109  virtual
111 
126  static ome::compat::shared_ptr< StructuredAnnotations>
127  create(const common::xml::dom::Element& element,
129 
130  // Documented in superclass.
131  const std::string&
132  elementName() const;
133 
134  // Documented in superclass.
135  bool
136  validElementName(const std::string& name) const;
137 
138  private:
142 
143  public:
144  // -- OMEModelObject API methods --
145 
147  virtual void
148  update(const common::xml::dom::Element& element,
150 
151  public:
152  // -- StructuredAnnotations API methods --
153 
155  bool
156  link (ome::compat::shared_ptr<Reference>& reference,
157  ome::compat::shared_ptr< ome::xml::model::OMEModelObject>& object);
158 
164  std::vector<ome::compat::shared_ptr<ome::xml::model::XMLAnnotation> >::size_type
165  sizeOfXMLAnnotationList () const;
166 
173  std::vector<ome::compat::shared_ptr<ome::xml::model::XMLAnnotation> >&
175 
182  const std::vector<ome::compat::shared_ptr<ome::xml::model::XMLAnnotation> >&
183  getXMLAnnotationList () const;
184 
192  ome::compat::shared_ptr<ome::xml::model::XMLAnnotation>&
193  getXMLAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::XMLAnnotation> >::size_type index);
194 
202  const ome::compat::shared_ptr<ome::xml::model::XMLAnnotation>&
203  getXMLAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::XMLAnnotation> >::size_type index) const;
204 
212  void
213  setXMLAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::XMLAnnotation> >::size_type index,
214  ome::compat::shared_ptr<ome::xml::model::XMLAnnotation>& xmlAnnotation);
215 
224  void
225  addXMLAnnotation (ome::compat::shared_ptr<ome::xml::model::XMLAnnotation>& xmlAnnotation);
226 
236  void
237  removeXMLAnnotation (ome::compat::shared_ptr<ome::xml::model::XMLAnnotation>& xmlAnnotation);
238 
244  std::vector<ome::compat::shared_ptr<ome::xml::model::FileAnnotation> >::size_type
245  sizeOfFileAnnotationList () const;
246 
253  std::vector<ome::compat::shared_ptr<ome::xml::model::FileAnnotation> >&
255 
262  const std::vector<ome::compat::shared_ptr<ome::xml::model::FileAnnotation> >&
263  getFileAnnotationList () const;
264 
272  ome::compat::shared_ptr<ome::xml::model::FileAnnotation>&
273  getFileAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::FileAnnotation> >::size_type index);
274 
282  const ome::compat::shared_ptr<ome::xml::model::FileAnnotation>&
283  getFileAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::FileAnnotation> >::size_type index) const;
284 
292  void
293  setFileAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::FileAnnotation> >::size_type index,
294  ome::compat::shared_ptr<ome::xml::model::FileAnnotation>& fileAnnotation);
295 
304  void
305  addFileAnnotation (ome::compat::shared_ptr<ome::xml::model::FileAnnotation>& fileAnnotation);
306 
316  void
317  removeFileAnnotation (ome::compat::shared_ptr<ome::xml::model::FileAnnotation>& fileAnnotation);
318 
324  std::vector<ome::compat::shared_ptr<ome::xml::model::ListAnnotation> >::size_type
325  sizeOfListAnnotationList () const;
326 
333  std::vector<ome::compat::shared_ptr<ome::xml::model::ListAnnotation> >&
335 
342  const std::vector<ome::compat::shared_ptr<ome::xml::model::ListAnnotation> >&
343  getListAnnotationList () const;
344 
352  ome::compat::shared_ptr<ome::xml::model::ListAnnotation>&
353  getListAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::ListAnnotation> >::size_type index);
354 
362  const ome::compat::shared_ptr<ome::xml::model::ListAnnotation>&
363  getListAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::ListAnnotation> >::size_type index) const;
364 
372  void
373  setListAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::ListAnnotation> >::size_type index,
374  ome::compat::shared_ptr<ome::xml::model::ListAnnotation>& listAnnotation);
375 
384  void
385  addListAnnotation (ome::compat::shared_ptr<ome::xml::model::ListAnnotation>& listAnnotation);
386 
396  void
397  removeListAnnotation (ome::compat::shared_ptr<ome::xml::model::ListAnnotation>& listAnnotation);
398 
404  std::vector<ome::compat::shared_ptr<ome::xml::model::LongAnnotation> >::size_type
405  sizeOfLongAnnotationList () const;
406 
413  std::vector<ome::compat::shared_ptr<ome::xml::model::LongAnnotation> >&
415 
422  const std::vector<ome::compat::shared_ptr<ome::xml::model::LongAnnotation> >&
423  getLongAnnotationList () const;
424 
432  ome::compat::shared_ptr<ome::xml::model::LongAnnotation>&
433  getLongAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::LongAnnotation> >::size_type index);
434 
442  const ome::compat::shared_ptr<ome::xml::model::LongAnnotation>&
443  getLongAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::LongAnnotation> >::size_type index) const;
444 
452  void
453  setLongAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::LongAnnotation> >::size_type index,
454  ome::compat::shared_ptr<ome::xml::model::LongAnnotation>& longAnnotation);
455 
464  void
465  addLongAnnotation (ome::compat::shared_ptr<ome::xml::model::LongAnnotation>& longAnnotation);
466 
476  void
477  removeLongAnnotation (ome::compat::shared_ptr<ome::xml::model::LongAnnotation>& longAnnotation);
478 
484  std::vector<ome::compat::shared_ptr<ome::xml::model::DoubleAnnotation> >::size_type
486 
493  std::vector<ome::compat::shared_ptr<ome::xml::model::DoubleAnnotation> >&
495 
502  const std::vector<ome::compat::shared_ptr<ome::xml::model::DoubleAnnotation> >&
503  getDoubleAnnotationList () const;
504 
512  ome::compat::shared_ptr<ome::xml::model::DoubleAnnotation>&
513  getDoubleAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::DoubleAnnotation> >::size_type index);
514 
522  const ome::compat::shared_ptr<ome::xml::model::DoubleAnnotation>&
523  getDoubleAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::DoubleAnnotation> >::size_type index) const;
524 
532  void
533  setDoubleAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::DoubleAnnotation> >::size_type index,
534  ome::compat::shared_ptr<ome::xml::model::DoubleAnnotation>& doubleAnnotation);
535 
544  void
545  addDoubleAnnotation (ome::compat::shared_ptr<ome::xml::model::DoubleAnnotation>& doubleAnnotation);
546 
556  void
557  removeDoubleAnnotation (ome::compat::shared_ptr<ome::xml::model::DoubleAnnotation>& doubleAnnotation);
558 
564  std::vector<ome::compat::shared_ptr<ome::xml::model::CommentAnnotation> >::size_type
566 
573  std::vector<ome::compat::shared_ptr<ome::xml::model::CommentAnnotation> >&
575 
582  const std::vector<ome::compat::shared_ptr<ome::xml::model::CommentAnnotation> >&
583  getCommentAnnotationList () const;
584 
592  ome::compat::shared_ptr<ome::xml::model::CommentAnnotation>&
593  getCommentAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::CommentAnnotation> >::size_type index);
594 
602  const ome::compat::shared_ptr<ome::xml::model::CommentAnnotation>&
603  getCommentAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::CommentAnnotation> >::size_type index) const;
604 
612  void
613  setCommentAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::CommentAnnotation> >::size_type index,
614  ome::compat::shared_ptr<ome::xml::model::CommentAnnotation>& commentAnnotation);
615 
624  void
625  addCommentAnnotation (ome::compat::shared_ptr<ome::xml::model::CommentAnnotation>& commentAnnotation);
626 
636  void
637  removeCommentAnnotation (ome::compat::shared_ptr<ome::xml::model::CommentAnnotation>& commentAnnotation);
638 
644  std::vector<ome::compat::shared_ptr<ome::xml::model::BooleanAnnotation> >::size_type
646 
653  std::vector<ome::compat::shared_ptr<ome::xml::model::BooleanAnnotation> >&
655 
662  const std::vector<ome::compat::shared_ptr<ome::xml::model::BooleanAnnotation> >&
663  getBooleanAnnotationList () const;
664 
672  ome::compat::shared_ptr<ome::xml::model::BooleanAnnotation>&
673  getBooleanAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::BooleanAnnotation> >::size_type index);
674 
682  const ome::compat::shared_ptr<ome::xml::model::BooleanAnnotation>&
683  getBooleanAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::BooleanAnnotation> >::size_type index) const;
684 
692  void
693  setBooleanAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::BooleanAnnotation> >::size_type index,
694  ome::compat::shared_ptr<ome::xml::model::BooleanAnnotation>& booleanAnnotation);
695 
704  void
705  addBooleanAnnotation (ome::compat::shared_ptr<ome::xml::model::BooleanAnnotation>& booleanAnnotation);
706 
716  void
717  removeBooleanAnnotation (ome::compat::shared_ptr<ome::xml::model::BooleanAnnotation>& booleanAnnotation);
718 
724  std::vector<ome::compat::shared_ptr<ome::xml::model::TimestampAnnotation> >::size_type
726 
733  std::vector<ome::compat::shared_ptr<ome::xml::model::TimestampAnnotation> >&
735 
742  const std::vector<ome::compat::shared_ptr<ome::xml::model::TimestampAnnotation> >&
744 
752  ome::compat::shared_ptr<ome::xml::model::TimestampAnnotation>&
753  getTimestampAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::TimestampAnnotation> >::size_type index);
754 
762  const ome::compat::shared_ptr<ome::xml::model::TimestampAnnotation>&
763  getTimestampAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::TimestampAnnotation> >::size_type index) const;
764 
772  void
773  setTimestampAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::TimestampAnnotation> >::size_type index,
774  ome::compat::shared_ptr<ome::xml::model::TimestampAnnotation>& timestampAnnotation);
775 
784  void
785  addTimestampAnnotation (ome::compat::shared_ptr<ome::xml::model::TimestampAnnotation>& timestampAnnotation);
786 
796  void
797  removeTimestampAnnotation (ome::compat::shared_ptr<ome::xml::model::TimestampAnnotation>& timestampAnnotation);
798 
804  std::vector<ome::compat::shared_ptr<ome::xml::model::TagAnnotation> >::size_type
805  sizeOfTagAnnotationList () const;
806 
813  std::vector<ome::compat::shared_ptr<ome::xml::model::TagAnnotation> >&
815 
822  const std::vector<ome::compat::shared_ptr<ome::xml::model::TagAnnotation> >&
823  getTagAnnotationList () const;
824 
832  ome::compat::shared_ptr<ome::xml::model::TagAnnotation>&
833  getTagAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::TagAnnotation> >::size_type index);
834 
842  const ome::compat::shared_ptr<ome::xml::model::TagAnnotation>&
843  getTagAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::TagAnnotation> >::size_type index) const;
844 
852  void
853  setTagAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::TagAnnotation> >::size_type index,
854  ome::compat::shared_ptr<ome::xml::model::TagAnnotation>& tagAnnotation);
855 
864  void
865  addTagAnnotation (ome::compat::shared_ptr<ome::xml::model::TagAnnotation>& tagAnnotation);
866 
876  void
877  removeTagAnnotation (ome::compat::shared_ptr<ome::xml::model::TagAnnotation>& tagAnnotation);
878 
884  std::vector<ome::compat::shared_ptr<ome::xml::model::TermAnnotation> >::size_type
885  sizeOfTermAnnotationList () const;
886 
893  std::vector<ome::compat::shared_ptr<ome::xml::model::TermAnnotation> >&
895 
902  const std::vector<ome::compat::shared_ptr<ome::xml::model::TermAnnotation> >&
903  getTermAnnotationList () const;
904 
912  ome::compat::shared_ptr<ome::xml::model::TermAnnotation>&
913  getTermAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::TermAnnotation> >::size_type index);
914 
922  const ome::compat::shared_ptr<ome::xml::model::TermAnnotation>&
923  getTermAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::TermAnnotation> >::size_type index) const;
924 
932  void
933  setTermAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::TermAnnotation> >::size_type index,
934  ome::compat::shared_ptr<ome::xml::model::TermAnnotation>& termAnnotation);
935 
944  void
945  addTermAnnotation (ome::compat::shared_ptr<ome::xml::model::TermAnnotation>& termAnnotation);
946 
956  void
957  removeTermAnnotation (ome::compat::shared_ptr<ome::xml::model::TermAnnotation>& termAnnotation);
958 
964  std::vector<ome::compat::shared_ptr<ome::xml::model::MapAnnotation> >::size_type
965  sizeOfMapAnnotationList () const;
966 
973  std::vector<ome::compat::shared_ptr<ome::xml::model::MapAnnotation> >&
975 
982  const std::vector<ome::compat::shared_ptr<ome::xml::model::MapAnnotation> >&
983  getMapAnnotationList () const;
984 
992  ome::compat::shared_ptr<ome::xml::model::MapAnnotation>&
993  getMapAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::MapAnnotation> >::size_type index);
994 
1002  const ome::compat::shared_ptr<ome::xml::model::MapAnnotation>&
1003  getMapAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::MapAnnotation> >::size_type index) const;
1004 
1012  void
1013  setMapAnnotation (std::vector<ome::compat::shared_ptr<ome::xml::model::MapAnnotation> >::size_type index,
1014  ome::compat::shared_ptr<ome::xml::model::MapAnnotation>& mapAnnotation);
1015 
1024  void
1025  addMapAnnotation (ome::compat::shared_ptr<ome::xml::model::MapAnnotation>& mapAnnotation);
1026 
1036  void
1037  removeMapAnnotation (ome::compat::shared_ptr<ome::xml::model::MapAnnotation>& mapAnnotation);
1038 
1041  asXMLElement (common::xml::dom::Document& document) const;
1042 
1043 
1044  protected:
1045  // Documented in base class.
1048  common::xml::dom::Element& element) const;
1049 
1050  public:
1051  // Documented in superclass.
1052  const std::string&
1053  getXMLNamespace() const;
1054  };
1055 
1056  }
1057  }
1058 }
1059 
1060 #endif // OME_XML_MODEL_STRUCTUREDANNOTATIONS_H
1061 
1062 /*
1063  * Local Variables:
1064  * mode:C++
1065  * End:
1066  */
OME model interface (abstract top-level container)
Definition: OMEModel.h:62
void setFileAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::FileAnnotation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::FileAnnotation > &fileAnnotation)
Set FileAnnotation.
Definition: StructuredAnnotations.cpp:492
virtual common::xml::dom::Element asXMLElement(common::xml::dom::Document &document) const
Transform the object hierarchy rooted at this element to XML.
Definition: StructuredAnnotations.cpp:1041
void removeCommentAnnotation(ome::compat::shared_ptr< ome::xml::model::CommentAnnotation > &commentAnnotation)
Remove CommentAnnotation.
Definition: StructuredAnnotations.cpp:741
ome::compat::shared_ptr< ome::xml::model::DoubleAnnotation > & getDoubleAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::DoubleAnnotation > >::size_type index)
Get DoubleAnnotation.
Definition: StructuredAnnotations.cpp:654
std::vector< ome::compat::shared_ptr< ome::xml::model::DoubleAnnotation > > & getDoubleAnnotationList()
Get the DoubleAnnotation list.
Definition: StructuredAnnotations.cpp:642
ome::compat::shared_ptr< ome::xml::model::TagAnnotation > & getTagAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::TagAnnotation > >::size_type index)
Get TagAnnotation.
Definition: StructuredAnnotations.cpp:886
ome::compat::shared_ptr< Impl > impl
Private implementation details.
Definition: StructuredAnnotations.h:93
const std::string & elementName() const
Get the element name of this model object.
Definition: StructuredAnnotations.cpp:228
void setTermAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::TermAnnotation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::TermAnnotation > &termAnnotation)
Set TermAnnotation.
Definition: StructuredAnnotations.cpp:956
Private implementation details of StructuredAnnotations model object.
Definition: StructuredAnnotations.cpp:86
void addXMLAnnotation(ome::compat::shared_ptr< ome::xml::model::XMLAnnotation > &xmlAnnotation)
Add XMLAnnotation.
Definition: StructuredAnnotations.cpp:443
ome::compat::shared_ptr< ome::xml::model::FileAnnotation > & getFileAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::FileAnnotation > >::size_type index)
Get FileAnnotation.
Definition: StructuredAnnotations.cpp:480
StructuredAnnotations model object.
Definition: StructuredAnnotations.h:90
void setTagAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::TagAnnotation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::TagAnnotation > &tagAnnotation)
Set TagAnnotation.
Definition: StructuredAnnotations.cpp:898
ome::compat::shared_ptr< ome::xml::model::TimestampAnnotation > & getTimestampAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::TimestampAnnotation > >::size_type index)
Get TimestampAnnotation.
Definition: StructuredAnnotations.cpp:828
void setDoubleAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::DoubleAnnotation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::DoubleAnnotation > &doubleAnnotation)
Set DoubleAnnotation.
Definition: StructuredAnnotations.cpp:666
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: StructuredAnnotations.cpp:389
void removeTagAnnotation(ome::compat::shared_ptr< ome::xml::model::TagAnnotation > &tagAnnotation)
Remove TagAnnotation.
Definition: StructuredAnnotations.cpp:915
const std::string & getXMLNamespace() const
Get the XML namespace for this model object.
Definition: StructuredAnnotations.cpp:1239
std::vector< ome::compat::shared_ptr< ome::xml::model::FileAnnotation > > & getFileAnnotationList()
Get the FileAnnotation list.
Definition: StructuredAnnotations.cpp:468
std::vector< ome::compat::shared_ptr< ome::xml::model::XMLAnnotation > > & getXMLAnnotationList()
Get the XMLAnnotation list.
Definition: StructuredAnnotations.cpp:410
void removeMapAnnotation(ome::compat::shared_ptr< ome::xml::model::MapAnnotation > &mapAnnotation)
Remove MapAnnotation.
Definition: StructuredAnnotations.cpp:1031
std::vector< ome::compat::shared_ptr< ome::xml::model::FileAnnotation > >::size_type sizeOfFileAnnotationList() const
Get size of linked FileAnnotation list.
Definition: StructuredAnnotations.cpp:462
OME model object (concrete implementation).
Definition: OMEModelObject.h:64
void addCommentAnnotation(ome::compat::shared_ptr< ome::xml::model::CommentAnnotation > &commentAnnotation)
Add CommentAnnotation.
Definition: StructuredAnnotations.cpp:733
ome::compat::shared_ptr< ome::xml::model::MapAnnotation > & getMapAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::MapAnnotation > >::size_type index)
Get MapAnnotation.
Definition: StructuredAnnotations.cpp:1002
void addMapAnnotation(ome::compat::shared_ptr< ome::xml::model::MapAnnotation > &mapAnnotation)
Add MapAnnotation.
Definition: StructuredAnnotations.cpp:1023
ome::compat::shared_ptr< ome::xml::model::CommentAnnotation > & getCommentAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::CommentAnnotation > >::size_type index)
Get CommentAnnotation.
Definition: StructuredAnnotations.cpp:712
bool validElementName(const std::string &name) const
Check if a given element name is valid for processing by this model object.
Definition: StructuredAnnotations.cpp:235
std::vector< ome::compat::shared_ptr< ome::xml::model::ListAnnotation > >::size_type sizeOfListAnnotationList() const
Get size of linked ListAnnotation list.
Definition: StructuredAnnotations.cpp:520
void addTimestampAnnotation(ome::compat::shared_ptr< ome::xml::model::TimestampAnnotation > &timestampAnnotation)
Add TimestampAnnotation.
Definition: StructuredAnnotations.cpp:849
void setTimestampAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::TimestampAnnotation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::TimestampAnnotation > &timestampAnnotation)
Set TimestampAnnotation.
Definition: StructuredAnnotations.cpp:840
void removeLongAnnotation(ome::compat::shared_ptr< ome::xml::model::LongAnnotation > &longAnnotation)
Remove LongAnnotation.
Definition: StructuredAnnotations.cpp:625
std::vector< ome::compat::shared_ptr< ome::xml::model::DoubleAnnotation > >::size_type sizeOfDoubleAnnotationList() const
Get size of linked DoubleAnnotation list.
Definition: StructuredAnnotations.cpp:636
std::vector< ome::compat::shared_ptr< ome::xml::model::BooleanAnnotation > > & getBooleanAnnotationList()
Get the BooleanAnnotation list.
Definition: StructuredAnnotations.cpp:758
std::vector< ome::compat::shared_ptr< ome::xml::model::MapAnnotation > >::size_type sizeOfMapAnnotationList() const
Get size of linked MapAnnotation list.
Definition: StructuredAnnotations.cpp:984
Open Microscopy Environment C++ implementation.
ome::compat::shared_ptr< ome::xml::model::TermAnnotation > & getTermAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::TermAnnotation > >::size_type index)
Get TermAnnotation.
Definition: StructuredAnnotations.cpp:944
void setXMLAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::XMLAnnotation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::XMLAnnotation > &xmlAnnotation)
Set XMLAnnotation.
Definition: StructuredAnnotations.cpp:434
StructuredAnnotations & operator=(const StructuredAnnotations &)
Assignment operator (deleted).
ome::compat::shared_ptr< ome::xml::model::LongAnnotation > & getLongAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::LongAnnotation > >::size_type index)
Get LongAnnotation.
Definition: StructuredAnnotations.cpp:596
std::vector< ome::compat::shared_ptr< ome::xml::model::CommentAnnotation > >::size_type sizeOfCommentAnnotationList() const
Get size of linked CommentAnnotation list.
Definition: StructuredAnnotations.cpp:694
void addDoubleAnnotation(ome::compat::shared_ptr< ome::xml::model::DoubleAnnotation > &doubleAnnotation)
Add DoubleAnnotation.
Definition: StructuredAnnotations.cpp:675
ome::compat::shared_ptr< ome::xml::model::ListAnnotation > & getListAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::ListAnnotation > >::size_type index)
Get ListAnnotation.
Definition: StructuredAnnotations.cpp:538
void setListAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::ListAnnotation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::ListAnnotation > &listAnnotation)
Set ListAnnotation.
Definition: StructuredAnnotations.cpp:550
void setMapAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::MapAnnotation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::MapAnnotation > &mapAnnotation)
Set MapAnnotation.
Definition: StructuredAnnotations.cpp:1014
void setCommentAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::CommentAnnotation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::CommentAnnotation > &commentAnnotation)
Set CommentAnnotation.
Definition: StructuredAnnotations.cpp:724
void addFileAnnotation(ome::compat::shared_ptr< ome::xml::model::FileAnnotation > &fileAnnotation)
Add FileAnnotation.
Definition: StructuredAnnotations.cpp:501
std::vector< ome::compat::shared_ptr< ome::xml::model::ListAnnotation > > & getListAnnotationList()
Get the ListAnnotation list.
Definition: StructuredAnnotations.cpp:526
void removeBooleanAnnotation(ome::compat::shared_ptr< ome::xml::model::BooleanAnnotation > &booleanAnnotation)
Remove BooleanAnnotation.
Definition: StructuredAnnotations.cpp:799
StructuredAnnotations()
Default constructor.
Definition: StructuredAnnotations.cpp:195
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: StructuredAnnotations.cpp:1048
static ome::compat::shared_ptr< StructuredAnnotations > create(const common::xml::dom::Element &element, ome::xml::model::OMEModel &model)
Create a StructuredAnnotations model object from DOM element.
Definition: StructuredAnnotations.cpp:219
std::vector< ome::compat::shared_ptr< ome::xml::model::TagAnnotation > > & getTagAnnotationList()
Get the TagAnnotation list.
Definition: StructuredAnnotations.cpp:874
void removeFileAnnotation(ome::compat::shared_ptr< ome::xml::model::FileAnnotation > &fileAnnotation)
Remove FileAnnotation.
Definition: StructuredAnnotations.cpp:509
ome::compat::shared_ptr< ome::xml::model::BooleanAnnotation > & getBooleanAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::BooleanAnnotation > >::size_type index)
Get BooleanAnnotation.
Definition: StructuredAnnotations.cpp:770
std::vector< ome::compat::shared_ptr< ome::xml::model::TermAnnotation > >::size_type sizeOfTermAnnotationList() const
Get size of linked TermAnnotation list.
Definition: StructuredAnnotations.cpp:926
std::vector< ome::compat::shared_ptr< ome::xml::model::MapAnnotation > > & getMapAnnotationList()
Get the MapAnnotation list.
Definition: StructuredAnnotations.cpp:990
std::vector< ome::compat::shared_ptr< ome::xml::model::TagAnnotation > >::size_type sizeOfTagAnnotationList() const
Get size of linked TagAnnotation list.
Definition: StructuredAnnotations.cpp:868
void addTagAnnotation(ome::compat::shared_ptr< ome::xml::model::TagAnnotation > &tagAnnotation)
Add TagAnnotation.
Definition: StructuredAnnotations.cpp:907
void removeDoubleAnnotation(ome::compat::shared_ptr< ome::xml::model::DoubleAnnotation > &doubleAnnotation)
Remove DoubleAnnotation.
Definition: StructuredAnnotations.cpp:683
std::vector< ome::compat::shared_ptr< ome::xml::model::TimestampAnnotation > >::size_type sizeOfTimestampAnnotationList() const
Get size of linked TimestampAnnotation list.
Definition: StructuredAnnotations.cpp:810
void addBooleanAnnotation(ome::compat::shared_ptr< ome::xml::model::BooleanAnnotation > &booleanAnnotation)
Add BooleanAnnotation.
Definition: StructuredAnnotations.cpp:791
std::vector< ome::compat::shared_ptr< ome::xml::model::TermAnnotation > > & getTermAnnotationList()
Get the TermAnnotation list.
Definition: StructuredAnnotations.cpp:932
void addTermAnnotation(ome::compat::shared_ptr< ome::xml::model::TermAnnotation > &termAnnotation)
Add TermAnnotation.
Definition: StructuredAnnotations.cpp:965
void removeXMLAnnotation(ome::compat::shared_ptr< ome::xml::model::XMLAnnotation > &xmlAnnotation)
Remove XMLAnnotation.
Definition: StructuredAnnotations.cpp:451
void removeListAnnotation(ome::compat::shared_ptr< ome::xml::model::ListAnnotation > &listAnnotation)
Remove ListAnnotation.
Definition: StructuredAnnotations.cpp:567
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: StructuredAnnotations.cpp:243
void removeTermAnnotation(ome::compat::shared_ptr< ome::xml::model::TermAnnotation > &termAnnotation)
Remove TermAnnotation.
Definition: StructuredAnnotations.cpp:973
std::vector< ome::compat::shared_ptr< ome::xml::model::LongAnnotation > >::size_type sizeOfLongAnnotationList() const
Get size of linked LongAnnotation list.
Definition: StructuredAnnotations.cpp:578
std::vector< ome::compat::shared_ptr< ome::xml::model::BooleanAnnotation > >::size_type sizeOfBooleanAnnotationList() const
Get size of linked BooleanAnnotation list.
Definition: StructuredAnnotations.cpp:752
void addLongAnnotation(ome::compat::shared_ptr< ome::xml::model::LongAnnotation > &longAnnotation)
Add LongAnnotation.
Definition: StructuredAnnotations.cpp:617
void removeTimestampAnnotation(ome::compat::shared_ptr< ome::xml::model::TimestampAnnotation > &timestampAnnotation)
Remove TimestampAnnotation.
Definition: StructuredAnnotations.cpp:857
std::vector< ome::compat::shared_ptr< ome::xml::model::LongAnnotation > > & getLongAnnotationList()
Get the LongAnnotation list.
Definition: StructuredAnnotations.cpp:584
void addListAnnotation(ome::compat::shared_ptr< ome::xml::model::ListAnnotation > &listAnnotation)
Add ListAnnotation.
Definition: StructuredAnnotations.cpp:559
ome::compat::shared_ptr< ome::xml::model::XMLAnnotation > & getXMLAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::XMLAnnotation > >::size_type index)
Get XMLAnnotation.
Definition: StructuredAnnotations.cpp:422
std::vector< ome::compat::shared_ptr< ome::xml::model::CommentAnnotation > > & getCommentAnnotationList()
Get the CommentAnnotation list.
Definition: StructuredAnnotations.cpp:700
void setLongAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::LongAnnotation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::LongAnnotation > &longAnnotation)
Set LongAnnotation.
Definition: StructuredAnnotations.cpp:608
std::vector< ome::compat::shared_ptr< ome::xml::model::TimestampAnnotation > > & getTimestampAnnotationList()
Get the TimestampAnnotation list.
Definition: StructuredAnnotations.cpp:816
virtual ~StructuredAnnotations()
Destructor.
Definition: StructuredAnnotations.cpp:214
std::vector< ome::compat::shared_ptr< ome::xml::model::XMLAnnotation > >::size_type sizeOfXMLAnnotationList() const
Get size of linked XMLAnnotation list.
Definition: StructuredAnnotations.cpp:404
void setBooleanAnnotation(std::vector< ome::compat::shared_ptr< ome::xml::model::BooleanAnnotation > >::size_type index, ome::compat::shared_ptr< ome::xml::model::BooleanAnnotation > &booleanAnnotation)
Set BooleanAnnotation.
Definition: StructuredAnnotations.cpp:782