Impact Acquire SDK Java
OutputSignalGeneratorFrameGrabber Class Reference

A class to create complex digital output signals(Device specific interface layout only) (deprecated. More...

Public Member Functions

int defineLineScanPulse (DigitalOutput pOutput, int pulseStartEventValue, int softwareSignalPeriod_pclk, int width_pclk, int polarity, long divider)
 Defines a pulse to trigger line scan cameras.
 
int definePassThroughSignal (DigitalOutput pOutput, int digitalSignal)
 Assigns a certain signal to a digital output.
 
int definePassThroughSignal (DigitalOutput pOutput, int digitalSignal, boolean boInverted)
 Assigns a certain signal to a digital output.
 
int definePassThroughSignal (DigitalOutput pOutput, String digitalSignal)
 Assigning a certain signal to a digital output.
 
int definePassThroughSignal (DigitalOutput pOutput, String digitalSignal, boolean boInverted)
 Assigning a certain signal to a digital output.
 
int definePulse (DigitalOutput pOutput, int polarity, int delay, int width)
 Assigns a single pulse to a digital output.
 
int definePulse (DigitalOutput pOutput, int polarity, int delay, int width, PulseStartConfiguration pPulseStartConfiguration)
 Assigns a single pulse to a digital output.
 
int definePulseSequence (DigitalOutput pOutput, int startLevel, IntVector sequence)
 Assigns a complex signal to a digital output.
 
int definePulseSequence (DigitalOutput pOutput, int startLevel, IntVector sequence, PulseStartConfiguration pPulseStartConfiguration)
 Assigns a complex signal to a digital output.
 
synchronized void delete ()
 
PropertyI getControlMode ()
 An enumerated integer property defining the general method used to create output signals.
 
PropertyI getImageTrigger ()
 An enumerated integer property defining the general behaviour of created output signals.
 
PropertyI getPulseStartEvent ()
 An enumerated integer property defining the general behaviour of created output signals.
 
long getValidPassThroughSignalCount (DigitalOutput pOutput)
 Returns the number of signals that can be used for pass through signal definitions for a certain digital output pin of this device.
 
String getValidPassThroughSignalString (DigitalOutput pOutput)
 Receives a valid string representation of a signal that can be passed directly to a certain digital output pin.
 
String getValidPassThroughSignalString (DigitalOutput pOutput, int index)
 Receives a valid string representation of a signal that can be passed directly to a certain digital output pin.
 
int getValidPassThroughSignalValue (DigitalOutput pOutput)
 Receives a valid signal that can be passed directly to a certain digital output pin.
 
int getValidPassThroughSignalValue (DigitalOutput pOutput, int index)
 Receives a valid signal that can be passed directly to a certain digital output pin.
 
int getValidSignalsForPassThroughModes (DigitalOutput pOutput, StringIntVector sequence)
 Receives a list of valid signals that can be passed directly to a certain digital output pin.
 
 OutputSignalGeneratorFrameGrabber (OutputSignalGeneratorFrameGrabber src)
 Constructs a new mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber from an existing one.
 
int undefineSignal (DigitalOutput pOutput)
 Removes the signal definition from the specified output pin.
 

Protected Member Functions

void finalize ()
 
 OutputSignalGeneratorFrameGrabber (long cPtr, boolean cMemoryOwn)
 

Static Protected Member Functions

static long swigRelease (OutputSignalGeneratorFrameGrabber obj)
 

Protected Attributes

transient boolean swigCMemOwn
 

Detailed Description

A class to create complex digital output signals(Device specific interface layout only) (deprecated.

Deprecated
Beginning with the release of 3.0.0 of Impact Acquire everything specifically related to frame grabber boards will be considered as deprecated and might be removed without further notice!

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.

Note
If the property mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.getControlMode() is not available NO feature of this class can be used.
If the translation dictionary of mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.getControlMode() does not contain mvIMPACT.acquire.TDigitalOutputControlMode.docmRTC the function mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.defineLineScanPulse will NOT be available.
Calling unsupported functions or accessing unsupported features will raise an exception.

Pointers to mvIMPACT.acquire.DigitalOutput objects MUST be obtained by an instance to a mvIMPACT.acquire.IOSubSystemFrameGrabber object of the same device.

import mvIMPACT.acquire.*;
//-----------------------------------------------------------------------------
public class OutputSignalGeneratorExample
//-----------------------------------------------------------------------------
{
//=============================================================================
//=== Static member functions =================================================
//=============================================================================
static
{
try
{
System.loadLibrary( "mvIMPACT_Acquire.java" );
}
catch( UnsatisfiedLinkError e )
{
System.err.println( "Native code library failed to load. Make sure the 'mvIMPACT_Acquire.java' library can be found in the systems search path.\n" + e );
System.exit( 1 );
}
}
//-----------------------------------------------------------------------------
public static void main( String[] args )
//-----------------------------------------------------------------------------
{
DeviceManager devMgr = new DeviceManager();
Device pDev = mvIMPACT.acquire.examples.helper.DeviceAccess.getDeviceFromUserInput( devMgr );
if( pDev == null )
{
System.out.print( "Unable to continue!" );
mvIMPACT.acquire.examples.helper.DeviceAccess.waitForENTER();
System.exit( 1 );
}
System.out.println( "Initialising the device. This might take some time..." );
try
{
pDev.open();
}
catch( ImpactAcquireException e )
{
// this e.g. might happen if the same device is already opened in another process...
System.out.println( "An error occurred while opening device " + pDev.getSerial().read() +
"(error code: " + e.getMessage() + ")." );
mvIMPACT.acquire.examples.helper.DeviceAccess.waitForENTER();
System.exit( 1 );
}
try
{
IOSubSystemFrameGrabber io = new IOSubSystemFrameGrabber( pDev );
final long iCnt = io.getInputCount();
System.out.println( String.format( "Available digital inputs: %d", iCnt ) );
for( long d=0; d<iCnt; d++ )
{
System.out.println( io.input( d ).getDescription() );
}
final long oCnt = io.getOutputCount();
System.out.println( String.format( "Available digital outputs: %d", oCnt ) );
// set all available digital outputs to high
for( long e=0; e<oCnt; e++ )
{
DigitalOutput pOutput = io.output( e );
System.out.println( "setting " + pOutput.getDescription() + " to high" );
pOutput.set();
}
// check there is at least one digital output
if( oCnt > 0 )
{
OutputSignalGeneratorFrameGrabber osg = new OutputSignalGeneratorFrameGrabber( pDev );
// check if this device supports enhanced signal creation at all
if( osg.getControlMode().isValid() )
{
// define a simple pulse on the first digital output detected.
// this pulse will be low after 100 us for
// 200us and then switches back to high.
osg.definePulse( io.output( 0 ), 0, 100, 200 );
// define a more complex pulse
IntVector v = new IntVector();
v.add( 100 );
v.add( 299 );
v.add( 666 );
osg.definePulseSequence( io.output( 0 ), 0, v );
osg.getControlMode().write( TDigitalOutputControlMode.docmSoftware );
osg.getImageTrigger().write( TDeviceImageTrigger.ditAfterDigOutSignals );
// check if line scan pulse creation is supported by this device
StringIntVector dict = new StringIntVector();
osg.getControlMode().getTranslationDict( dict );
final long dictSize = osg.getControlMode().dictSize();
for( long i=0; i<dictSize; i++ )
{
if( dict.get( ( int )i ).getSecond() == TDigitalOutputControlMode.docmRTC )
{
// supported -> define some signal
System.out.println( "checkGrabberInterface: This device supports RTC control signal creation." );
osg.getControlMode().write( TDigitalOutputControlMode.docmRTC );
osg.defineLineScanPulse( io.output( 0 ), TDeviceSignalOutputStartEvent.dsosePeriodically, 100, 100, 1, 1 );
}
}
}
}
}
catch( ImpactAcquireException e )
{
System.out.println( "An error occurred: " + e.getMessage() + ")." );
mvIMPACT.acquire.examples.helper.DeviceAccess.waitForENTER();
System.exit( 1 );
}
}
}

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.

Note
This class will only be available if mvIMPACT.acquire.Device.getInterfaceLayout() is set to mvIMPACT.acquire.TDeviceInterfaceLayout.dilDeviceSpecific before the device is opened.

Constructor & Destructor Documentation

◆ OutputSignalGeneratorFrameGrabber() [1/2]

OutputSignalGeneratorFrameGrabber ( long cPtr,
boolean cMemoryOwn )
protected

◆ OutputSignalGeneratorFrameGrabber() [2/2]

Constructs a new mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber from an existing one.

Parameters
src[in] A constant reference to the mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber object, this object shall be created from

Member Function Documentation

◆ defineLineScanPulse()

int defineLineScanPulse ( DigitalOutput pOutput,
int pulseStartEventValue,
int softwareSignalPeriod_pclk,
int width_pclk,
int polarity,
long divider )

Defines a pulse to trigger line scan cameras.

Calling this function without setting mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.getControlMode() to mvIMPACT.acquire.TDigitalOutputControlMode.docmRTC will have NO effect.

Note
Not every frame grabber will offer the mvIMPACT.acquire.TDigitalOutputControlMode.docmRTC mode. Check is the mode is available by reading the properties translation dictionary with the functions mvIMPACT.acquire.PropertyIDigitalOutputControlMode.getTranslationDictString and mvIMPACT.acquire.PropertyIDigitalOutputControlMode.getTranslationDictValue. The detailed description of this class might contain source code examples for the language you are working with.
See also
mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.undefineSignal
Returns
Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
pulseStartEventValue[in] Defines the start event for the signal generation. Valid values for this parameter are defined by mvIMPACT.acquire.TDeviceSignalOutputStartEvent.
softwareSignalPeriod_pclk[in] Defines the frequency for a continuously generated signal if pulseStartEventValue is mvIMPACT.acquire.TDeviceSignalOutputStartEvent.dsoseSyncInRisingEdge or mvIMPACT.acquire.TDeviceSignalOutputStartEvent.dsoseSyncInFallingEdge and is ignored otherwise.
width_pclk[in] The width of the signal to generate if pulseStartEventValue is mvIMPACT.acquire.TDeviceSignalOutputStartEvent.dsoseSyncInRisingEdge, mvIMPACT.acquire.TDeviceSignalOutputStartEvent.dsosePeriodically or mvIMPACT.acquire.TDeviceSignalOutputStartEvent.dsoseSyncInFallingEdge and is ignored otherwise.
polarity[in] The polarity of the signal to generate if pulseStartEventValue is mvIMPACT.acquire.TDeviceSignalOutputStartEvent.dsoseSyncInRisingEdge, mvIMPACT.acquire.TDeviceSignalOutputStartEvent.dsosePeriodically or mvIMPACT.acquire.TDeviceSignalOutputStartEvent.dsoseSyncInFallingEdge and is ignored otherwise.

◆ definePassThroughSignal() [1/4]

int definePassThroughSignal ( DigitalOutput pOutput,
int digitalSignal )

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.

Returns
Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
digitalSignal[in] 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.

◆ definePassThroughSignal() [2/4]

int definePassThroughSignal ( DigitalOutput pOutput,
int digitalSignal,
boolean boInverted )

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.

Returns
Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
digitalSignal[in] 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.
boInverted[in] If set to true, the signal will be inverted internally before being passed to the output.

◆ definePassThroughSignal() [3/4]

int definePassThroughSignal ( DigitalOutput pOutput,
String digitalSignal )

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.

Returns
Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
digitalSignal[in] 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.

◆ definePassThroughSignal() [4/4]

int definePassThroughSignal ( DigitalOutput pOutput,
String digitalSignal,
boolean boInverted )

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.

Returns
Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
digitalSignal[in] 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.
boInverted[in] If set to true, the signal will be inverted internally before being passed to the output.

◆ definePulse() [1/2]

int definePulse ( DigitalOutput pOutput,
int polarity,
int delay,
int width )

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.getPulseStartEvent() and mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.getImageTrigger().

See also
mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.undefineSignal
Returns
Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
polarity[in] The polarity of the pulse to generate.

◆ definePulse() [2/2]

int definePulse ( DigitalOutput pOutput,
int polarity,
int delay,
int width,
PulseStartConfiguration pPulseStartConfiguration )

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.getPulseStartEvent() and mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.getImageTrigger().

See also
mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.undefineSignal
Returns
Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
polarity[in] The polarity of the pulse to generate.

◆ definePulseSequence() [1/2]

int definePulseSequence ( DigitalOutput pOutput,
int startLevel,
IntVector sequence )

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.getPulseStartEvent() and mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.getImageTrigger().

See also
mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.undefineSignal
Returns
Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
startLevel[in] The start level of the generated signal.

◆ definePulseSequence() [2/2]

int definePulseSequence ( DigitalOutput pOutput,
int startLevel,
IntVector sequence,
PulseStartConfiguration pPulseStartConfiguration )

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.getPulseStartEvent() and mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.getImageTrigger().

See also
mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.undefineSignal
Returns
Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
startLevel[in] The start level of the generated signal.
  • 0: The signal will start with 'low'
  • 1: The signal will start with 'high'
    Parameters
    sequence[in] 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.
    pPulseStartConfiguration[in] 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.getImageTrigger() will define the start condition for the signal output.

◆ delete()

synchronized void delete ( )

◆ finalize()

void finalize ( )
protected

◆ getControlMode()

PropertyI getControlMode ( )

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.TDigitalOutputControlMode.docmRTC mode only one signal can be created currently.

Note
Not every frame grabber will offer the mvIMPACT.acquire.TDigitalOutputControlMode.docmRTC mode. Check if the mode is available by reading the properties translation dictionary with the functions mvIMPACT.acquire.PropertyIDigitalOutputControlMode.getTranslationDictString and mvIMPACT.acquire.PropertyIDigitalOutputControlMode.getTranslationDictValue.

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.

◆ getImageTrigger()

PropertyI getImageTrigger ( )

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.

◆ getPulseStartEvent()

PropertyI getPulseStartEvent ( )

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.

◆ getValidPassThroughSignalCount()

long getValidPassThroughSignalCount ( DigitalOutput pOutput)

Returns the number of signals that can be used for pass through signal definitions for a certain digital output pin of this device.

Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.

◆ getValidPassThroughSignalString() [1/2]

String getValidPassThroughSignalString ( DigitalOutput pOutput)

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.

Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device. call mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.getValidPassThroughSignalCount

◆ getValidPassThroughSignalString() [2/2]

String getValidPassThroughSignalString ( DigitalOutput pOutput,
int index )

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.

Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
index[in] 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

◆ getValidPassThroughSignalValue() [1/2]

int getValidPassThroughSignalValue ( DigitalOutput pOutput)

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.

Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device. call mvIMPACT.acquire.OutputSignalGeneratorFrameGrabber.getValidPassThroughSignalCount

◆ getValidPassThroughSignalValue() [2/2]

int getValidPassThroughSignalValue ( DigitalOutput pOutput,
int index )

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.

Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
index[in] 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

◆ getValidSignalsForPassThroughModes()

int getValidSignalsForPassThroughModes ( DigitalOutput pOutput,
StringIntVector sequence )

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.

Note
This function is much more efficient than calling OutputSignalGeneratorFrameGrabber.getValidPassThroughSignalValue and OutputSignalGeneratorFrameGrabber.getValidPassThroughSignalString and therefore this function should be called whenever all entries are required.
Returns
Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.
sequence[out] A reference to a vector that will receive the list of allowed digital signals for this particular digital output pin.

◆ swigRelease()

static long swigRelease ( OutputSignalGeneratorFrameGrabber obj)
staticprotected

◆ undefineSignal()

int undefineSignal ( DigitalOutput pOutput)

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.

Returns
Parameters
pOutput[in] A pointer to a mvIMPACT.acquire.DigitalOutput object obtained from an instance of the class mvIMPACT.acquire.IOSubSystemFrameGrabber for this device.

Member Data Documentation

◆ swigCMemOwn

transient boolean swigCMemOwn
protected