Impact Acquire SDK Java
IOSubSystemBlueFOX Class Reference

A class to handle the digital inputs and outputs for mvBlueFOX USB cameras(Device specific interface layout only). More...

Inheritance diagram for IOSubSystemBlueFOX:
[legend]

Public Member Functions

synchronized void delete ()
 
PropertyI getDigitalInputThreshold ()
 An enumerated integer property defining the threshold for the digital inputs in Volt.
 
long getInputCount ()
 Returns the number of mvIMPACT.acquire.DigitalInput s available for the mvIMPACT.acquire.Device associated with this object.
 
long getOutputCount ()
 Returns the number of digital outputs available for the mvIMPACT.acquire.Device associated with this object.
 
PulseStartConfiguration getPulseStartConfiguration (long nr)
 Returns a pointer to a mvIMPACT.acquire.PulseStartConfiguration associated with this device.
 
long getPulseStartConfigurationCount ()
 Returns the number of mvIMPACT.acquire.PulseStartConfiguration objects available for the mvIMPACT.acquire.Device associated with this object.
 
RTCtrProgram getRTCtrProgram (long nr)
 Returns a pointer to a mvIMPACT.acquire.RTCtrProgram associated with this device.
 
DigitalInput input (long nr)
 Returns a const pointer to a mvIMPACT.acquire.DigitalInput object.
 
 IOSubSystemBlueFOX (Device pDev)
 Constructs a new mvIMPACT.acquire.IOSubSystemBlueFOX object.
 
DigitalOutput output (long nr)
 Returns a pointer to a mvIMPACT.acquire.DigitalOutput object.
 
long readInputRegister ()
 Returns the current state of the digital input register.
 
long readInputRegisterAtomic ()
 Returns the current state of the digital input register.
 
long readOutputRegister ()
 Returns the current state of the digital output register.
 
long readOutputRegisterAtomic ()
 Returns the current state of the digital output register.
 
long RTCtrProgramCount ()
 Returns the number of mvIMPACT.acquire.RTCtrProgram s available for the mvIMPACT.acquire.Device associated with this object.
 
void writeOutputRegister (long value)
 Alters the state of the digital output register.
 
void writeOutputRegister (long value, long mask)
 Alters the state of the digital output register.
 
void writeOutputRegisterAtomic (long value)
 Alters the state of the digital output register.
 
void writeOutputRegisterAtomic (long value, long mask)
 Alters the state of the digital output register.
 

Protected Member Functions

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

Static Protected Member Functions

static long swigRelease (IOSubSystem obj)
 
static long swigRelease (IOSubSystemBlueFOX obj)
 

Protected Attributes

transient boolean swigCMemOwn
 

Detailed Description

A class to handle the digital inputs and outputs for mvBlueFOX USB cameras(Device specific interface layout only).

public static void doSomeIOStuff( Device pBF )
{
IOSubSystemBlueFOX bfIOs = new mvIMPACT.acquire.IOSubSystemBlueFOX( pBF );
System.out.println( "output 0 was " + bfIOs.output(0).get() + " and is now(after flipping) ");
bfIOs.output(0).flip();
System.out.println( bfIOs.output(0).get() );
System.out.println( "input threshold(" + bfIOs.getDigitalInputThreshold().readS() + ") set to " + TBlueFOXDigitalInputThreshold .bfdit10V );
if( bfIOs.getDigitalInputThreshold().isWriteable() ) // mvBlueFOX-M doesn't support modifying the input threshold
{
System.out.println( "input threshold is now " + bfIOs.getDigitalInputThreshold().readS() );
}
System.out.println( "input 0 is " + bfIOs.input(0).get());
System.out.println( "press ENTER." );
waitForENTER();
System.out.println( "input 0 is " + bfIOs.input(0).get() );
System.out.println( "press ENTER." );
waitForENTER();
System.out.println( "input 0 is " + bfIOs.input(0).get() );
// switch on digital out 0 and 1 ( 3 = 00000011 binary )
bfIOs.writeOutputRegister( 3 );
System.out.println( "outputs: " + bfIOs.readOutputRegister() + ", inputs: " + bfIOs.readInputRegister());
// the next line will reset bit 0 only, resulting in output 1 to remain high
// as the mask parameter of '1' defines that only the LSB of the register will be
// affected by the first parameter of the function call
bfIOs.writeOutputRegister( 0, 1 );
System.out.println( "outputs: " + bfIOs.readOutputRegister() + ", inputs " + bfIOs.readInputRegister() );
}
boolean isWriteable()
Checks if the caller has write/modify access to the component.
Definition Component.java:452
This class and its functions represent an actual device detected by this interface in the current sys...
Definition Device.java:52
boolean get()
Returns the current state of this input pin.
Definition DigitalInput.java:64
boolean flip()
Inverts the current state of the digital output and returns the previous state.
Definition DigitalOutput.java:64
boolean get()
Returns the current state of this output pin.
Definition DigitalOutput.java:74
A class to handle the digital inputs and outputs for mvBlueFOX USB cameras(Device specific interface ...
Definition IOSubSystemBlueFOX.java:126
PropertyI getDigitalInputThreshold()
An enumerated integer property defining the threshold for the digital inputs in Volt.
Definition IOSubSystemBlueFOX.java:310
IOSubSystemBlueFOX(long cPtr, boolean cMemoryOwn)
Definition IOSubSystemBlueFOX.java:129
void writeOutputRegister(long value, long mask)
Alters the state of the digital output register.
Definition IOSubSystemBlueFOX.java:223
long readInputRegister()
Returns the current state of the digital input register.
Definition IOSubSystem.java:116
long readOutputRegister()
Returns the current state of the digital output register.
Definition IOSubSystem.java:174
DigitalOutput output(long nr)
Returns a pointer to a mvIMPACT.acquire.DigitalOutput object.
Definition IOSubSystem.java:154
DigitalInput input(long nr)
Returns a const pointer to a mvIMPACT.acquire.DigitalInput object.
Definition IOSubSystem.java:135
PropertyI write(int value, int index)
Writes one value to the property.
Definition PropertyI.java:350
String readS(int index, String format)
Reads data from this property as a string.
Definition Property.java:293
Defines valid thresholds( in Volt ) for the digital inputs of the.
Definition TBlueFOXDigitalInputThreshold.java:16
static final int bfdit10V
This input is assumed as logic '1' when the voltage applied to the input lies above about 10 Volts.
Definition TBlueFOXDigitalInputThreshold.java:20
Note
The mvBlueFOX defines an additional property mvIMPACT.acquire.CameraSettingsBlueFOX.getFlashMode(). This might affect the state of the digital outputs as well.

If a digital output is defined to be 'logic 0' but the flash mode is switched on for the same digital output, the output will be high during the expose time of the camera sensor. If a digital output is defined to be 'logic 1' the output will be high all the time.

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

◆ IOSubSystemBlueFOX() [1/2]

IOSubSystemBlueFOX ( long cPtr,
boolean cMemoryOwn )
protected

◆ IOSubSystemBlueFOX() [2/2]

Constructs a new mvIMPACT.acquire.IOSubSystemBlueFOX object.

Parameters
pDev[in] A pointer to a mvIMPACT.acquire.Device object obtained from a mvIMPACT.acquire.DeviceManager object.

Member Function Documentation

◆ delete()

synchronized void delete ( )

Reimplemented from IOSubSystem.

◆ finalize()

void finalize ( )
protected

Reimplemented from IOSubSystem.

◆ getDigitalInputThreshold()

PropertyI getDigitalInputThreshold ( )

An enumerated integer property defining the threshold for the digital inputs in Volt.

If a voltage applied to the digital input lies above the threshold this pin will be considered as 'logic 1' otherwise it will be considered as 'logic 0'.

Valid values for this property are defined by the enumeration mvIMPACT.acquire.TBlueFOXDigitalInputThreshold.

Note
This property is read-only for mvBlueFOX-M devices and will always be 2V.

◆ getInputCount()

long getInputCount ( )
inherited

Returns the number of mvIMPACT.acquire.DigitalInput s available for the mvIMPACT.acquire.Device associated with this object.

◆ getOutputCount()

long getOutputCount ( )
inherited

Returns the number of digital outputs available for the mvIMPACT.acquire.Device associated with this object.

◆ getPulseStartConfiguration()

PulseStartConfiguration getPulseStartConfiguration ( long nr)
inherited

Returns a pointer to a mvIMPACT.acquire.PulseStartConfiguration associated with this device.

Parameters
nr[in] The number of the pulse start configuration to return

◆ getPulseStartConfigurationCount()

long getPulseStartConfigurationCount ( )
inherited

Returns the number of mvIMPACT.acquire.PulseStartConfiguration objects available for the mvIMPACT.acquire.Device associated with this object.

◆ getRTCtrProgram()

RTCtrProgram getRTCtrProgram ( long nr)
inherited

Returns a pointer to a mvIMPACT.acquire.RTCtrProgram associated with this device.

Parameters
nr[in] The number of the real time controller program to return

◆ input()

DigitalInput input ( long nr)
inherited

Returns a const pointer to a mvIMPACT.acquire.DigitalInput object.

Note
The possibility to access the digital inputs of a device as single objects is just provided for convenience. The same thing can be achieved by calling the function mvIMPACT.acquire.IOSubSystem.readInputRegister.
Parameters
nr[in] The number of the digital input.

◆ output()

DigitalOutput output ( long nr)
inherited

Returns a pointer to a mvIMPACT.acquire.DigitalOutput object.

Note
The possibility to access the digital outputs of a device as single objects is just provided for convenience. The same thing can be achieved by calling the function mvIMPACT.acquire.IOSubSystem.writeOutputRegister with the corresponding bit mask.
Parameters
nr[in] The number of the digital output.

◆ readInputRegister()

long readInputRegister ( )
inherited

Returns the current state of the digital input register.

This function can be used to read all digital inputs as a single value. Each bit represents the status of one digital output pin.

EXAMPLE

A value of '3' returned by this function means that digital inputs 0 and 1 are currently have a voltage considered as logical '1' applied to them.

◆ readInputRegisterAtomic()

long readInputRegisterAtomic ( )

Returns the current state of the digital input register.

This function can be used to read all digital inputs as a single value at the same time. Each bit represents the status of one digital output pin.

EXAMPLE

A value of '3' returned by this function means that digital inputs 0 and 1 are currently have a voltage considered as logical '1' applied to them.

◆ readOutputRegister()

long readOutputRegister ( )
inherited

Returns the current state of the digital output register.

This function can be used to read all digital outputs as a single value. Each bit represents the status of one digital output pin.

EXAMPLE

A value of '3' returned by this function means that digital output 0 and 1 are currently set to high.

◆ readOutputRegisterAtomic()

long readOutputRegisterAtomic ( )

Returns the current state of the digital output register.

This function can be used to read all digital outputs as a single value at the same time. Each bit represents the status of one digital output pin.

EXAMPLE

A value of '3' returned by this function means that digital output 0 and 1 are currently set to high.

◆ RTCtrProgramCount()

long RTCtrProgramCount ( )
inherited

Returns the number of mvIMPACT.acquire.RTCtrProgram s available for the mvIMPACT.acquire.Device associated with this object.

◆ swigRelease() [1/2]

static long swigRelease ( IOSubSystem obj)
staticprotectedinherited

◆ swigRelease() [2/2]

static long swigRelease ( IOSubSystemBlueFOX obj)
staticprotected

◆ writeOutputRegister() [1/2]

void writeOutputRegister ( long value)

Alters the state of the digital output register.

This function can be used to alter the state of certain (or all) digital outputs with a single function call. By working with the parameter mask certain bits can remain unaffected.

EXAMPLE

If the previous state of a digital output register was '5', which means that outputs 0 and 2 are set to high a call to mvIMPACT.acquire.IOSubSystem.writeOutputRegister with value set to 2 and mask set to 3 would result in '6' as the new value for the output register. Pin 2 will remain unaffected, as mask states just to modify pin 0 and 1 ( 3 = 00000011 binary ).

Parameters
value[in] The value to be applied to the output register set to '1' in this parameter means that the state of this output has to adopt its style according to the value in value.

Reimplemented from IOSubSystem.

◆ writeOutputRegister() [2/2]

void writeOutputRegister ( long value,
long mask )

Alters the state of the digital output register.

This function can be used to alter the state of certain (or all) digital outputs with a single function call. By working with the parameter mask certain bits can remain unaffected.

EXAMPLE

If the previous state of a digital output register was '5', which means that outputs 0 and 2 are set to high a call to mvIMPACT.acquire.IOSubSystem.writeOutputRegister with value set to 2 and mask set to 3 would result in '6' as the new value for the output register. Pin 2 will remain unaffected, as mask states just to modify pin 0 and 1 ( 3 = 00000011 binary ).

Parameters
value[in] The value to be applied to the output register
mask[in] The mask to specify which pins to modify. A bit set to '1' in this parameter means that the state of this output has to adopt its style according to the value in value.

Reimplemented from IOSubSystem.

◆ writeOutputRegisterAtomic() [1/2]

void writeOutputRegisterAtomic ( long value)

Alters the state of the digital output register.

This function can be used to alter the state of certain (or all) digital outputs with a single function call at the same time. By working with the parameter mask certain bits can remain unaffected.

EXAMPLE

If the previous state of a digital output register was '5', which means that outputs 0 and 2 are set to high a call to mvIMPACT.acquire.IOSubSystem.writeOutputRegister with value set to 2 and mask set to 3 would result in '6' as the new value for the output register. Pin 2 will remain unaffected, as mask states just to modify pin 0 and 1 ( 3 = 00000011 binary ).

Parameters
value[in] The value to be applied to the output register set to '1' in this parameter means that the state of this output has to adopt its style according to the value in value.

◆ writeOutputRegisterAtomic() [2/2]

void writeOutputRegisterAtomic ( long value,
long mask )

Alters the state of the digital output register.

This function can be used to alter the state of certain (or all) digital outputs with a single function call at the same time. By working with the parameter mask certain bits can remain unaffected.

EXAMPLE

If the previous state of a digital output register was '5', which means that outputs 0 and 2 are set to high a call to mvIMPACT.acquire.IOSubSystem.writeOutputRegister with value set to 2 and mask set to 3 would result in '6' as the new value for the output register. Pin 2 will remain unaffected, as mask states just to modify pin 0 and 1 ( 3 = 00000011 binary ).

Parameters
value[in] The value to be applied to the output register
mask[in] The mask to specify which pins to modify. A bit set to '1' in this parameter means that the state of this output has to adopt its style according to the value in value.

Member Data Documentation

◆ swigCMemOwn

transient boolean swigCMemOwn
protectedinherited