ome-xml 5.2.0

- Main Page
- Related Pages
- Namespaces
- Classes
- Files

- File List

Channel.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_CHANNEL_H
47 #define OME_XML_MODEL_CHANNEL_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/DetectorSettings.h>
63 #include <ome/xml/model/FilterSet.h>
64 #include <ome/xml/model/LightPath.h>
65 #include <ome/xml/model/LightSourceSettings.h>
66 #include <ome/xml/model/Pixels.h>
67 #include <ome/xml/model/detail/OMEModelObject.h>
68 #include <ome/xml/model/enums/AcquisitionMode.h>
69 #include <ome/xml/model/enums/ContrastMethod.h>
70 #include <ome/xml/model/enums/IlluminationType.h>
71 #include <ome/xml/model/primitives/Color.h>
72 #include <ome/xml/model/primitives/PositiveInteger.h>
73
74 namespace ome
75 {
76 namespace xml
77 {
78 namespace model
79 {
80
81 // Forward declarations.
82 class Annotation;
83 class OMEModel;
84
88 class Channel : public detail::OMEModelObject
89 {
90 private:
91 class Impl;
93 ome::compat::shared_ptr<Impl> impl;
94
95 public:
97 Channel();
98
104 Channel (const Channel& copy);
105
107 virtual
108 ~Channel ();
109
124 static ome::compat::shared_ptr< Channel>
125 create(const common::xml::dom::Element& element,
126 ome::xml::model::OMEModel& model);
127
128 // Documented in superclass.
129 const std::string&
130 elementName() const;
131
132 // Documented in superclass.
133 bool
134 validElementName(const std::string& name) const;
135
136
137 // -- OMEModelObject API methods --
138
140 virtual void
141 update(const common::xml::dom::Element& element,
142 ome::xml::model::OMEModel& model);
143
144 public:
145 // -- Channel API methods --
146
148 bool
149 link (ome::compat::shared_ptr<Reference>& reference,
150 ome::compat::shared_ptr< ome::xml::model::OMEModelObject>& object);
151
157 ome::compat::shared_ptr<double>
158 getPinholeSize ();
159
165 const ome::compat::shared_ptr<double>
166 getPinholeSize () const;
167
173 void
174 setPinholeSize (ome::compat::shared_ptr<double>& pinholeSize);
175
181 ome::compat::shared_ptr<std::string>
182 getName ();
183
189 const ome::compat::shared_ptr<std::string>
190 getName () const;
191
197 void
198 setName (ome::compat::shared_ptr<std::string>& name);
199
205 ome::compat::shared_ptr<ome::xml::model::enums::AcquisitionMode>
206 getAcquisitionMode ();
207
213 const ome::compat::shared_ptr<ome::xml::model::enums::AcquisitionMode>
214 getAcquisitionMode () const;
215
221 void
222 setAcquisitionMode (ome::compat::shared_ptr<ome::xml::model::enums::AcquisitionMode>& acquisitionMode);
223
229 ome::compat::shared_ptr<ome::xml::model::primitives::Color>
230 getColor ();
231
237 const ome::compat::shared_ptr<ome::xml::model::primitives::Color>
238 getColor () const;
239
245 void
246 setColor (ome::compat::shared_ptr<ome::xml::model::primitives::Color>& color);
247
253 ome::compat::shared_ptr<ome::xml::model::enums::ContrastMethod>
254 getContrastMethod ();
255
261 const ome::compat::shared_ptr<ome::xml::model::enums::ContrastMethod>
262 getContrastMethod () const;
263
269 void
270 setContrastMethod (ome::compat::shared_ptr<ome::xml::model::enums::ContrastMethod>& contrastMethod);
271
277 ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
278 getExcitationWavelength ();
279
285 const ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
286 getExcitationWavelength () const;
287
293 void
294 setExcitationWavelength (ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>& excitationWavelength);
295
301 ome::compat::shared_ptr<ome::xml::model::enums::IlluminationType>
302 getIlluminationType ();
303
309 const ome::compat::shared_ptr<ome::xml::model::enums::IlluminationType>
310 getIlluminationType () const;
311
317 void
318 setIlluminationType (ome::compat::shared_ptr<ome::xml::model::enums::IlluminationType>& illuminationType);
319
325 ome::compat::shared_ptr<std::string>
326 getFluor ();
327
333 const ome::compat::shared_ptr<std::string>
334 getFluor () const;
335
341 void
342 setFluor (ome::compat::shared_ptr<std::string>& fluor);
343
349 ome::compat::shared_ptr<int32_t>
350 getPockelCellSetting ();
351
357 const ome::compat::shared_ptr<int32_t>
358 getPockelCellSetting () const;
359
365 void
366 setPockelCellSetting (ome::compat::shared_ptr<int32_t>& pockelCellSetting);
367
373 ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
374 getEmissionWavelength ();
375
381 const ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
382 getEmissionWavelength () const;
383
389 void
390 setEmissionWavelength (ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>& emissionWavelength);
391
397 ome::compat::shared_ptr<double>
398 getNDFilter ();
399
405 const ome::compat::shared_ptr<double>
406 getNDFilter () const;
407
413 void
414 setNDFilter (ome::compat::shared_ptr<double>& ndFilter);
415
421 const std::string&
422 getID () const;
423
429 void
430 setID (const std::string& id);
431
437 ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
438 getSamplesPerPixel ();
439
445 const ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>
446 getSamplesPerPixel () const;
447
453 void
454 setSamplesPerPixel (ome::compat::shared_ptr<ome::xml::model::primitives::PositiveInteger>& samplesPerPixel);
455
461 ome::compat::shared_ptr<ome::xml::model::LightSourceSettings>
462 getLightSourceSettings ();
463
469 const ome::compat::shared_ptr<ome::xml::model::LightSourceSettings>
470 getLightSourceSettings () const;
471
477 void
478 setLightSourceSettings (ome::compat::shared_ptr<ome::xml::model::LightSourceSettings>& lightSourceSettings);
479
485 ome::compat::shared_ptr<ome::xml::model::DetectorSettings>
486 getDetectorSettings ();
487
493 const ome::compat::shared_ptr<ome::xml::model::DetectorSettings>
494 getDetectorSettings () const;
495
501 void
502 setDetectorSettings (ome::compat::shared_ptr<ome::xml::model::DetectorSettings>& detectorSettings);
503
510 ome::compat::weak_ptr<ome::xml::model::FilterSet>
511 getLinkedFilterSet ();
512
519 const ome::compat::weak_ptr<ome::xml::model::FilterSet>
520 getLinkedFilterSet () const;
521
527 void
528 linkFilterSet (ome::compat::shared_ptr<ome::xml::model::FilterSet>& filterSet);
529
539 void
540 unlinkFilterSet (ome::compat::shared_ptr<ome::xml::model::FilterSet>& filterSet);
541
547 OMEModelObject::indexed_container<ome::xml::model::Annotation, ome::compat::weak_ptr>::type::size_type
548 sizeOfLinkedAnnotationList () const;
549
555 OMEModelObject::indexed_container<ome::xml::model::Annotation, ome::compat::weak_ptr>::type
556 getLinkedAnnotationList () const;
557
565 const ome::compat::weak_ptr<ome::xml::model::Annotation>&
566 getLinkedAnnotation (OMEModelObject::indexed_container<ome::xml::model::Annotation, ome::compat::weak_ptr>::type::size_type index) const;
567
578 const ome::compat::weak_ptr<ome::xml::model::Annotation>&
579 setLinkedAnnotation (OMEModelObject::indexed_container<ome::xml::model::Annotation, ome::compat::weak_ptr>::type::size_type index,
580 const ome::compat::shared_ptr<ome::xml::model::Annotation>& annotation);
581
592 bool
593 linkAnnotation (const ome::compat::shared_ptr<ome::xml::model::Annotation>& annotation);
594
610 bool
611 unlinkAnnotation (const ome::compat::shared_ptr<ome::xml::model::Annotation>& annotation);
612
618 ome::compat::shared_ptr<ome::xml::model::LightPath>
619 getLightPath ();
620
626 const ome::compat::shared_ptr<ome::xml::model::LightPath>
627 getLightPath () const;
628
634 void
635 setLightPath (ome::compat::shared_ptr<ome::xml::model::LightPath>& lightPath);
636
642 ome::compat::weak_ptr<ome::xml::model::Pixels>
643 getPixels ();
644
650 const ome::compat::weak_ptr<ome::xml::model::Pixels>
651 getPixels () const;
652
658 void
659 setPixels (ome::compat::weak_ptr<ome::xml::model::Pixels>& pixels_BackReference);
660
661
663 virtual common::xml::dom::Element
664 asXMLElement (common::xml::dom::Document& document) const;
665
666
667 protected:
668 // Documented in base class.
669 virtual common::xml::dom::Element
670 asXMLElementInternal (common::xml::dom::Document& document,
671 common::xml::dom::Element& element) const;
672
673 public:
674 // Documented in superclass.
675 const std::string&
676 getXMLNamespace() const;
677 };
678
679 }
680 }
681 }
682
683 #endif // OME_XML_MODEL_CHANNEL_H
684
685 /*
686 * Local Variables:
687 * mode:C++
688 * End:
689 */
ome::xml::model::OMEModel
OME model interface (abstract top-level container)
Definition: OMEModel.h:62
ome::xml::model::Channel::setDetectorSettings
void setDetectorSettings(ome::compat::shared_ptr< ome::xml::model::DetectorSettings > &detectorSettings)
Set the DetectorSettings property.
Definition: Channel.cpp:850
ome::xml::model::Channel::getFluor
ome::compat::shared_ptr< std::string > getFluor()
Get the Fluor property.
Definition: Channel.cpp:696
ome::xml::model::Channel::getSamplesPerPixel
ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > getSamplesPerPixel()
Get the SamplesPerPixel property.
Definition: Channel.cpp:794
ome::xml::model::Channel::setColor
void setColor(ome::compat::shared_ptr< ome::xml::model::primitives::Color > &color)
Set the Color property.
Definition: Channel.cpp:626
ome::xml::model::Channel::getContrastMethod
ome::compat::shared_ptr< ome::xml::model::enums::ContrastMethod > getContrastMethod()
Get the ContrastMethod property.
Definition: Channel.cpp:633
ome::xml::model::Channel::Channel
Channel()
Default constructor.
Definition: Channel.cpp:257
ome::xml::model::Channel::linkFilterSet
void linkFilterSet(ome::compat::shared_ptr< ome::xml::model::FilterSet > &filterSet)
Link FilterSet.
Definition: Channel.cpp:870
ome::xml::model::Channel::getName
ome::compat::shared_ptr< std::string > getName()
Get the Name property.
Definition: Channel.cpp:570
ome::xml::model::Channel::getXMLNamespace
const std::string & getXMLNamespace() const
Get the XML namespace for this model object.
Definition: Channel.cpp:1230
ome::xml::model::Channel::impl
ome::compat::shared_ptr< Impl > impl
Private implementation details.
Definition: Channel.h:91
ome::xml::model::Channel::update
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: Channel.cpp:306
ome::xml::model::Channel::getPixels
ome::compat::weak_ptr< ome::xml::model::Pixels > getPixels()
Get the Pixels property.
Definition: Channel.cpp:967
ome::xml::model::Channel::setSamplesPerPixel
void setSamplesPerPixel(ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > &samplesPerPixel)
Set the SamplesPerPixel property.
Definition: Channel.cpp:808
ome::xml::model::Channel::~Channel
virtual ~Channel()
Destructor.
Definition: Channel.cpp:276
ome::xml::model::Channel::validElementName
bool validElementName(const std::string &name) const
Check if a given element name is valid for processing by this model object.
Definition: Channel.cpp:297
ome::common::xml::dom::Document
ome::common::xml::dom::Element
ome::xml::model::detail::OMEModelObject
OME model object (concrete implementation).
Definition: OMEModelObject.h:64
ome::xml::model::Channel::getLinkedAnnotationList
OMEModelObject::indexed_container< ome::xml::model::Annotation, ome::compat::weak_ptr >::type getLinkedAnnotationList() const
Get the linked Annotation list.
Definition: Channel.cpp:892
ome::xml::model::OMEModelObject::indexed_container::type
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
ome::xml::model::Channel
Channel model object.
Definition: Channel.h:88
ome::xml::model::Channel::getLinkedAnnotation
const ome::compat::weak_ptr< ome::xml::model::Annotation > & getLinkedAnnotation(OMEModelObject::indexed_container< ome::xml::model::Annotation, ome::compat::weak_ptr >::type::size_type index) const
Get linked Annotation.
Definition: Channel.cpp:898
ome::xml::model::Channel::getID
const std::string & getID() const
Get the ID property.
Definition: Channel.cpp:780
ome::xml::model::Channel::setNDFilter
void setNDFilter(ome::compat::shared_ptr< double > &ndFilter)
Set the NDFilter property.
Definition: Channel.cpp:773
ome::xml::model::Channel::getPinholeSize
ome::compat::shared_ptr< double > getPinholeSize()
Get the PinholeSize property.
Definition: Channel.cpp:549
ome::xml::model::Channel::setFluor
void setFluor(ome::compat::shared_ptr< std::string > &fluor)
Set the Fluor property.
Definition: Channel.cpp:710
ome::xml::model::Channel::getExcitationWavelength
ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > getExcitationWavelength()
Get the ExcitationWavelength property.
Definition: Channel.cpp:654
ome::xml::model::Channel::setContrastMethod
void setContrastMethod(ome::compat::shared_ptr< ome::xml::model::enums::ContrastMethod > &contrastMethod)
Set the ContrastMethod property.
Definition: Channel.cpp:647
ome::xml::model::Channel::setLightPath
void setLightPath(ome::compat::shared_ptr< ome::xml::model::LightPath > &lightPath)
Set the LightPath property.
Definition: Channel.cpp:960
ome::xml::model::OMEModelObject::indexed_container
Multi-index container for efficient ordered insertion and deletion of model object references...
Definition: OMEModelObject.h:85
ome::xml::model::Channel::getEmissionWavelength
ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > getEmissionWavelength()
Get the EmissionWavelength property.
Definition: Channel.cpp:738
ome::xml::model::Channel::linkAnnotation
bool linkAnnotation(const ome::compat::shared_ptr< ome::xml::model::Annotation > &annotation)
Link Annotation.
Definition: Channel.cpp:914
ome
Open Microscopy Environment C++ implementation.
ome::xml::model::Channel::getAcquisitionMode
ome::compat::shared_ptr< ome::xml::model::enums::AcquisitionMode > getAcquisitionMode()
Get the AcquisitionMode property.
Definition: Channel.cpp:591
ome::xml::model::Channel::Impl
Private implementation details of Channel model object.
Definition: Channel.cpp:91
ome::xml::model::Channel::setEmissionWavelength
void setEmissionWavelength(ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > &emissionWavelength)
Set the EmissionWavelength property.
Definition: Channel.cpp:752
ome::xml::model::Channel::getLightSourceSettings
ome::compat::shared_ptr< ome::xml::model::LightSourceSettings > getLightSourceSettings()
Get the LightSourceSettings property.
Definition: Channel.cpp:815
ome::xml::model::Channel::setName
void setName(ome::compat::shared_ptr< std::string > &name)
Set the Name property.
Definition: Channel.cpp:584
ome::xml::model::Channel::getNDFilter
ome::compat::shared_ptr< double > getNDFilter()
Get the NDFilter property.
Definition: Channel.cpp:759
ome::xml::model::Channel::setLinkedAnnotation
const ome::compat::weak_ptr< ome::xml::model::Annotation > & setLinkedAnnotation(OMEModelObject::indexed_container< ome::xml::model::Annotation, ome::compat::weak_ptr >::type::size_type index, const ome::compat::shared_ptr< ome::xml::model::Annotation > &annotation)
Set linked Annotation.
Definition: Channel.cpp:904
ome::xml::model::Channel::setExcitationWavelength
void setExcitationWavelength(ome::compat::shared_ptr< ome::xml::model::primitives::PositiveInteger > &excitationWavelength)
Set the ExcitationWavelength property.
Definition: Channel.cpp:668
ome::xml::model::Channel::getIlluminationType
ome::compat::shared_ptr< ome::xml::model::enums::IlluminationType > getIlluminationType()
Get the IlluminationType property.
Definition: Channel.cpp:675
ome::xml::model::Channel::getDetectorSettings
ome::compat::shared_ptr< ome::xml::model::DetectorSettings > getDetectorSettings()
Get the DetectorSettings property.
Definition: Channel.cpp:836
ome::xml::model::Channel::setLightSourceSettings
void setLightSourceSettings(ome::compat::shared_ptr< ome::xml::model::LightSourceSettings > &lightSourceSettings)
Set the LightSourceSettings property.
Definition: Channel.cpp:829
ome::xml::model::Channel::asXMLElement
virtual common::xml::dom::Element asXMLElement(common::xml::dom::Document &document) const
Transform the object hierarchy rooted at this element to XML.
Definition: Channel.cpp:988
ome::xml::model::Channel::getPockelCellSetting
ome::compat::shared_ptr< int32_t > getPockelCellSetting()
Get the PockelCellSetting property.
Definition: Channel.cpp:717
ome::xml::model::Channel::getLightPath
ome::compat::shared_ptr< ome::xml::model::LightPath > getLightPath()
Get the LightPath property.
Definition: Channel.cpp:946
ome::xml::model::Channel::link
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: Channel.cpp:507
ome::xml::model::Channel::sizeOfLinkedAnnotationList
OMEModelObject::indexed_container< ome::xml::model::Annotation, ome::compat::weak_ptr >::type::size_type sizeOfLinkedAnnotationList() const
Get size of linked Annotation list.
Definition: Channel.cpp:886
ome::xml::model::Channel::setPockelCellSetting
void setPockelCellSetting(ome::compat::shared_ptr< int32_t > &pockelCellSetting)
Set the PockelCellSetting property.
Definition: Channel.cpp:731
ome::xml::model::Channel::unlinkFilterSet
void unlinkFilterSet(ome::compat::shared_ptr< ome::xml::model::FilterSet > &filterSet)
Unlink FilterSet.
Definition: Channel.cpp:876
ome::xml::model::Channel::setPixels
void setPixels(ome::compat::weak_ptr< ome::xml::model::Pixels > &pixels_BackReference)
Set the Pixels property.
Definition: Channel.cpp:981
ome::xml::model::Channel::setID
void setID(const std::string &id)
Set the ID property.
Definition: Channel.cpp:787
ome::xml::model::Channel::setIlluminationType
void setIlluminationType(ome::compat::shared_ptr< ome::xml::model::enums::IlluminationType > &illuminationType)
Set the IlluminationType property.
Definition: Channel.cpp:689
ome::xml::model::Channel::create
static ome::compat::shared_ptr< Channel > create(const common::xml::dom::Element &element, ome::xml::model::OMEModel &model)
Create a Channel model object from DOM element.
Definition: Channel.cpp:281
log.h
ome::xml::model::Channel::getColor
ome::compat::shared_ptr< ome::xml::model::primitives::Color > getColor()
Get the Color property.
Definition: Channel.cpp:612
ome::xml::model::Channel::getLinkedFilterSet
ome::compat::weak_ptr< ome::xml::model::FilterSet > getLinkedFilterSet()
Get linked FilterSet.
Definition: Channel.cpp:857
ome::xml::model::Channel::unlinkAnnotation
bool unlinkAnnotation(const ome::compat::shared_ptr< ome::xml::model::Annotation > &annotation)
Unlink Annotation.
Definition: Channel.cpp:928
ome::xml::model::Channel::asXMLElementInternal
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: Channel.cpp:995
ome::xml::model::Channel::elementName
const std::string & elementName() const
Get the element name of this model object.
Definition: Channel.cpp:290
ome::xml::model::Channel::setAcquisitionMode
void setAcquisitionMode(ome::compat::shared_ptr< ome::xml::model::enums::AcquisitionMode > &acquisitionMode)
Set the AcquisitionMode property.
Definition: Channel.cpp:605
ome::xml::model::Channel::setPinholeSize
void setPinholeSize(ome::compat::shared_ptr< double > &pinholeSize)
Set the PinholeSize property.
Definition: Channel.cpp:563