Impact Acquire SDK C++
|
A class to create complex digital output signals(Device specific interface layout only) (deprecated. More...
#include <mvIMPACT_acquire.h>
Public Member Functions | |
int | defineLineScanPulse (DigitalOutput *pOutput, TDeviceSignalOutputStartEvent pulseStartEventValue, int softwareSignalPeriod_pclk, int width_pclk, int polarity, unsigned int divider) |
Defines a pulse to trigger line scan cameras. | |
int | definePassThroughSignal (DigitalOutput *pOutput, const std::string &digitalSignal, bool boInverted=false) |
Assigning a certain signal to a digital output. | |
int | definePassThroughSignal (DigitalOutput *pOutput, TDigitalSignal digitalSignal, bool boInverted=false) |
Assigns a certain signal to a digital output. | |
int | definePulse (DigitalOutput *pOutput, int polarity, int delay, int width, PulseStartConfiguration *pPulseStartConfiguration=0) |
Assigns a single pulse to a digital output. | |
int | definePulseSequence (DigitalOutput *pOutput, int startLevel, const std::vector< int > &sequence, PulseStartConfiguration *pPulseStartConfiguration=0) |
Assigns a complex signal to a digital output. | |
unsigned int | getValidPassThroughSignalCount (DigitalOutput *pOutput) const |
Returns the number of signals that can be used for pass through signal definitions for a certain digital output pin of this device. | |
std::string | getValidPassThroughSignalString (DigitalOutput *pOutput, int index=0) const |
Receives a valid string representation of a signal that can be passed directly to a certain digital output pin. | |
TDigitalSignal | getValidPassThroughSignalValue (DigitalOutput *pOutput, int index=0) const |
Receives a valid signal that can be passed directly to a certain digital output pin. | |
int | getValidSignalsForPassThroughModes (DigitalOutput *pOutput, TDigitalSignalTranslationDict &sequence) const |
Receives a list of valid signals that can be passed directly to a certain digital output pin. | |
OutputSignalGeneratorFrameGrabber & | operator= (const OutputSignalGeneratorFrameGrabber &rhs) |
Allows assignments of mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber objects. | |
OutputSignalGeneratorFrameGrabber (const OutputSignalGeneratorFrameGrabber &src) | |
Constructs a new mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber from an existing one. | |
OutputSignalGeneratorFrameGrabber (Device *pDev) | |
Constructs a new mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber object. | |
int | undefineSignal (DigitalOutput *pOutput) |
Removes the signal definition from the specified output pin. | |
~OutputSignalGeneratorFrameGrabber () | |
Class destructor. | |
Public Attributes | |
PropertyIDigitalOutputControlMode | controlMode |
An enumerated integer property defining the general method used to create output signals. | |
PropertyIDeviceImageTrigger | imageTrigger |
An enumerated integer property defining the general behaviour of created output signals. | |
PropertyIDeviceSignalOutputStartEvent | pulseStartEvent |
An enumerated integer property defining the general behaviour of created output signals. | |
A class to create complex digital output signals(Device specific interface layout only) (deprecated.
Instances of this class can be used to create more complex digital output related signals like a single pulse or sequence of pulses on a certain pin as a reaction on a signal on one of the digital inputs of a device.
The availability of the features provided by this class heavily depends on the used capture device. Therefore it's crucial to check if a desired feature is available at all. This class either provides the functions needed for these checks or its functions will return appropriate error codes.
Pointers to mvIMPACT::acquire::DigitalOutput objects MUST be obtained by an instance to a mvIMPACT::acquire::IOSubSystemFrameGrabber object of the same device.
Whenever a signal has been defined for a a certain digital output pin, this pin can no longer controlled using the corresponding functions in the class mvIMPACT::acquire::DigitalOutput. In order to do that the pin in question must be released using the function mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::undefineSignal.
|
explicit |
Constructs a new mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber object.
[in] A pointer to a mvIMPACT::acquire::Device object obtained from a mvIMPACT::acquire::DeviceManager object.
|
inline |
Constructs a new mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber from an existing one.
[in] | src | A constant reference to the mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber object, this object shall be created from |
|
inline |
Class destructor.
|
inline |
Defines a pulse to trigger line scan cameras.
Calling this function without setting mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::controlMode to mvIMPACT::acquire::docmRTC will have NO effect.
[in] | pOutput | A pointer to a mvIMPACT::acquire::DigitalOutput object obtained from an instance of the class mvIMPACT::acquire::IOSubSystemFrameGrabber for this device. |
[in] | pulseStartEventValue | Defines the start event for the signal generation. Valid values for this parameter are defined by mvIMPACT::acquire::TDeviceSignalOutputStartEvent. |
[in] | softwareSignalPeriod_pclk | Defines the frequency for a continuously generated signal if pulseStartEventValue is mvIMPACT::acquire::dsoseSyncInRisingEdge or mvIMPACT::acquire::dsoseSyncInFallingEdge and is ignored otherwise. |
[in] | width_pclk | The width of the signal to generate if pulseStartEventValue is mvIMPACT::acquire::dsoseSyncInRisingEdge, mvIMPACT::acquire::dsosePeriodically or mvIMPACT::acquire::dsoseSyncInFallingEdge and is ignored otherwise. |
[in] | polarity | The polarity of the signal to generate if pulseStartEventValue is mvIMPACT::acquire::dsoseSyncInRisingEdge, mvIMPACT::acquire::dsosePeriodically or mvIMPACT::acquire::dsoseSyncInFallingEdge and is ignored otherwise. - 0: The signal will be low for width_pclk and high otherwise - 1: The signal will be high for width_pclk and high otherwise |
[in] | divider | Defines the divider value if pulseStartEventValue is mvIMPACT::acquire::dsosePeriodically |
|
inline |
Assigning a certain signal to a digital output.
Some digital input signals or even some internal signals can be passed directly to one or more digital outputs.
[in] | pOutput | A pointer to a mvIMPACT::acquire::DigitalOutput object obtained from an instance of the class mvIMPACT::acquire::IOSubSystemFrameGrabber for this device. |
[in] | digitalSignal | The string representation of the digital output that shall be passed to the digital output. Valid values for this parameter will be obtained by a call to the function mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::getValidSignalsForPassThroughModes. |
[in] | boInverted | If set to true, the signal will be inverted internally before being passed to the output. |
|
inline |
Assigns a certain signal to a digital output.
Some digital input signals or even some internal signals can be passed directly to one or more digital outputs.
[in] | pOutput | A pointer to a mvIMPACT::acquire::DigitalOutput object obtained from an instance of the class mvIMPACT::acquire::IOSubSystemFrameGrabber for this device. |
[in] | digitalSignal | The digital signal that shall be passed to the digital output. Valid values for this parameter will be obtained by a call to the function mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::getValidSignalsForPassThroughModes. |
[in] | boInverted | If set to true, the signal will be inverted internally before being passed to the output. |
|
inline |
Assigns a single pulse to a digital output.
Whenever a single pulse of a certain duration and polarity shall be generated on a digital output as a reaction on a trigger signal that was either generated by one of digital inputs of the device or software this is the right function to use.
When the signal is generated can be defined by the properties mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::pulseStartEvent and mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::imageTrigger.
[in] | pOutput | A pointer to a mvIMPACT::acquire::DigitalOutput object obtained from an instance of the class mvIMPACT::acquire::IOSubSystemFrameGrabber for this device. |
[in] | polarity | The polarity of the pulse to generate. - 0: The pulse will be low for width_pclk and high otherwise - 1: The pulse will be high for width_pclk and high otherwise |
[in] | delay | The delay after the trigger event before a signal generation starts |
[in] | width | The width of the pulse to generate |
[in] | pPulseStartConfiguration | The pulse start configuration to be used for this pulse sequence. Not every device will support the use of pulse start configurations. Valid objects that can be passed to this function can be obtained from a call to mvIMPACT::acquire::IOSubSystem::getPulseStartConfiguration, and mvIMPACT::acquire::IOSubSystem::getPulseStartConfigurationCount. If objects of these type are not supported, pass 0 or ignore this parameter. In that case the property mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::imageTrigger will define the start condition for the signal output. |
|
inline |
Assigns a complex signal to a digital output.
This function can be used when a complex signal shall be generated on a digital output as a reaction on a trigger signal that was either generated by one of digital inputs of the device or software.
When the signal is generated can be defined by the properties mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::pulseStartEvent and mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::imageTrigger.
[in] | pOutput | A pointer to a mvIMPACT::acquire::DigitalOutput object obtained from an instance of the class mvIMPACT::acquire::IOSubSystemFrameGrabber for this device. |
[in] | startLevel | The start level of the generated signal. - 0: The signal will start with 'low' - 1: The signal will start with 'high' |
[in] | sequence | An array of integer values. Each values defines a switch in polarity of the signal after 'x' us. An array containing '1000', '2000' therefore will describe a signal starting with startLevel, switches polarity after 1000 us and then again switches polarity after 2000 us. |
[in] | pPulseStartConfiguration | The pulse start configuration to be used for this pulse sequence. Not every device will support the use of pulse start configurations. Valid objects that can be passed to this function can be obtained from a call to mvIMPACT::acquire::IOSubSystem::getPulseStartConfiguration, and mvIMPACT::acquire::IOSubSystem::getPulseStartConfigurationCount. If objects of these type are not supported, pass 0 or ignore this parameter. In that case the property mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::imageTrigger will define the start condition for the signal output. |
|
inline |
Returns the number of signals that can be used for pass through signal definitions for a certain digital output pin of this device.
[in] | pOutput | A pointer to a mvIMPACT::acquire::DigitalOutput object obtained from an instance of the class mvIMPACT::acquire::IOSubSystemFrameGrabber for this device. |
|
inline |
Receives a valid string representation of a signal that can be passed directly to a certain digital output pin.
Whenever it is necessary to output a certain signal (e.g. a digital input signal connected to the device or an internal digital signal like e.g. a frame valid signal) to a digital output of the device this can be done by a call to the function mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::definePassThroughSignal
As the type of signals that a device can send to a digital output depends heavily on the device and even on the digital output as well, this function together with the function mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::getValidPassThroughSignalString can be used to query a list of strings and a numerical representation for each signal that can be sent to this digital output.
C++ offers the more efficient function mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::getValidSignalsForPassThroughModes to obtain this information.
[in] | pOutput | A pointer to a mvIMPACT::acquire::DigitalOutput object obtained from an instance of the class mvIMPACT::acquire::IOSubSystemFrameGrabber for this device. |
[in] | index | The index of the entry to read from the property. The find out the last valid value for this parameter call mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::getValidPassThroughSignalCount |
|
inline |
Receives a valid signal that can be passed directly to a certain digital output pin.
Whenever it is necessary to output a certain signal (e.g. a digital input signal connected to the device or an internal digital signal like e.g. a frame valid signal) to a digital output of the device this can be done by a call to the function mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::definePassThroughSignal
As the type of signals that a device can send to a digital output depends heavily on the device and even on the digital output as well, this function together with the function mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::getValidPassThroughSignalString can be used to query a list of strings and a numerical representation for each signal that can be sent to this digital output.
C++ offers the more efficient function mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::getValidSignalsForPassThroughModes to obtain this information.
[in] | pOutput | A pointer to a mvIMPACT::acquire::DigitalOutput object obtained from an instance of the class mvIMPACT::acquire::IOSubSystemFrameGrabber for this device. |
[in] | index | The index of the entry to read from the property. The find out the last valid value for this parameter call mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::getValidPassThroughSignalCount |
|
inline |
Receives a list of valid signals that can be passed directly to a certain digital output pin.
Whenever it is necessary to output a certain signal (e.g. a digital input signal connected to the device or an internal digital signal like e.g. a frame valid signal) to a digital output of the device this can be done by a call to the function mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber::definePassThroughSignal
As the type of signals that a device can send to a digital output depends heavily on the device and even on the digital output as well, this function will return a list of strings and a numerical representation for each signal that can be sent to this digital output.
[in] | pOutput | A pointer to a mvIMPACT::acquire::DigitalOutput object obtained from an instance of the class mvIMPACT::acquire::IOSubSystemFrameGrabber for this device. |
[out] | sequence | A reference to a vector that will receive the list of allowed digital signals for this particular digital output pin. |
|
inline |
Allows assignments of mvIMPACT::acquire::OutputSignalGeneratorFrameGrabber objects.
|
inline |
Removes the signal definition from the specified output pin.
Whenever a signal has been defined for a a certain digital output pin, this pin can no longer controlled using the corresponding functions in the class mvIMPACT::acquire::DigitalOutput. This function removes the signal definition and hands back manual control of that digital output to the user.
[in] | pOutput | A pointer to a mvIMPACT::acquire::DigitalOutput object obtained from an instance of the class mvIMPACT::acquire::IOSubSystemFrameGrabber for this device. |
PropertyIDigitalOutputControlMode controlMode |
An enumerated integer property defining the general method used to create output signals.
This setting always applies to every signal defined. Modifying this property will also change the behaviour of signals already defined.
Valid values for this property are defined by the enumeration mvIMPACT::acquire::TDigitalOutputControlMode.
When switching to mvIMPACT::acquire::docmRTC mode only one signal can be created currently.
Some devices will offer a more flexible way to define this behaviour. In this case, this property won't be available (a call to the function mvIMPACT::acquire::Component::isValid will return false). However then calls to mvIMPACT::acquire::IOSubSystem::getPulseStartConfigurationCount and mvIMPACT::acquire::IOSubSystem::getPulseStartConfiguration will succeed and the objects returned by mvIMPACT::acquire::IOSubSystem::getPulseStartConfiguration (mvIMPACT::acquire::PulseStartConfiguration) will provide a more sophisticated way to define the signal output behaviour of a device.
PropertyIDeviceImageTrigger imageTrigger |
An enumerated integer property defining the general behaviour of created output signals.
This setting always applies to every signal defined. Modifying this property will also change the behaviour of signals already defined.
Valid values for this property are defined by the enumeration mvIMPACT::acquire::TDeviceImageTrigger.
PropertyIDeviceSignalOutputStartEvent pulseStartEvent |
An enumerated integer property defining the general behaviour of created output signals.
This setting always applies to every signal defined. Modifying this property will also change the behaviour of signals already defined.
Valid values for this property are defined by the enumeration mvIMPACT::acquire::TDeviceSignalOutputStartEvent.