EnumEntry.h
Go to the documentation of this file.
1 //-----------------------------------------------------------------------------
2 // (c) 2006 by Basler Vision Technologies
3 // Section: Vision Components
4 // Project: GenApi
5 // Author: Margret Albrecht
6 // $Header$
7 //
8 // License: This file is published under the license of the EMVA GenICam Standard Group.
9 // A text file describing the legal terms is included in your installation as 'GenICam_license.pdf'.
10 // If for some reason you are missing this file please contact the EMVA or visit the website
11 // (http://www.genicam.org) for a full copy.
12 //
13 // THIS SOFTWARE IS PROVIDED BY THE EMVA GENICAM STANDARD GROUP "AS IS"
14 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
15 // THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
16 // PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE EMVA GENICAM STANDARD GROUP
17 // OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
18 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
19 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
20 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
21 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22 // ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
23 // POSSIBILITY OF SUCH DAMAGE.
24 //-----------------------------------------------------------------------------
31 #ifndef GENAPI_ENUMENTRY_H
32 #define GENAPI_ENUMENTRY_H
33 
34 #include "../IEnumEntry.h"
35 #include "Node.h"
36 #include "NodeT.h"
37 #include "NodeMap.h"
38 #include "BaseT.h"
39 #include "ValueT.h"
40 #include "EnumEntry.h"
41 
42 namespace GENAPI_NAMESPACE
43 {
44 
46  class CEnumEntryImpl: public CNodeImpl, public IEnumEntry
47  {
48  public:
49  //-------------------------------------------------------------
51 
55 
56  //-------------------------------------------------------------
58 
59 
61  virtual EAccessMode InternalGetAccessMode() const;
62 
63 
66  {
67  return intfIEnumEntry;
68  }
70 
71  //-------------------------------------------------------------
73 
77 
78  //-------------------------------------------------------------
80 
81  virtual void FinalConstruct();
84 
85  //-------------------------------------------------------------
87 
88  virtual GENICAM_NAMESPACE::gcstring InternalToString(bool Verify = false, bool IgnoreCache = false);
90 
92  virtual void InternalFromString(const GENICAM_NAMESPACE::gcstring& ValueStr, bool Verify=true);
94 
95 
96  //-------------------------------------------------------------
98 
100  virtual int64_t GetValue();
101  virtual double GetNumericValue();
102  virtual bool IsSelfClearing();
104 
105 
106 
107  virtual void SetProperty( CProperty &Property );
108  virtual bool GetProperty( CNodeDataMap *pNodeDataMap, CPropertyID::EProperty_ID_t PropertyID, CNodeData::PropertyVector_t &PropertyList ) const;
109 
110 
111  private:
114 
117 
120 
123 
124  };
125 
127  class CEnumEntry : public BaseT< ValueT< NodeT < CEnumEntryImpl > > >
128  {
129  };
130 }
131 
132 #endif // ifndef GENAPI_ENUMENTRY_H
Definition of the ValueT class template.
EYesNo m_IsSelfClearing
Yes if this values will be changed back by the device.
Definition: EnumEntry.h:122
virtual void InternalFromString(const GENICAM_NAMESPACE::gcstring &ValueStr, bool Verify=true)
Set content of the node as string (method not used)
virtual GENICAM_NAMESPACE::gcstring GetSymbolic() const
GENICAM_INTERFACE GENAPI_DECL_ABSTRACT bool Verify
Definition: IBoolean.h:61
virtual void FinalConstruct()
finishes the constriction of the node
virtual GENICAM_NAMESPACE::gcstring InternalToString(bool Verify=false, bool IgnoreCache=false)
Get value of the node as string.
__int64 int64_t
Definition: config-win32.h:21
virtual bool GetProperty(CNodeDataMap *pNodeDataMap, CPropertyID::EProperty_ID_t PropertyID, CNodeData::PropertyVector_t &PropertyList) const
virtual void SetProperty(CProperty &Property)
Implementation of the IBase interface.
Definition: BaseT.h:48
Definition of the NodeT class template.
double m_NumericValue
the numeric value associated with this enum entry
Definition: EnumEntry.h:119
enum GENAPI_NAMESPACE::_EYesNo EYesNo
Defines the choices of a Yes/No alternatives.
virtual EInterfaceType InternalGetPrincipalInterfaceType() const
Implementation of IBase::GetPrincipalInterfaceType()
Definition: EnumEntry.h:65
GENICAM_NAMESPACE::gcstring m_Symbolic
the symbolic name of this entry
Definition: EnumEntry.h:116
GENICAM_NAMESPACE::gcstring InternalGetDisplayName() const
Returns the name to display.
Mapping of Enum Values to symbolic values.
Definition: EnumEntry.h:46
int64_t m_Value
the integer value of this entry
Definition: EnumEntry.h:113
Definition of the BaseT class template.
Standard implementation for the INode and the ISelector interface.
Definition: Node.h:86
virtual EAccessMode InternalGetAccessMode() const
Get the access mode of the node.
A string class which is a clone of std::string.
Definition: GCString.h:52
enum GENAPI_NAMESPACE::_EAccessMode EAccessMode
access mode of a node
Definition of CEnumEntry.
Implements the EnumEntry node.
Definition: EnumEntry.h:127
Declaration of CNodeMap.
IEnumEntry interface.
Definition: Types.h:201
GENICAM_INTERFACE GENAPI_DECL_ABSTRACT IEnumEntry
Interface of single enum value.
Definition: IEnumEntry.h:60
Lexical analyzer for CIntSwissKnife.
Definition: Autovector.h:48
enum GENAPI_NAMESPACE::_EInterfaceType EInterfaceType
typedef for interface type


rc_genicam_api
Author(s): Heiko Hirschmueller
autogenerated on Wed Mar 17 2021 02:48:40