All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Classes | Typedefs | Enumerations | Functions
GenApi Namespace Reference

Contains definitions of the types of GenICam GenApi modules. More...

Classes

struct  AttachStatistics_t
 
class  CChunkAdapter
 Connects a chunked buffer to a node map. More...
 
struct  GVCP_CHUNK_TRAILER
 header of a GVCP request packet More...
 
class  CChunkAdapterGEV
 Connects a chunked DCAM buffer to a node map. More...
 
class  node_vector
 A vector of INode pointers. More...
 
class  value_vector
 A vector of IValue pointers. More...
 
class  CEventAdapter
 Delivers Events to ports. More...
 
class  CEventAdapterGEV
 Connects a GigE Event to a node map. More...
 
struct  IFileProtocolAdapter
 Adapter between the std::iostreambuf and the SFNC Features representing the device filesystem. More...
 
class  FileProtocolAdapter
 Adapter between the std::iostreambuf and the SFNC Features representing the device filesystem. More...
 
struct  IEnumerationT
 Interface for enumeration properties. More...
 
class  CNodeCallback
 callback body instance for INode pointers More...
 
class  Function_NodeCallback
 Container for a function pointer. More...
 
class  Member_NodeCallback
 Container for a member function pointer. More...
 
class  CNodeMapRefT
 Smartpointer template for NodeMaps with create function. More...
 
class  CGeneric_XMLLoaderParams
 Empty base class used by class CNodeMapRef as generic template argument. More...
 
class  CNodeMapRef
 Smartpointer for NodeMaps with create function. More...
 
class  CPointer
 Encapsulates a GenApi pointer dealing with the dynamic_cast automatically. More...
 
class  CFloatPtr
 SmartPointer for IFloat interface pointer. More...
 
class  CFeatureBag
 Bag holding streamable features of a nodetree. More...
 

Typedefs

typedef struct
GenApi::AttachStatistics_t 
AttachStatistics_t
 
typedef struct
GenApi::GVCP_CHUNK_TRAILER 
GVCP_CHUNK_TRAILER
 header of a GVCP request packet
 
typedef value_vector FeatureList_t
 a list of feature references
 
typedef CBaseRefT< IBase > CBaseRef
 
typedef CBooleanRefT< IBoolean > CBooleanRef
 
typedef CCategoryRefT< ICategory > CCategoryRef
 
typedef CCommandRefT< ICommand > CCommandRef
 
typedef CEnumEntryRefT
< IEnumEntry > 
CEnumEntryRef
 
typedef CFloatRefT< IFloat > CFloatRef
 
typedef CIntegerRefT< IInteger > CIntegerRef
 
typedef node_vector NodeList_t
 a list of node references
 
typedef intptr_t CallbackHandleType
 the callback handle for nodes
 
typedef CPortRefT< IPort > CPortRef
 
typedef CRegisterRefT< IRegister > CRegisterRef
 
typedef CSelectorRefT< ISelector > CSelectorRef
 
typedef CStringRefT< IString > CStringRef
 
typedef CValueRefT< IValue > CValueRef
 
typedef enum GenApi::_ECallbackType ECallbackType
 the type of callback
 
typedef CPointer< IBase > CBasePtr
 SmartPointer for IBase interface pointer.
 
typedef CPointer< INode > CNodePtr
 SmartPointer for INode interface pointer.
 
typedef CPointer< IValue > CValuePtr
 SmartPointer for IValue interface pointer.
 
typedef CPointer< ICategory > CCategoryPtr
 SmartPointer for ICategory interface pointer.
 
typedef CPointer< IBoolean > CBooleanPtr
 SmartPointer for IBoolean interface pointer.
 
typedef CPointer< IInteger > CIntegerPtr
 SmartPointer for IInteger interface pointer.
 
typedef CPointer< IString > CStringPtr
 SmartPointer for IString interface pointer.
 
typedef CPointer< IRegister > CRegisterPtr
 SmartPointer for IRegister interface pointer.
 
typedef CPointer< IEnumeration > CEnumerationPtr
 SmartPointer for IEnumeration interface pointer.
 
typedef CPointer< IEnumEntry > CEnumEntryPtr
 SmartPointer for IEnumEntry interface pointer.
 
typedef CPointer< IPort > CPortPtr
 SmartPointer for IPort interface pointer.
 
typedef CPointer< IPortReplay > CPortReplayPtr
 SmartPointer for IPortReplay interface pointer.
 
typedef CPointer< IPortRecorder > CPortRecorderPtr
 SmartPointer for IPortRecorder interface pointer.
 
typedef CPointer
< IPortWriteList,
IPortWriteList > 
CPortWriteListPtr
 SmartPointer for IPortWriteList interface pointer.
 
typedef CPointer< IChunkPort > CChunkPortPtr
 SmartPointer for IChunkPort interface pointer.
 
typedef CPointer< INodeMap,
INodeMap > 
CNodeMapPtr
 SmartPointer for INodeMap interface pointer.
 
typedef CPointer< IDeviceInfo,
INodeMap > 
CDeviceInfoPtr
 SmartPointer for IDeviceInfo interface pointer.
 
typedef CPointer< IUserData,
INodeMap > 
CNodeMapUserDataPtr
 SmartPointer for IUserData interface pointer.
 
typedef CPointer< IUserData > CNodeUserDataPtr
 SmartPointer for IUserData interface pointer.
 
typedef CPointer< ISelector > CSelectorPtr
 SmartPointer for ISelector interface pointer.
 
typedef CPointer< ICommand > CCommandPtr
 SmartPointer for ICommand interface pointer.
 
typedef CPointer< IPortConstruct > CPortConstructPtr
 SmartPointer for IPortConstruct interface pointer.
 
typedef enum GenApi::_ESign ESign
 
typedef enum GenApi::_EAccessMode EAccessMode
 
typedef enum GenApi::_EVisibility EVisibility
 
typedef enum GenApi::_ECachingMode ECachingMode
 
typedef enum
GenApi::_ERepresentation 
ERepresentation
 
typedef enum GenApi::_EEndianess EEndianess
 
typedef enum GenApi::_ENameSpace ENameSpace
 
typedef enum
GenApi::_EStandardNameSpace 
EStandardNameSpace
 
typedef enum GenApi::_EYesNo EYesNo
 
typedef GenICam::gcstring_vector StringList_t
 
typedef enum GenApi::_ESlope ESlope
 
typedef enum
GenApi::_EXMLValidation 
EXMLValidation
 typedef describing the different validity checks which can be performed on an XML file More...
 
typedef enum
GenApi::_EDisplayNotation 
EDisplayNotation
 
typedef enum
GenApi::_EInterfaceType 
EInterfaceType
 
typedef enum GenApi::_ELinkType ELinkType
 typedef for link type More...
 
typedef enum GenApi::_EIncMode EIncMode
 
typedef enum
GenApi::_EInputDirection 
EInputDirection
 
typedef enum
GenApi::_EGenApiSchemaVersion 
EGenApiSchemaVersion
 GenApi schema version.
 

Enumerations

enum  _ECallbackType { , cbPostOutsideLock = 2 }
 the type of callback More...
 
enum  _ESign { Signed, Unsigned, _UndefinedSign }
 
enum  _EAccessMode {
  NI, NA, WO, RO,
  RW, _UndefinedAccesMode, _CycleDetectAccesMode
}
 
enum  _EVisibility {
  Beginner = 0, Expert = 1, Guru = 2, Invisible = 3,
  _UndefinedVisibility = 99
}
 
enum  _ECachingMode { NoCache, WriteThrough, WriteAround, _UndefinedCachingMode }
 
enum  _ERepresentation {
  Linear, Logarithmic, Boolean, PureNumber,
  HexNumber, IPV4Address, MACAddress
}
 
enum  _EEndianess { BigEndian, LittleEndian, _UndefinedEndian }
 
enum  _ENameSpace { Custom, Standard, _UndefinedNameSpace }
 
enum  _EStandardNameSpace {
  None, GEV, IIDC, CL,
  USB, _UndefinedStandardNameSpace
}
 
enum  _EYesNo { Yes = 1, No = 0, _UndefinedYesNo = 2 }
 
enum  _ESlope {
  Increasing, Decreasing, Varying, Automatic,
  _UndefinedESlope
}
 
enum  _EXMLValidation {
  xvLoad = 0x00000001L, xvCycles = 0x00000002L, xvSFNC = 0x00000004L, xvDefault = 0x00000000L,
  xvAll = 0xffffffffL, _UndefinedEXMLValidation = 0x8000000L
}
 typedef describing the different validity checks which can be performed on an XML file More...
 
enum  _EDisplayNotation { fnAutomatic, fnFixed, fnScientific, _UndefinedEDisplayNotation }
 
enum  _EInterfaceType {
  intfIValue, intfIBase, intfIInteger, intfIBoolean,
  intfICommand, intfIFloat, intfIString, intfIRegister,
  intfICategory, intfIEnumeration, intfIEnumEntry, intfIPort
}
 
enum  _ELinkType {
  ctParentNodes, ctReadingChildren, ctWritingChildren, ctInvalidatingChildren,
  ctDependingNodes, ctTerminalNodes
}
 typedef for link type More...
 
enum  _EIncMode
 
enum  _EInputDirection { idFrom, idTo, idNone }
 
enum  _EGenApiSchemaVersion
 GenApi schema version.
 

Functions

struct __attribute__ ((packed)) GVCP_REQUEST_HEADER
 header of a GVCP request packet More...
 
struct __attribute__ ((visibility("default"))) IBase
 Base interface common to all nodes. More...
 
struct virtual __attribute__((visibility("default")))
IBoolean void 
operator= (bool Value)
 Interface for Boolean properties. More...
 
virtual bool GetValue (bool Verify=false, bool IgnoreCache=false) const =0
 Get node value. More...
 
virtual bool operator() () const
 Get node value. More...
 
virtual bool IsDone (bool Verify=true)=0
 Query whether the command is executed. More...
 
struct virtual __attribute__((visibility("default")))
IEnumEntry GenICam::gcstring 
GetSymbolic () const =0
 Interface of single enum value. More...
 
virtual double GetNumericValue ()=0
 Get double number associated with the entry.
 
virtual bool IsSelfClearing ()=0
 Indicates if the corresponding EnumEntry is self clearing.
 
struct virtual __attribute__((visibility("default")))
IEnumeration void 
GetEntries (NodeList_t &Entries)=0
 Interface for enumeration properties. More...
 
virtual IEnumeration & operator= (const GenICam::gcstring &ValueStr)=0
 Set string node value. More...
 
virtual void SetIntValue (int64_t Value, bool Verify=true)=0
 Set integer node value. More...
 
virtual GenICam::gcstring operator* ()=0
 Get string node value. More...
 
virtual int64_t GetIntValue (bool Verify=false, bool IgnoreCache=false)=0
 Get integer node value. More...
 
virtual IEnumEntry * GetEntryByName (const GenICam::gcstring &Symbolic)=0
 Get an entry node by name.
 
virtual IEnumEntry * GetEntry (const int64_t IntValue)=0
 Get an entry node by its IntValue.
 
virtual IEnumEntry * GetCurrentEntry (bool Verify=false, bool IgnoreCache=false)=0
 Get the current entry.
 
struct virtual __attribute__((visibility("default")))
IFloat IFloat & 
operator= (double Value)=0
 Interface for float properties. More...
 
virtual double GetMin ()=0
 Get minimum value allowed.
 
virtual double GetMax ()=0
 Get maximum value allowed.
 
virtual bool HasInc ()=0
 True if the float has a constant increment.
 
virtual EIncMode GetIncMode ()=0
 Get increment mode.
 
virtual double GetInc ()=0
 Get the constant increment if there is any. More...
 
virtual double_autovector_t GetListOfValidValues (bool bounded=true)=0
 Get list of valid value.
 
virtual ERepresentation GetRepresentation ()=0
 Get recommended representation.
 
virtual GenICam::gcstring GetUnit () const =0
 Get the physical unit name.
 
virtual EDisplayNotation GetDisplayNotation () const =0
 Get the way the float should be converted to a string.
 
virtual int64_t GetDisplayPrecision () const =0
 Get the precision to be used when converting the float to a string.
 
virtual void ImposeMin (double Value)=0
 Restrict minimum value.
 
virtual void ImposeMax (double Value)=0
 Restrict maximum value.
 
struct virtual __attribute__((visibility("default")))
IInteger IInteger & 
operator= (int64_t Value)=0
 Interface for integer properties. More...
 
virtual void ImposeMin (int64_t Value)=0
 Restrict minimum value.
 
virtual void ImposeMax (int64_t Value)=0
 Restrict maximum value.
 
struct virtual __attribute__((visibility("default")))
INode GenApi::ENameSpace 
GetNameSpace () const =0
 Interface common to all nodes. More...
 
virtual EVisibility GetVisibility () const =0
 Get the recommended visibility of the node.
 
virtual void InvalidateNode ()=0
 Indicates that the node's value may have changed. More...
 
virtual bool IsCachable () const =0
 Is the node value cachable.
 
virtual EYesNo IsAccessModeCacheable () const =0
 True if the AccessMode can be cached.
 
virtual ECachingMode GetCachingMode () const =0
 Get Caching Mode.
 
virtual int64_t GetPollingTime () const =0
 recommended polling time (for not cachable nodes)
 
virtual GenICam::gcstring GetToolTip () const =0
 Get a short description of the node.
 
virtual GenICam::gcstring GetDescription () const =0
 Get a long description of the node.
 
virtual GenICam::gcstring GetDisplayName () const =0
 Get a name string for display.
 
virtual GenICam::gcstring GetDeviceName () const =0
 Get a name of the device.
 
virtual void GetChildren (GenApi::NodeList_t &Children, ELinkType LinkType=ctReadingChildren) const =0
 Get all nodes this node directly depends on. More...
 
virtual void GetParents (GenApi::NodeList_t &Parents) const =0
 Gets all nodes this node is directly depending on. More...
 
virtual CallbackHandleType RegisterCallback (CNodeCallback *pCallback)=0
 Register change callback. More...
 
virtual bool DeregisterCallback (CallbackHandleType hCallback)=0
 De register change callback. More...
 
virtual INodeMap * GetNodeMap () const =0
 Retrieves the central node map.
 
virtual GenICam::gcstring GetEventID () const =0
 Get the EventId of the node.
 
virtual bool IsStreamable () const =0
 True if the node is streamable.
 
virtual void GetPropertyNames (GenICam::gcstring_vector &PropertyNames) const =0
 Returns a list of the names all properties set during initialization.
 
virtual bool GetProperty (const GenICam::gcstring &PropertyName, GenICam::gcstring &ValueStr, GenICam::gcstring &AttributeStr)=0
 Retrieves a property plus an additional attribute by name. More...
 
virtual void ImposeAccessMode (EAccessMode ImposedAccessMode)=0
 Imposes an access mode to the natural access mode of the node.
 
virtual void ImposeVisibility (EVisibility ImposedVisibility)=0
 Imposes a visibility to the natural visibility of the node.
 
virtual INode * GetAlias () const =0
 Retrieves the a node which describes the same feature in a different way.
 
virtual INode * GetCastAlias () const =0
 Retrieves the a node which describes the same feature so that it can be casted.
 
virtual GenICam::gcstring GetDocuURL () const =0
 Gets a URL pointing to the documentation of that feature.
 
virtual bool IsDeprecated () const =0
 True if the node should not be used any more.
 
virtual EInterfaceType GetPrincipalInterfaceType () const =0
 Get the type of the main interface of a node.
 
virtual bool IsFeature () const =0
 True if the node can be reached via category nodes from a category node named "Root".
 
bool IsReadable (EAccessMode AccessMode)
 Tests if readable.
 
bool IsReadable (const IBase *p)
 Checks if a node is readable.
 
bool IsReadable (const IBase &r)
 Checks if a node is readable.
 
bool IsWritable (EAccessMode AccessMode)
 Tests if writable.
 
bool IsWritable (const IBase *p)
 Checks if a node is writable.
 
bool IsWritable (const IBase &r)
 Checks if a node is writable.
 
bool IsImplemented (EAccessMode AccessMode)
 Tests if implemented.
 
bool IsImplemented (const IBase *p)
 Checks if a node is implemented.
 
bool IsImplemented (const IBase &r)
 Checks if a node is implemented.
 
bool IsAvailable (EAccessMode AccessMode)
 Tests if available.
 
bool IsAvailable (const IBase *p)
 Checks if a node is available.
 
bool IsAvailable (const IBase &r)
 Checks if a node is available.
 
EAccessMode Combine (EAccessMode Peter, EAccessMode Paul)
 Computes which access mode the two guards allow together.
 
bool IsVisible (EVisibility Visibility, EVisibility MaxVisiblity)
 Tests Visibility. More...
 
EVisibility Combine (EVisibility Peter, EVisibility Paul)
 Computes which visibility the two guards allow together.
 
bool IsCacheable (ECachingMode CachingMode)
 Tests Cacheability.
 
ECachingMode Combine (ECachingMode Peter, ECachingMode Paul)
 Computes which CachingMode results from a combination.
 
struct virtual __attribute__((visibility("default")))
IPort void 
Write (const void *pBuffer, int64_t Address, int64_t Length)=0
 Interface for ports. More...
 
struct virtual __attribute__((visibility("default")))
IRegister void 
Get (uint8_t *pBuffer, int64_t Length, bool Verify=false, bool IgnoreCache=false)=0
 Interface for registers. More...
 
virtual int64_t GetLength ()=0
 Retrieves the Length of the register [Bytes].
 
virtual int64_t GetAddress ()=0
 Retrieves the Address of the register.
 
struct virtual __attribute__((visibility("default")))
ISelector void 
GetSelectedFeatures (FeatureList_t &) const =0
 Interface for groups of features selected by a single one. More...
 
virtual void GetSelectingFeatures (FeatureList_t &) const =0
 retrieve the group of features selecting this node
 
virtual int64_t GetMaxLength ()=0
 Retrieves the maximum length of the string in bytes.
 
virtual GenICam::gcstring ToString (bool Verify=false, bool IgnoreCache=false)=0
 Get content of the node as string. More...
 
virtual void FromString (const GenICam::gcstring &ValueStr, bool Verify=true)=0
 Set content of the node as string. More...
 
virtual bool IsValueCacheValid () const =0
 Checks if the value comes from cache or is requested from another node.
 
template<class Function >
CNodeCallbackmake_NodeCallback (INode *pNode, Function function, ECallbackType CallbackType)
 make a new callback object for C functions
 
template<class Function >
intptr_t Register (INode *pNode, Function f, ECallbackType CallbackType=cbPostInsideLock)
 Register a C-function as a callback.
 
template<class Client , class Member >
CNodeCallbackmake_NodeCallback (INode *pNode, Client &client, Member member, ECallbackType CallbackType)
 make a new callback object for member functions
 
template<class Client , class Member >
intptr_t Register (INode *pNode, Client &c, Member m, ECallbackType CallbackType=cbPostInsideLock)
 Register a C++-member function a callback.
 
void Deregister (GenApi::CallbackHandleType pCallbackInfo)
 Unregistering callback by handle.
 
IDestroy * CastToIDestroy (INodeMap *pNodeMap)
 makes sure the dynamic_cast operator is implemented in the DLL (due to a Linux bug)
 
GenICam::gcstring GetInterfaceName (IBase *pBase)
 
template<class T , class B >
bool IsReadable (const CPointer< T, B > &ptr)
 Checks if a node is readable.
 
template<class T , class B >
bool IsWritable (const CPointer< T, B > &ptr)
 Checks if a node is Writable.
 
template<class T , class B >
bool IsImplemented (const CPointer< T, B > &ptr)
 Checks if a node is Implemented.
 
template<class T , class B >
bool IsAvailable (const CPointer< T, B > &ptr)
 Checks if a node is Available.
 
std::istream & EatComments (std::istream &is)
 Helper function ignoring lines starting with comment character '#'.
 
std::istream & operator>> (std::istream &is, CFeatureBag &FeatureBag)
 reads in persistent data from a stream More...
 
std::ostream & operator<< (std::ostream &os, const CFeatureBag &FeatureBag)
 writes out persistent data to a stream More...
 

Detailed Description

Contains definitions of the types of GenICam GenApi modules.

GenApi is an alias for a more complex namespace name, e.g. GenApi_3_0_Basler_pylon_v5_0. Throughout this documentation, only the alias GenApi is used. For programming, we also recommend to only use the alias.

Forward declarations can be defined as follows:

#include <GenApi/GenApiNamespace.h>
//...
namespace GENAPI_NAMESPACE
{
interface INodeMap;
}

Alternatively, the GenICam library provides a header file that contains most of the forward declarations:

#include <GenICamFwd.h>

Enumeration Type Documentation

the type of callback

Enumerator
cbPostOutsideLock 

callback is fired on leaving the tree inside the lock-guarded area

Function Documentation

struct GenApi::__attribute__ ( (packed)  )

header of a GVCP request packet

Layout of a GVCP event data request packet (Extended ID flag set)

Layout of a GVCP event request packet (Extended ID flag set)

layout of a GVCP event item (Extended ID flag set)

Layout of a GVCP event data request packet (Extended ID flag not set)

Layout of a GVCP event request packet (Extended ID flag not set)

layout of a GVCP event item (Extended ID flag not set)

layout of a GVCP event item (common to all types)

virtual bool GenApi::DeregisterCallback ( CallbackHandleType  hCallback)
pure virtual

De register change callback.

Destroys CNodeCallback object

Returns
true if the callback handle was valid
virtual void GenApi::FromString ( const GenICam::gcstring ValueStr,
bool  Verify = true 
)
pure virtual

Set content of the node as string.

Parameters
ValueStrThe value to set
VerifyEnables AccessMode and Range verification (default = true)
virtual void GenApi::GetChildren ( GenApi::NodeList_t Children,
ELinkType  LinkType = ctReadingChildren 
) const
pure virtual

Get all nodes this node directly depends on.

Parameters
[out]ChildrenList of children nodes
LinkTypeThe link type
int64_t GenApi::GetInc ( )
pure virtual

Get the constant increment if there is any.

Get increment.

virtual int64_t GenApi::GetIntValue ( bool  Verify = false,
bool  IgnoreCache = false 
)
pure virtual

Get integer node value.

Parameters
VerifyEnables Range verification (default = false). The AccessMode is always checked
IgnoreCacheIf true the value is read ignoring any caches (default = false)
Returns
The value read
virtual void GenApi::GetParents ( GenApi::NodeList_t Parents) const
pure virtual

Gets all nodes this node is directly depending on.

Parameters
[out]ParentsList of parent nodes
virtual bool GenApi::GetProperty ( const GenICam::gcstring PropertyName,
GenICam::gcstring ValueStr,
GenICam::gcstring AttributeStr 
)
pure virtual

Retrieves a property plus an additional attribute by name.

If a property has multiple values/attribute they come with Tabs as delimiters

GenICam::gcstring GenApi::GetValue ( bool  Verify = false,
bool  IgnoreCache = false 
) const
pure virtual

Get node value.

Parameters
VerifyEnables Range verification (default = false). The AccessMode is always checked
IgnoreCacheIf true the value is read ignoring any caches (default = false)
Returns
The value read
virtual void GenApi::InvalidateNode ( )
pure virtual

Indicates that the node's value may have changed.

Fires the callback on this and all dependent nodes

virtual bool GenApi::IsDone ( bool  Verify = true)
pure virtual

Query whether the command is executed.

Parameters
VerifyEnables Range verification (default = false). The AccessMode is always checked
Returns
True if the Execute command has finished; false otherwise
GenICam::gcstring GenApi::operator* ( )
pure virtual

Get string node value.

Get node value.

std::ostream& GenApi::operator<< ( std::ostream &  os,
const CFeatureBag &  FeatureBag 
)
inline

writes out persistent data to a stream

puts the bag into a stream

std::istream& GenApi::operator>> ( std::istream &  is,
CFeatureBag &  FeatureBag 
)
inline

reads in persistent data from a stream

fills the bag from a stream

virtual CallbackHandleType GenApi::RegisterCallback ( CNodeCallback *  pCallback)
pure virtual

Register change callback.

Takes ownership of the CNodeCallback object

virtual void GenApi::SetIntValue ( int64_t  Value,
bool  Verify = true 
)
pure virtual

Set integer node value.

Parameters
ValueThe value to set
VerifyEnables AccessMode and Range verification (default = true)
virtual GenICam::gcstring GenApi::ToString ( bool  Verify = false,
bool  IgnoreCache = false 
)
pure virtual

Get content of the node as string.

Parameters
VerifyEnables Range verification (default = false). The AccessMode is always checked
IgnoreCacheIf true the value is read ignoring any caches (default = false)
Returns
The value read

pylon 5.0.5
Copyright © 2006-2016 Basler AG (Thu Aug 11 2016 18:01:28)