Pleora Technologies Inc. eBUS SDK v5.1.10.4642 API



PvGenParameter.h
1 // *****************************************************************************
2 //
3 // Copyright (c) 2007, Pleora Technologies Inc., All rights reserved.
4 //
5 // *****************************************************************************
6 
7 #ifndef __PVGENPARAMETER_H__
8 #define __PVGENPARAMETER_H__
9 
10 #include <PvGenICamLib.h>
11 #include <PvGenParameterList.h>
12 #include <PvGenTypes.h>
13 #include <PvGenApi.h>
14 
15 
16 class PvGenEventSink;
17 class PvGenParameterList;
18 
19 namespace PvGenICamLib
20 {
21  class GenParameterArray;
22  class GenParameterInternal;
23  class GenParameterArrayManager;
24 
25 }; // namespace PvGenICamLib
26 
27 
28 #ifdef PV_INTERNAL_HEADERS
29  class PvGenBoolean;
30  class PvGenCommand;
31  class PvGenEnum;
32  class PvGenFloat;
33  class PvGenInteger;
34  class PvGenRegister;
35  class PvGenString;
36 #endif // PV_INTERNAL_HEADERS
37 
39 {
40 public:
41 
42  PV_GENICAM_API PvString GetName() const;
43  PV_GENICAM_API PvResult GetName( PvString &aName ) const;
44  PV_GENICAM_API PvResult GetType( PvGenType &aType ) const;
45  PV_GENICAM_API PvResult GetCategory( PvString &aCategory ) const;
46  PV_GENICAM_API PvResult GetToolTip( PvString &aToolTip ) const;
47  PV_GENICAM_API PvResult GetDescription( PvString &aDescription ) const;
48  PV_GENICAM_API PvResult GetDisplayName( PvString &aDisplayName ) const;
49  PV_GENICAM_API PvResult GetNameSpace( PvGenNameSpace &aNameSpace ) const;
50 
51  PV_GENICAM_API PvResult IsValueCached( bool &aCached ) const;
52  PV_GENICAM_API PvResult IsPersistent( bool &aPersistent ) const;
53  PV_GENICAM_API PvResult IsImplemented( bool &aImplemented ) const;
54  PV_GENICAM_API PvResult IsAvailable( bool &aAvailable ) const;
55  PV_GENICAM_API PvResult IsWritable( bool &aWritable ) const;
56  PV_GENICAM_API PvResult IsReadable( bool &aReadable ) const;
57  PV_GENICAM_API PvResult IsStreamable( bool &aStreamable ) const;
58 
59  PV_GENICAM_API bool IsValueCached() const;
60  PV_GENICAM_API bool IsPersistent() const;
61  PV_GENICAM_API bool IsImplemented() const;
62  PV_GENICAM_API bool IsAvailable() const;
63  PV_GENICAM_API bool IsWritable() const;
64  PV_GENICAM_API bool IsReadable() const;
65  PV_GENICAM_API bool IsVisible( PvGenVisibility aCurrentVisibility ) const;
66  PV_GENICAM_API bool IsStreamable() const;
67 
68  PV_GENICAM_API PvResult GetVisibility( PvGenVisibility &aVisibility ) const;
69  PV_GENICAM_API PvResult IsVisible( PvGenVisibility aCurrentVisibility, bool &aVisible ) const;
70 
71  PV_GENICAM_API PvResult IsSelector( bool &aSelector ) const;
72  PV_GENICAM_API PvResult GetSelectedParameters( PvGenParameterList &aList ) const;
73  PV_GENICAM_API PvResult GetSelectingParameters( PvGenParameterList &aList ) const;
74 
75  PV_GENICAM_API PvResult RegisterEventSink( PvGenEventSink *aEventSink );
76  PV_GENICAM_API PvResult UnregisterEventSink( PvGenEventSink *aEventSink );
77 
78  PV_GENICAM_API PvString ToString() const;
79  PV_GENICAM_API PvResult ToString( PvString &aValue ) const;
80  PV_GENICAM_API PvResult FromString( const PvString &aValue );
81 
82  PV_GENICAM_API PV_GENAPI_NS::INode *GetNode();
83 
84  // Temporarily disable (or re-enable) parameter update notifications
85  PV_GENICAM_API bool GetUpdatesEnabled();
86  PV_GENICAM_API void SetUpdatesEnabled( bool aEnabled );
87 
88 protected:
89 
91  virtual ~PvGenParameter();
92 
93 #ifndef PV_GENERATING_DOXYGEN_DOC
94 
95  PvGenICamLib::GenParameterInternal *mThis;
96 
97  friend class PvGenICamLib::GenParameterArray;
98  friend class PvGenICamLib::GenParameterArrayManager;
99 
100 #endif // PV_GENERATING_DOXYGEN_DOC
101 
102 private:
103 
104  // Not implemented
105  PvGenParameter( const PvGenParameter & );
106  const PvGenParameter &operator=( const PvGenParameter & );
107 
108 };
109 
110 
112 {
113 public:
114 
115  virtual void OnParameterUpdate( PvGenParameter *aParameter ) = 0;
116 
117 };
118 
119 #endif
Class used to hold a group of PvGenParameter pointers.
Definition: PvGenParameterList.h:23
PvGenVisibility
Feature (PvGenParameter object) visibility.
Definition: PvGenTypes.h:11
String class.
Definition: PvString.h:21
Definition: PvGenCategory.h:15
Result information.
Definition: PvResult.h:13
GenICam feature: Float.
Definition: PvGenFloat.h:13
GenICam feature: Enumeration. A feature which can take one of many defined values.
Definition: PvGenEnum.h:14
GenICam feature-related constants.
GenICam feature: Boolean. A feature which can either be true or false.
Definition: PvGenBoolean.h:13
GenICam feature: Command. A feature which can only be activated.
Definition: PvGenCommand.h:13
Observer interface for an observable PvGenParameter object.
Definition: PvGenParameter.h:111
Base class for all GenICam feature types.
Definition: PvGenParameter.h:38
PvGenType
Feature data type (Boolean, integer, etc.)
Definition: PvGenTypes.h:22
GenICam feature: Integer.
Definition: PvGenInteger.h:13
GenICam feature: String.
Definition: PvGenString.h:13
GenICam feature: Register, or IRegister. A feature providing direct access to a section of the device...
Definition: PvGenRegister.h:13

Copyright (c) 2002-2018 Pleora Technologies Inc.
www.pleora.com