Pleora Technologies Inc. eBUS SDK v6.4.0.6670 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 
26 
27 #ifdef PV_INTERNAL_HEADERS
28  class PvGenBoolean;
29  class PvGenCommand;
30  class PvGenEnum;
31  class PvGenFloat;
32  class PvGenInteger;
33  class PvGenRegister;
34  class PvGenString;
35 #endif // PV_INTERNAL_HEADERS
36 
37 
44 {
45 public:
46 
52  PV_GENICAM_API PvString GetName() const;
53 
61  PV_GENICAM_API PvResult GetName( PvString &aName ) const;
62 
72  PV_GENICAM_API PvResult GetType( PvGenType &aType ) const;
73 
84  PV_GENICAM_API PvResult GetCategory( PvString &aCategory ) const;
85 
96  PV_GENICAM_API PvResult GetToolTip( PvString &aToolTip ) const;
97 
111  PV_GENICAM_API PvResult GetDescription( PvString &aDescription ) const;
112 
127  PV_GENICAM_API PvResult GetDisplayName( PvString &aDisplayName ) const;
128 
141  PV_GENICAM_API PvResult GetNameSpace( PvGenNameSpace &aNameSpace ) const;
142 
155  PV_GENICAM_API PvResult IsValueCached( bool &aCached ) const;
156 
175  PV_GENICAM_API PvResult IsPersistent( bool &aPersistent ) const;
176 
191  PV_GENICAM_API PvResult IsImplemented( bool &aImplemented ) const;
192 
203  PV_GENICAM_API PvResult IsAvailable( bool &aAvailable ) const;
204 
215  PV_GENICAM_API PvResult IsWritable( bool &aWritable ) const;
216 
230  PV_GENICAM_API PvResult IsReadable( bool &aReadable ) const;
231 
245  PV_GENICAM_API PvResult IsStreamable( bool &aStreamable ) const;
246 
255  PV_GENICAM_API bool IsValueCached() const;
256 
262  PV_GENICAM_API bool IsPersistent() const;
263 
273  PV_GENICAM_API bool IsImplemented() const;
274 
280  PV_GENICAM_API bool IsAvailable() const;
281 
287  PV_GENICAM_API bool IsWritable() const;
288 
297  PV_GENICAM_API bool IsReadable() const;
298 
306  PV_GENICAM_API bool IsVisible( PvGenVisibility aCurrentVisibility ) const;
307 
316  PV_GENICAM_API bool IsStreamable() const;
317 
332  PV_GENICAM_API PvResult GetVisibility( PvGenVisibility &aVisibility ) const;
333 
349  PV_GENICAM_API PvResult IsVisible( PvGenVisibility aCurrentVisibility, bool &aVisible ) const;
350 
361  PV_GENICAM_API PvResult IsSelector( bool &aSelector ) const;
362 
375  PV_GENICAM_API PvResult GetSelectedParameters( PvGenParameterList &aList ) const;
376 
389  PV_GENICAM_API PvResult GetSelectingParameters( PvGenParameterList &aList ) const;
390 
405  PV_GENICAM_API PvResult RegisterEventSink( PvGenEventSink *aEventSink );
406 
418  PV_GENICAM_API PvResult UnregisterEventSink( PvGenEventSink *aEventSink );
419 
425  PV_GENICAM_API PvString ToString() const;
426 
439  PV_GENICAM_API PvResult ToString( PvString &aValue ) const;
440 
453  PV_GENICAM_API PvResult FromString( const PvString &aValue );
454 
466  PV_GENICAM_API PV_GENAPI_NS::INode *GetNode();
467 
473  PV_GENICAM_API bool GetUpdatesEnabled();
474 
480  PV_GENICAM_API void SetUpdatesEnabled( bool aEnabled );
481 
482 protected:
483 
487  PvGenParameter();
488 
492  virtual ~PvGenParameter();
493 
494 #ifndef PV_GENERATING_DOXYGEN_DOC
495 
496  PvGenICamLib::GenParameterInternal *mThis;
497 
498  friend class PvGenICamLib::GenParameterArray;
499  friend class PvGenICamLib::GenParameterArrayManager;
500 
501 #endif // PV_GENERATING_DOXYGEN_DOC
502 
503 private:
504 
505  // Not implemented
506  PvGenParameter( const PvGenParameter & );
507  const PvGenParameter &operator=( const PvGenParameter & );
508 
509 };
510 
518 {
519 public:
520 
528  virtual void OnParameterUpdate( PvGenParameter *aParameter ) = 0;
529 
530 };
531 
532 #endif
GenICam feature-related constants.
PvGenVisibility
Feature (PvGenParameter object) visibility.
Definition: PvGenTypes.h:61
PvGenType
Feature data type (Boolean, integer, etc.)
Definition: PvGenTypes.h:109
GenICam feature: Boolean. A feature which can either be true or false.
Definition: PvGenBoolean.h:22
GenICam feature: Command. A feature which can only be activated.
Definition: PvGenCommand.h:20
GenICam feature: Enumeration. A feature which can take one of many defined values.
Definition: PvGenEnum.h:50
Observer interface for an observable PvGenParameter object.
Definition: PvGenParameter.h:518
virtual void OnParameterUpdate(PvGenParameter *aParameter)=0
Callback that is invoked when a feature's value is updated.
GenICam feature: Float.
Definition: PvGenFloat.h:21
GenICam feature: Integer.
Definition: PvGenInteger.h:21
Base class for all GenICam feature types.
Definition: PvGenParameter.h:44
PvResult GetCategory(PvString &aCategory) const
Get the parameter's category.
Definition: PvGenParameter.cpp:152
PvResult GetDisplayName(PvString &aDisplayName) const
Get the parameter's display name.
Definition: PvGenParameter.cpp:230
PvString GetName() const
Get the parameter's name.
Definition: PvGenParameter.cpp:53
bool IsAvailable() const
Test if the parameter is currently available, but may be available latter on.
Definition: PvGenParameter.cpp:437
bool IsPersistent() const
Test if the parameter is to be considered when saving the state of a GenICam interface to disk.
Definition: PvGenParameter.cpp:359
PvResult GetSelectedParameters(PvGenParameterList &aList) const
Returns all parameters selected by this parameter.
Definition: PvGenParameter.cpp:704
PvResult RegisterEventSink(PvGenEventSink *aEventSink)
Register an event sink interface that will be used for callbacks on this parameter.
Definition: PvGenParameter.cpp:793
PvResult UnregisterEventSink(PvGenEventSink *aEventSink)
Unregister an event sink.
Definition: PvGenParameter.cpp:827
void SetUpdatesEnabled(bool aEnabled)
Temporarily disable (or re-enable) parameter update notifications.
Definition: PvGenParameter.cpp:947
bool IsVisible(PvGenVisibility aCurrentVisibility) const
Test if the parameter is visible at the specified visibilty level.
Definition: PvGenParameter.cpp:664
PvResult FromString(const PvString &aValue)
Sets the parameter value from a string.
Definition: PvGenParameter.cpp:911
PvGenParameter()
Constructor.
Definition: PvGenParameter.cpp:32
bool IsReadable() const
Test if the parameter is readable.
Definition: PvGenParameter.cpp:515
bool IsStreamable() const
Test if the parameter is streamable.
Definition: PvGenParameter.cpp:554
PvString ToString() const
Gets the parameter value as a string.
Definition: PvGenParameter.cpp:862
bool GetUpdatesEnabled()
Returns true if parameter update notifications are temporarily disabled.
Definition: PvGenParameter.cpp:937
PV_GENAPI_NS::INode * GetNode()
Returns the GenApi node wrapped by this PvGenParameter.
Definition: PvGenParameter.cpp:959
PvResult GetToolTip(PvString &aToolTip) const
Get the parameter's tool tip.
Definition: PvGenParameter.cpp:178
PvResult GetSelectingParameters(PvGenParameterList &aList) const
Returns all selectors for this parameter.
Definition: PvGenParameter.cpp:748
PvResult GetVisibility(PvGenVisibility &aVisibility) const
Get the parameter's recommended user level (visibility)
Definition: PvGenParameter.cpp:567
PvResult GetDescription(PvString &aDescription) const
Get the parameter's description.
Definition: PvGenParameter.cpp:204
bool IsValueCached() const
Test if the parameter's value is cached in the PC.
Definition: PvGenParameter.cpp:320
bool IsWritable() const
Test if the parameter is writable.
Definition: PvGenParameter.cpp:476
bool IsImplemented() const
Test if the parameter is implemented.
Definition: PvGenParameter.cpp:398
PvResult IsSelector(bool &aSelector) const
Queries whether this parameter is a selector or not.
Definition: PvGenParameter.cpp:676
virtual ~PvGenParameter()
Destructor.
Definition: PvGenParameter.cpp:38
PvResult GetType(PvGenType &aType) const
Get the parameter's type.
Definition: PvGenParameter.cpp:93
PvResult GetNameSpace(PvGenNameSpace &aNameSpace) const
Get the parameter's name space.
Definition: PvGenParameter.cpp:256
Class used to hold a group of PvGenParameter pointers.
Definition: PvGenParameterList.h:59
GenICam feature: Register, or IRegister. A feature providing direct access to a section of the device...
Definition: PvGenRegister.h:20
GenICam feature: String.
Definition: PvGenString.h:21
Result information.
Definition: PvResult.h:30
String class.
Definition: PvString.h:26

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