using mv.impact.acquire.examples.helper;
using System;
using System.Threading;
namespace GenICamCallbackOnEvent
{
{
public EventCallback(Object pUserData) : base(pUserData) { }
public override void execute(
Component c, Object pUserData)
{
try
{
{
}
}
{
Console.WriteLine("An error occurred while retrieving the callback value. Error code: " + e.Message + ").");
}
}
static void Main(string[] args)
{
Device pDev = DeviceAccess.getDeviceFromUserInput();
if (pDev == null)
{
Console.WriteLine("Unable to continue! Press any key to end the program.");
Console.Read();
Environment.Exit(1);
}
Console.WriteLine("Initialising the device. This might take some time...");
try
{
}
{
Console.WriteLine(
"An error occurred while opening the device " + pDev.
serial +
"(error code: " + e.Message + "). Press any key to end the application...");
Console.ReadLine();
Environment.Exit(1);
}
try
{
}
{
Console.WriteLine(
"An error occurred while setting up event control to the device " + pDev.
serial.
read()
+ "(error code: " + e.Message + ").");
}
#if USE_DISPLAY
ImageDisplayWindow window =
new ImageDisplayWindow(String.Format(
"mvIMPACT_acquire sample, Device {0}", pDev.
serial.
read()));
#endif
bool terminated = false;
Console.WriteLine("Press [ENTER] to end the application");
EventCallback eventCallback = new EventCallback(ec);
Thread thread = new Thread(delegate ()
{
if (result !=
TDMR_ERROR.DEV_NO_FREE_REQUEST_AVAILABLE)
{
}
DeviceAccess.manuallyStartAcquisitionIfNeeded(pDev, fi);
int timeout_ms = 500;
while (!terminated)
{
if (pRequest != null)
{
{
#if USE_DISPLAY
# if CLR_AT_LEAST_3_DOT_5
window.imageDisplay.SetImage(pRequest);
# else
# endif
window.imageDisplay.Update();
#endif
}
else
{
}
if (pPreviousRequest != null)
{
}
pPreviousRequest = pRequest;
}
}
DeviceAccess.manuallyStopAcquisitionIfNeeded(pDev, fi);
#if USE_DISPLAY
window.imageDisplay.RemoveImage();
#endif
if (pRequest != null)
{
}
});
thread.Start();
Console.ReadLine();
terminated = true;
thread.Join();
#if USE_DISPLAY
window.Dispose();
#endif
}
}
}
String name
Returns the name of the component referenced by this object.
Definition ComponentAccess.cs:167
int hObj
Returns a unique identifier for the component referenced by this object.
Definition ComponentAccess.cs:155
A simple helper class to wrap the creation of a callback object.
Definition ComponentCallback.cs:108
A base class to implement access to internal driver components.
Definition Component.cs:133
bool isProp
Checks if this component is of type mv.impact.acquire.Property or a derived type.
Definition Component.cs:708
This class and its functions represent an actual device detected by this interface in the current sys...
Definition Device.cs:91
const int INVALID_ID
A symbolic constant to define an invalid handle.
Definition Device.cs:178
void open()
Opens a device.
Definition Device.cs:209
readonly PropertyS serial
A string property (read-only) containing the serial number of this device.
Definition Device.cs:516
T read()
Reads a value from a property.
Definition EnumPropertyI.cs:342
The function interface to devices supported by this interface.
Definition FunctionInterface.cs:21
int imageRequestSingle()
Sends an image request to the mv.impact.acquire.Device driver.
Definition FunctionInterface.cs:656
Request getRequest(int nr)
Returns a const pointer to the desired mv.impact.acquire.Request.
Definition FunctionInterface.cs:452
int imageRequestWaitFor(int timeout_ms)
Waits for a request object to become ready.
Definition FunctionInterface.cs:1021
int imageRequestReset(int requestCtrlNr)
Deletes all requests currently queued for the specified mv.impact.acquire.ImageRequestControl.
Definition FunctionInterface.cs:575
bool isRequestNrValid(int nr)
Check if nr specifies a valid mv.impact.acquire.Request.
Definition FunctionInterface.cs:1098
Category that contains Event control features.
Definition mvIMPACT_acquire_GenICam.autogen.cs:5327
readonly mv.impact.acquire.PropertyI64 eventExposureEndFrameID
An integer property. Returns the unique Identifier of the Frame (or image) that generated the Exposur...
Definition mvIMPACT_acquire_GenICam.autogen.cs:6465
readonly mv.impact.acquire.PropertyI64 eventNotification
An enumerated integer property. Activate or deactivate the notification to the host application of th...
Definition mvIMPACT_acquire_GenICam.autogen.cs:6120
readonly mv.impact.acquire.PropertyI64 eventExposureEndTimestamp
An integer property. Returns the Timestamp of the Exposure End Event.
Definition mvIMPACT_acquire_GenICam.autogen.cs:6460
readonly mv.impact.acquire.PropertyI64 eventSelector
An enumerated integer property. Selects which Event to signal to the host application.
Definition mvIMPACT_acquire_GenICam.autogen.cs:6106
An base class for exceptions generated by Impact Acquire.
Definition Exceptions.cs:9
static String getErrorCodeAsString(int errorCode)
Returns a string representation of a error.
Definition Exceptions.cs:48
A small helper class to administer various library search path related variables and paths.
Definition LibraryPath.cs:14
static void init()
Calling this method will add the folders containing unmanaged libraries to the systems library search...
Definition LibraryPath.cs:251
IntPtr read()
Reads a value from a property.
Definition PropertyPtr.cs:49
String read()
Reads a value from a property.
Definition PropertyS.cs:144
A base class for properties.
Definition Property.cs:109
String readS()
Reads data from this property as a string.
Definition Property.cs:303
Contains information about a captured buffer.
Definition Request.cs:77
readonly PropertyPtr imageData
A pointer property (read-only) containing the start address of the image data.
Definition Request.cs:1579
readonly PropertyI imageLinePitch
An integer property (read-only) containing the offset (in bytes) to the next line of each channel bel...
Definition Request.cs:1655
readonly EnumPropertyI< TRequestResult > requestResult
An enumerated integer property (read-only) defining the result of this request.
Definition Request.cs:1211
readonly PropertyI imageWidth
An integer property (read-only) containing the width of the image in pixels.
Definition Request.cs:1693
readonly PropertyI imageBytesPerPixel
An integer property (read-only) containing the number of bytes per pixel in this image.
Definition Request.cs:1679
bool isOK
Convenience function to check if a request has been processed successfully.
Definition Request.cs:1173
readonly PropertyI imageHeight
An integer property (read-only) containing the height of the image in pixels.
Definition Request.cs:1704
int unlock()
Unlocks the request for the driver again.
Definition Request.cs:619
TDMR_ERROR
Errors reported by the device manager.
Definition mvDriverBaseEnums.cs:2375
This namespace contains classes and functions belonging to the GenICam specific part of the image acq...
Definition GenTLDriverConfigurator.cs:6
This namespace contains classes and functions belonging to the image acquisition module of this SDK.
Definition Enumerations.cs:2
Definition Enumerations.cs:2
Definition Enumerations.cs:2