Impact Acquire SDK C++
|
A class to call arbitrary driver functions. More...
#include <mvIMPACT_acquire.h>
Public Member Functions | |
int | call (const std::string ¶ms, const std::string &delimiters=" ") const |
Calls an underlying driver function. | |
int | call (const std::vector< std::string > ¶ms) const |
Calls an underlying driver function. | |
int | call (void) const |
Calls an underlying driver function expecting no parameters. | |
unsigned int | changedCounter (void) const |
Returns the current changed counter for the component referenced by this object. | |
unsigned int | changedCounterAttr (void) const |
Returns the current attribute changed counter for the component referenced by this object. | |
std::string | displayName (void) const |
Returns the display name of the component referenced by this object. | |
std::string | docString (void) const |
Returns a string containing general information about the component referenced by this object. | |
Component | firstChild (void) const |
Moves to the first child of this component(moves down one level). | |
Component | firstSibling (void) const |
Moves to the first sibling(the first feature in the current list of features). | |
TComponentFlag | flags (void) const |
Returns the flags associated with this component. | |
std::string | flagsAsString (const std::string &separator=" | ") const |
Returns the flags associated with this component as a string. | |
HOBJ | hObj (void) const |
Returns a unique identifier for the component referenced by this object. | |
bool | isDefault (void) const |
Checks if this component is currently referencing the default for this component. | |
bool | isList (void) const |
Checks if this component is of type mvIMPACT::acquire::ComponentList. | |
bool | isMeth (void) const |
Checks if this component is of type mvIMPACT::acquire::Method. | |
bool | isProp (void) const |
Checks if this component is of type mvIMPACT::acquire::Property or a derived type. | |
bool | isValid (void) const |
Checks if the internal component referenced by this object is still valid. | |
bool | isVisible (void) const |
Checks if the component is currently shadowed due to a settings made elsewhere or not. | |
bool | isWriteable (void) const |
Checks if the caller has write/modify access to the component. | |
Component | lastSibling (void) const |
Moves to the last sibling(the last feature in the current list of features). | |
Method () | |
Constructs a new unbound mvIMPACT::acquire::Method object. | |
Method (const Method &src) | |
Constructs a new mvIMPACT::acquire::Method from an existing one. | |
Method (HOBJ hMeth) | |
Constructs a new mvIMPACT::acquire::Method object. | |
std::string | name (void) const |
Returns the name of the component referenced by this object. | |
Component | nextSibling (void) |
Moves to the next sibling(the next feature in the current list of features). | |
operator HOBJ () const | |
Allows implicit conversion to a HOBJ. | |
Component | operator++ (int) |
Moves to the next sibling(the next feature in the current list of features). | |
Component & | operator++ (void) |
Moves to the next sibling(the next feature in the current list of features). | |
std::string | paramList (void) const |
Returns the parameter list of the methods as a string. | |
Component | parent (void) const |
Moves to the parent of this component(moves up one level). | |
TComponentRepresentation | representation (void) const |
Returns the recommended representation for this component. | |
std::string | representationAsString (void) const |
Returns the recommended representation of the referenced component as a string. | |
const Component & | restoreDefault (void) const |
Restores the default for the referenced component. | |
Component | selectedFeature (unsigned int index) const |
Retrieves a component that is selected by the current one. | |
unsigned int | selectedFeatureCount (void) const |
Returns the number of features selected by the current one. | |
unsigned int | selectedFeatures (std::vector< Component > &v) const |
Retrieves the list of components that are selected by the current one. | |
Component | selectingFeature (unsigned int index) const |
Retrieves a component that is selecting the current one. | |
unsigned int | selectingFeatureCount (void) const |
Returns the number of features selecting the current one. | |
unsigned int | selectingFeatures (std::vector< Component > &v) const |
Retrieves the list of components that are selecting the current one. | |
TComponentType | type (void) const |
Returns the type of the referenced component. | |
std::string | typeAsString (void) const |
Returns the type of the referenced component as a string. | |
TComponentVisibility | visibility (void) const |
Returns the recommended visibility for this component. | |
std::string | visibilityAsString (void) const |
Returns the recommended visibility of the referenced component as a string. | |
Static Public Member Functions | |
static std::string | representationAsString (TComponentRepresentation representation) |
Returns the recommended representation converted to a string. | |
static TComponentType | type (HOBJ hObj) |
Returns the type of the component referenced by hObj. | |
static std::string | visibilityAsString (TComponentVisibility visibility) |
Returns the recommended visibility converted to a string. | |
Protected Types | |
enum | { BUFFER_INCREMENT_FACTOR = 6 } |
An internal constant that defines by which factor dynamic buffers will grow when the current size is not sufficient. More... | |
Protected Member Functions | |
std::string | compGetStringParam (TOBJ_StringQuery query, int param1=0, int param2=0) const |
A helper function to query certain component related string parameters. | |
Static Protected Member Functions | |
static char * | stringAllocator (const char *pBuf, size_t reqBufSize) |
An internal helper function for fast string allocation. | |
Protected Attributes | |
HOBJ | m_hObj |
A unique identifier for the internal driver object referenced by this instance of mvIMPACT::acquire::ComponentAccess. | |
A class to call arbitrary driver functions.
Normally all functions needed by the user and offered by the driver will be provided as a normal function somewhere within this interface. In rare cases however it might be necessary to call a function, which hasn't been implemented in this interface. In that case this class will serve as a backdoor.
|
protectedinherited |
Constructs a new mvIMPACT::acquire::Method object.
[in] | hMeth | A valid handle to method object |
|
inlineexplicit |
Constructs a new unbound mvIMPACT::acquire::Method object.
Constructs a new mvIMPACT::acquire::Method from an existing one.
[in] | src | A constant reference to the mvIMPACT::acquire::Method object, this object shall be created from |
|
inline |
Calls an underlying driver function.
This function can be used to call any driver function which is registered for the device it is called for. To call a function successfully the parameters passed to the function must match the parameters expected by the function.
All parameters are passed as a single string, which is parsed with respect to the given delimiter characters internally.
To find out what kind of parameters are expected by the function use the function mvIMPACT::acquire::Method::paramList().
floating point values can be passed either with a '.' or a ',' acting as the decimal point.
'empty' strings can be passed as a single underline('_').
[in] | params | The parameters to be passed to the function as a single string |
[in] | delimiters | A string containing valid delimiter characters for the parameter string |
|
inline |
Calls an underlying driver function.
This function can be used to call any driver function which is registered for the device it is called for. To call a function successfully the parameters passed to the function must match the parameters expected by the function.
The parameters are passed as a list of strings.
To find out what kind of parameters are expected by the function use the function mvIMPACT::acquire::Method::paramList().
floating point values can be passed either with a '.' or a ',' acting as the decimal point.
'empty' strings can be passed as a single underline('_').rs.
[in] | params | The parameters to be passed to the function as a list of strings |
|
inline |
Calls an underlying driver function expecting no parameters.
This function can be used to call any driver function which is registered for the device it is called for that does NOT expect any parameters
To find out what kind of parameters are expected by the function use the function mvIMPACT::acquire::Method::paramList().
|
inlineinherited |
Returns the current changed counter for the component referenced by this object.
This changed counter is incremented internally each time the component is modified. To check if this component has been modified since the last time, this check has been performed, keep track of the last return value of this function and compare it with the new value. This can be helpful e.g. to keep a GUI up to date. The value returned by this function will always be larger than or equal to the value returned by mvIMPACT::acquire::ComponentAccess::changedCounterAttr (except in case of a wrap around) when called at the same time for the same object as it's always incremented when the component has been modified in any way while the latter one will only be incremented if the attributes (e.g. the flags) but NOT if e.g. the value(s) of a property has been modified.
|
inlineinherited |
Returns the current attribute changed counter for the component referenced by this object.
This changed counter is incremented internally each time the components attributes have been modified. To check if this components attributes have been modified since the last time, this check has been performed, keep track of the last return value of this function and compare it with the new value. This can be helpful e.g. to keep a GUI up to date.
|
inlineprotectedinherited |
A helper function to query certain component related string parameters.
This function might throw an exception, if an invalid parameter has been queried.
query | The type of the parameter to read | |
[in] | param1 | An additional parameter |
[in] | param2 | An additional parameter |
|
inlineinherited |
Returns the display name of the component referenced by this object.
|
inlineinherited |
Returns a string containing general information about the component referenced by this object.
|
inlineinherited |
Moves to the first child of this component(moves down one level).
Calling this function will only succeed, if the current mvIMPACT::acquire::Component references a list.
|
inlineinherited |
Moves to the first sibling(the first feature in the current list of features).
|
inlineinherited |
Returns the flags associated with this component.
|
inlineinherited |
Returns the flags associated with this component as a string.
[in] | separator | A user definable string to separate the individual flags. The default value is ' | ' resulting in the string to look e.g. like this: 'cfWriteAccess | cfReadAccess' |
|
inlineinherited |
Returns a unique identifier for the component referenced by this object.
|
inlineinherited |
Checks if this component is currently referencing the default for this component.
This function will return true only for derived components that have not been modified.
|
inlineinherited |
Checks if this component is of type mvIMPACT::acquire::ComponentList.
|
inlineinherited |
Checks if this component is of type mvIMPACT::acquire::Method.
|
inlineinherited |
Checks if this component is of type mvIMPACT::acquire::Property or a derived type.
|
inlineinherited |
Checks if the internal component referenced by this object is still valid.
This function can be used to verify whether a referenced component is still valid or not. When e.g. referencing a driver property after mvIMPACT::acquire::Device::close has been called this function would return false. Calling any other function that tries to access the referenced component in that case would raise an exception.
|
inlineinherited |
Checks if the component is currently shadowed due to a settings made elsewhere or not.
Settings applied to certain components might affect the behaviour of others. For example an activated automatic gain control might shadow the value written to the gain property by the user as the gain is calculated internally. In order to check if modifying the actual component will affect the behaviour of the system this function may be used. When it returns true, the mvIMPACT::acquire::Component will have an impact on the system, if false is returned, the feature might be modified, but this will currently NOT influence the acquisition process or the overall behaviour of the device or driver.
This is what is called visibility. The user still might modify or read the current mvIMPACT::acquire::Component when it's not visible however the actual data will be used only if the Component is visible (mvIMPACT::acquire::cfInvisible must NOT be set).
The visibility of a mvIMPACT::acquire::Component object will change only if other mvIMPACT::acquire::Component objects are modified and NEVER when a program runs but does not change any mvIMPACT::acquire::Component.
|
inlineinherited |
Checks if the caller has write/modify access to the component.
|
inlineinherited |
Moves to the last sibling(the last feature in the current list of features).
|
inlineinherited |
Returns the name of the component referenced by this object.
|
inlineinherited |
Moves to the next sibling(the next feature in the current list of features).
|
inlineinherited |
Allows implicit conversion to a HOBJ.
|
inlineinherited |
Moves to the next sibling(the next feature in the current list of features).
|
inlineinherited |
Moves to the next sibling(the next feature in the current list of features).
|
inline |
Returns the parameter list of the methods as a string.
This function returns a string containing one character for each parameter this mvIMPACT::acquire::Method object expects and one for the return type of the function call.
The first character is the return type of the function all others are parameters. void functions don't specify parameters.
The characters have the following meaning:
EXAMPLES:
|
inlineinherited |
Moves to the parent of this component(moves up one level).
|
inlineinherited |
Returns the recommended representation for this component.
The representation can be used e.g. to develop a GUI that creates convenient controls for certain features.
Valid values for this property are defined by the enumeration mvIMPACT::acquire::TComponentRepresentation.
|
inlinestaticinherited |
Returns the recommended representation converted to a string.
[in] | representation | The representation to query the string representation for |
|
inlineinherited |
Returns the recommended representation of the referenced component as a string.
|
inlineinherited |
Restores the default for the referenced component.
Calling this function will restore the default value for the component referenced by this object.
If this function is called for an object of type mvIMPACT::acquire::ComponentList every component in that list is restored to the default value.
|
inlineinherited |
Retrieves a component that is selected by the current one.
This function retrieves a component that is selected by the current one. This information is mainly useful for GUI applications that want to arrange features in a way that dependencies between features can easily been spotted.
When a component 'selects' other components, this indicates that selected components may change whenever the selecting component changes. An example for a selector might be a property defining the index within a LUT while the value of a particular LUT entry could be a selected feature. Assuming 2 properties LUTIndex and LUTValue then changing LUTIndex will invalidate and possibly change LUTValue.
C++ offers the more efficient function mvIMPACT::acquire::Component::selectedFeatures to obtain this information.
To find out how many mvIMPACT::acquire::Component objects are selected by the current one call mvIMPACT::acquire::Component::selectedFeatureCount. This value minus 1 will also be the max. value for index.
[in] | index | The index for the component to query. |
|
inlineinherited |
Returns the number of features selected by the current one.
|
inlineinherited |
Retrieves the list of components that are selected by the current one.
This function retrieves the list of components that are selected by the current one. This information is mainly useful for GUI applications that want to arrange features in a way that dependencies between features can easily been spotted.
When a component 'selects' other components, this indicates that selected components may change whenever the selecting component changes. An example for a selector might be a property defining the index within a LUT while the value of a particular LUT entry could be a selected feature. Assuming 2 properties LUTIndex and LUTValue then changing LUTIndex will invalidate and possibly change LUTValue.
[out] | v | An array that will retrieve the list of components that are selected by the current one. |
|
inlineinherited |
Retrieves a component that is selecting the current one.
This function retrieves a component that is selecting the current one. This information is mainly useful for GUI applications that want to arrange features in a way that dependencies between features can easily been spotted.
When a component 'selects' other components, this indicates that selected components may change whenever the selecting component changes. An example for a selector might be a property defining the index within a LUT while the value of a particular LUT entry could be a selected feature. Assuming 2 properties LUTIndex and LUTValue then changing LUTIndex will invalidate and possibly change LUTValue.
C++ offers the more efficient function mvIMPACT::acquire::Component::selectingFeatures to obtain this information.
To find out how many mvIMPACT::acquire::Component objects are selecting the current one call mvIMPACT::acquire::Component::selectingFeatureCount. This value minus 1 will also be the max. value for index.
[in] | index | The index for the component to query. |
|
inlineinherited |
Returns the number of features selecting the current one.
|
inlineinherited |
Retrieves the list of components that are selecting the current one.
This function retrieves the list of components that are selecting the current one. This information is mainly useful for GUI applications that want to arrange features in a way that dependencies between features can easily been spotted.
When a component 'selects' other components, this indicates that selected components may change whenever the selecting component changes. An example for a selector might be a property defining the index within a LUT while the value of a particular LUT entry could be a selected feature. Assuming 2 properties LUTIndex and LUTValue then changing LUTIndex will invalidate and possibly change LUTValue.
[out] | v | An array that will retrieve the list of components that are selecting the current one. |
|
inlinestaticprotectedinherited |
An internal helper function for fast string allocation.
|
inlinestaticinherited |
Returns the type of the component referenced by hObj.
[in] | hObj | The component the type shall be retrieved for |
|
inlineinherited |
Returns the type of the referenced component.
|
inlineinherited |
Returns the type of the referenced component as a string.
|
inlineinherited |
Returns the recommended visibility for this component.
The visibility can be used e.g. to develop a GUI that displays a crucial subset of features only.
Valid values for this property are defined by the enumeration mvIMPACT::acquire::TComponentVisibility.
|
inlinestaticinherited |
Returns the recommended visibility converted to a string.
[in] | visibility | The visibility to query the string representation for |
|
inlineinherited |
Returns the recommended visibility of the referenced component as a string.
|
protectedinherited |
A unique identifier for the internal driver object referenced by this instance of mvIMPACT::acquire::ComponentAccess.