Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00031 #ifndef GENAPI_TXTKEY_H
00032 #define GENAPI_TXTKEY_H
00033
00034 #include "../IString.h"
00035 #include "IEEE1212Parser.h"
00036 #include "Node.h"
00037 #include "BaseT.h"
00038 #include "ValueT.h"
00039 #include "StringT.h"
00040 #include "NodeT.h"
00041
00042 namespace GENAPI_NAMESPACE
00043 {
00044
00045
00046
00047
00055 class CTxtKeyImpl : public IString, public CNodeImpl
00056 {
00057 public:
00059 CTxtKeyImpl();
00060
00061
00062 protected:
00063
00064
00065
00067 #pragma BullseyeCoverage off
00068 virtual void InternalFromString(const GENICAM_NAMESPACE::gcstring& ValueStr, bool )
00069 {
00070
00071 throw LOGICAL_ERROR_EXCEPTION_NODE("NodeImpl %s can't set value from string : %s. Use derived class!", m_Name.c_str(), ValueStr.c_str() );
00072 }
00073 #pragma BullseyeCoverage on
00074
00076 virtual GENICAM_NAMESPACE::gcstring InternalToString(bool Verify = false, bool IgnoreCache = false);
00077
00078 virtual EAccessMode InternalGetAccessMode() const;
00079
00081 virtual EInterfaceType InternalGetPrincipalInterfaceType() const
00082 {
00083 return intfIString;
00084 }
00085
00086
00087 public:
00088
00089
00090
00092
00093 virtual void SetProperty(CProperty &Property);
00094 virtual bool GetProperty(CNodeDataMap *pNodeDataMap, CPropertyID::EProperty_ID_t PropertyID, CNodeData::PropertyVector_t &PropertyList) const;
00095 virtual void FinalConstruct();
00096
00097
00098
00099
00100
00101 protected:
00103 virtual void InternalSetValue(const GENICAM_NAMESPACE::gcstring& Value, bool ){
00104
00105 throw ACCESS_EXCEPTION_NODE("TxtKey : %s SetValue to %s failed. TxtKey is read only", m_Name.c_str(),Value.c_str() );
00106 }
00107
00109 virtual GENICAM_NAMESPACE::gcstring InternalGetValue(bool Verify = false, bool IgnoreCache = false);
00110
00112 virtual int64_t InternalGetMaxLength()
00113 {
00114
00115 throw ACCESS_EXCEPTION_NODE("TxtKey : %s GetMaxLength failed. TxtKey is read only" );
00116 }
00117
00118 protected:
00119
00120
00121
00122
00123
00124
00126 uint16_t m_Key;
00127
00129 GENICAM_NAMESPACE::gcstring m_Value;
00130
00132 CIEEE1212Parser *m_pParser;
00133 };
00134
00135 class CTxtKey : public BaseT< ValueT< NodeT< StringT< CTxtKeyImpl > > > >
00136 {
00137 };
00138
00139 }
00140
00141 #endif // GENAPI_TXTKEY_H