CVB.Net 14.0
Stemmer.Cvb.Driver Namespace Reference

Classes

class  AccessToken
 Parsed (partial) access token. More...
 
class  Buffer
 A simple contiguous block of memory. More...
 
class  BufferImage
 Stream image that is returned when no IRingBuffer interface is available. More...
 
class  BufferNodeMapDictionary
 NodeMapDictionary for Streams. More...
 
class  CompositeStream
 Stream that returns composites. More...
 
class  CompositeStreamBase
 Base class for streams that work with composites. More...
 
class  DeviceControl
 Implementation of the IDeviceControl interface. More...
 
struct  DeviceControlCommand
 A specific command to send to the driver. More...
 
class  DeviceEventArgs
 Event argument for notifying a device change. More...
 
class  DeviceImage
 Special device image. More...
 
class  DeviceInterfaceBase
 Base class of all the driver interface implementations. More...
 
class  DeviceNodeMapDictionary
 NodeMapDictionary for Devices. More...
 
class  DigitalIO
 Digital I/O operations on a Device. More...
 
struct  DiscoveryInformation
 Stores information on a discovered device/node. More...
 
class  DiscoveryInformationDebuggerView
 Debugger view for the discovery info. More...
 
class  DiscoveryInformationList
 Contains all results from a discovery run. More...
 
class  DriverDeviceTracker
 Singleton class tracking all opened Device objects from drivers. More...
 
class  EmuDevice
 A Device representing an image stream based on single image files. More...
 
class  EmuImage
 Image of a CVB emulation object. More...
 
class  FileDriverDeviceSet
 Sorted list containing all weak references to opened devices from either the file driver, an avi-stream or a non-streaming device. More...
 
class  GenICamDevice
 Device supporting typed composite streams. More...
 
class  Grab2Statistics
 Statistics implementation for the IGrab2 interface. More...
 
interface  IAcquisition
 Interface for all streaming devices More...
 
interface  IBuffer
 A simple contiguous block of memory. More...
 
interface  IDeviceControl
 Driver specific get or set operations on a Device. More...
 
interface  IDeviceInterface
 Base interface of all Device interfaces. More...
 
interface  IDeviceSet
 Interface for Device sets. More...
 
interface  IDigitalIO
 Digital I/O operations on a Device. More...
 
interface  IImageRect
 Image rectangle query and change operations. More...
 
class  ImageRect
 Image rectangle operations on a Device. More...
 
class  ImageStream
 Stream that delivers images. More...
 
class  IndexedStream
 A stream with a finite number of images, which can also be accessed via an IndexedStream.ImageIndex. More...
 
interface  INotifyObservable
 Observable of of the INotify interface. More...
 
interface  IPfncBuffer
 A Buffer that has GenICam layout information available. More...
 
interface  IRegPort
 Enables direct memory access on the device. More...
 
interface  IRingBuffer
 RingBuffer operations on a Device. More...
 
interface  ISoftwareTrigger
 Software trigger interface to trigger image acquisition from the application. More...
 
interface  IStream
 Base class for all device streams. More...
 
class  MultiPartImage
 A StreamImage that can have more Parts associated with it. More...
 
class  NamespaceDoc
 The types in the namespace Stemmer.Cvb.Driver expose part of the functionality covered by the CVCDriver.dll. More...
 
class  NodeMapDictionary
 Device dictionary holding all node maps. More...
 
class  NodeMapDictionaryDebugView
 Debug view for the node map dictionary. More...
 
class  NodeMapNames
 Contains all known node map names. More...
 
class  NonStreamingDevice
 A Device representing a device without any streaming capabilities. More...
 
class  NoStatistics
 Statistics object for anything not being able to report statistics. More...
 
class  NotifyDictionary
 Read-only collection containing all INotify events of a Device. More...
 
class  NotifyDictionaryDebugView
 Debug view for the notify observable dictionary. More...
 
class  NotifyEventArgs
 Event argument for notification events. More...
 
class  NotifyObservable
 Single notify event observable. More...
 
class  PfncBuffer
 A Buffer that has GenICam layout information available. More...
 
class  PointCloudStream
 Stream that delivers PointClouds. More...
 
class  RegPort
 Register port implementation. More...
 
class  RingBuffer
 RingBuffer operations on a Device. More...
 
class  RingBufferDebugView
 Helper to show only the relevant ring buffer images. More...
 
class  RingBufferImage
 Stream image that is returned, when the IRingBuffer interface is available on a device. More...
 
class  SoftwareTrigger
 Implementation of the software trigger. More...
 
class  Stream
 Represents one acquisition stream of a Device. More...
 
class  StreamImage
 Base class of all stream related images. More...
 
class  StreamNodeMapDictionary
 NodeMapDictionary for Streams. More...
 
class  StreamStatistics
 Gives access to stream related statistics. More...
 
class  StreamStatisticsDebuggerView
 Debugger view for the statistics. More...
 
class  VideoBufferImage
 Acquired image in a video stream. More...
 
class  VideoDevice
 A Device representing a video stream from the hard disk. More...
 
class  VideoImage
 Image of a video. More...
 
class  VinConnectionInformation
 Contains the board and port information of a Device or its access token. More...
 
class  VinDevice
 A Device representing a video interface driver (vin). More...
 
class  VinDriverDeviceSet
 Sorted list containing all weak references to opened devices from a certain Vin driver. More...
 
struct  VinDriverEnumeration
 Helper object to enumerate boards and ports. More...
 
class  VinImage
 Image of a CVB Virtual Interface object. More...
 

Enumerations

enum  AcquisitionState { Stopped , Started , Stopping , AbortingStop }
 Specifies current state of the acquisition engine. More...
 
enum  ModuleLayer {
  Unknown = 0 , System , Vin , TransportLayerSystem ,
  TransportLayerInterface , TransportLayerDevice , TransportLayerStream
}
 Level of an access token entry. More...
 
enum  DiscoveryProperties {
  InterfaceSubNetList = 2000 , InterfaceMac , InterfaceTLType , InterfaceDisplayName ,
  InterfaceDriverType , InterfaceId , DeviceTransportLayerType = 3000 , DeviceUsername ,
  DeviceSerialNumber , DeviceMac , DeviceIP , DeviceSubnetMask ,
  DeviceUsbVendorId , DeviceUsbProductId , DeviceVendor , DeviceModel ,
  DeviceId , DeviceAccessStatus , TransportLayerId = 4000 , TransportLayerPath ,
  TransportLayerVendor , UsbPortPath
}
 Properties which can be queried from a DiscoveryInformation entry. More...
 
enum  WaitStatus { Ok , Timeout , Abort }
 Extended status code for IAcquisition.Wait(out WaitStatus) and IAcquisition.WaitFor(UsTimeSpan, out WaitStatus) methods. More...
 
enum  DeviceControlOperation {
  Get = 0x00000000 , Set = 0x10000000 , GetMinimum = 0x20000000 , GetMaximum = 0x30000000 ,
  Verify = 0x40000000
}
 Operation on driver specific parameter. More...
 
enum  RingBufferLockMode { Auto = 0 , Off = 1 , On = 2 }
 Lock mode options. More...
 
enum  AcquisitionInterface { Grabber , Grab2 , Grab3 }
 Known acquisition CVB interfaces. More...
 
enum  StreamInfo {
  IsCameraDetected = 8 , NumBuffersAcquired = 0 , NumBuffersDelivered = 11 , NumBuffersLost = 14 ,
  NumBuffersLostTransfer = 1 , NumBuffersLostLocked = 2 , NumBuffersLocked = 3 , NumBuffersPending = 4 ,
  NumBuffersCorruptOnArrival = 12 , NumBuffersCorruptOnDelivery = 13 , NumTriggersLost = 7 , NumBuffersAnnounced = 18 ,
  NumBuffersQueued = 17 , NumBuffersBeingFilled = 19 , NumPacketsReceived = 20 , NumResends = 21
}
 Queryable information. More...
 
enum  PlaybackMode { FrameByFrame , Stream }
 Defines how frames are acquired by this video device. More...
 

Enumeration Type Documentation

◆ AcquisitionInterface

Known acquisition CVB interfaces.

Enumerator
Grabber 

Basic grabber interface for single image acquisition.

Grab2 

Ring buffer/queue based acquisition.

Grab3 

Composite based aquisition.

◆ AcquisitionState

Specifies current state of the acquisition engine.

Enumerator
Stopped 

The engine is stopped.

Started 

The engine is started.

Stopping 

The engine is in the process of stopping.

AbortingStop 

THe engine is aborting an ongoing stop.

◆ DeviceControlOperation

Operation on driver specific parameter.

Enumerator
Get 

Get information from the device.

Set 

Set information in the device.

GetMinimum 

Gets the minimal supported value for the parameter.

GetMaximum 

Gets the maximal supported value for the parameter.

Verify 

Verify the given value for the parameter.

◆ DiscoveryProperties

Properties which can be queried from a DiscoveryInformation entry.

Enumerator
InterfaceSubNetList 

Ethernet interface only: subnet list.

The list contains space separated IP/subnet mask pairs.

InterfaceMac 

Ethernet interface only: MAC address.

InterfaceTLType 

Interface only: GenTL transport layer type.

Content as per GenICam GenTL specification (www.GenICam.org).

InterfaceDisplayName 

Interface only: Human readable name of the interface.

InterfaceDriverType 

Interface only: for Stemmer Imaging GEVTL type.

Possible values are "SOCKET", "FILTER", "NA" (not applicable), "UNKNOWN".

InterfaceId 

Interface only: GenTL identifier of the interface.

DeviceTransportLayerType 

Device only: GenTL transport layer type.

Content as per GenICam GenTL specification (www.GenICam.org).

DeviceUsername 

Device only: User configured name.

DeviceSerialNumber 

Device only: Serial number.

DeviceMac 

Ethernet device only: MAC address.

DeviceIP 

Ethernet device only: IP address.

DeviceSubnetMask 

Ethernet device only: Subnet mask.

DeviceUsbVendorId 

USB device only: USB vendor identifier.

DeviceUsbProductId 

USB device only: USB product identifier.

DeviceVendor 

Device only: Vendor name.

DeviceModel 

Device only: Model name.

DeviceId 

Device only: GenTL identifier of the interface.

DeviceAccessStatus 

Device only: accessibility status.

Possible values are "READWRITE", "READONLY", "NOACCESS", "UNKNOWN" (for non-Stemmer GenTL Producers).

TransportLayerId 

Unique identifier of the GenTL Producer.

TransportLayerPath 

File path of the CTI file (GenTL Producer library).

TransportLayerVendor 

Vendor name of the GenTL Producer.

UsbPortPath 

Port path of the USB device.

◆ ModuleLayer

Level of an access token entry.

Enumerator
Unknown 

Invalid or not filled yet.

System 

Discovery system module (root).

Vin 

VIN driver module.

TransportLayerSystem 

GenTL Producer system module.

TransportLayerInterface 

GenTL Producer interface module.

TransportLayerDevice 

GenTL Producer device module.

TransportLayerStream 

GenTL Producer stream module.

◆ PlaybackMode

Defines how frames are acquired by this video device.

Enumerator
FrameByFrame 

The IAcquisition.Wait() method always returns the next image in the video stream.

Stream 

The IAcquisition.Wait() method syncs to the videos playback rate. That means if you call this method faster than the frame time the call will block. But on the other hand if you are slower than the frame time you will eventually drop images.

◆ RingBufferLockMode

Lock mode options.

Enumerator
Auto 

Buffer is automatically unlocked while streaming.

Traditional CVB behavior when you are using any of the acquisition interfaces.

Off 

Buffers are not locked at all.

Images are simply written in the ring buffer and overwrite existing image data.

On 

Buffer is locked after acquisition.

Has to be manually unlocked via RingBufferImage.Unlock() method. If all buffers are locked the system looses images.

◆ StreamInfo

enum StreamInfo

Queryable information.

Attention: All streams only provide a sub-set of the available queries. So always make sure that the information is available when switching devices/drivers.

Enumerator
IsCameraDetected 

Gets whether a camera is currently detected.

The value is interpreted as a C boolean: everything except 0 is true.

This information depends on the camera/frame grabber technology. It can be the presence of a signal from e.g. a CameraLink camera or an active heartbeat signal from a GigE Vision device.

NumBuffersAcquired 

The number of images buffers acquired since start of the last acquisition.

NumBuffersDelivered 

Number of image buffers successfully returned by the stream's wait method.

This counts both corrupt and complete image buffers. Corrupt images are only delivered if enabled by the driver (normally defaults to yes).

NumBuffersLost 

Count that incorporates all lost image buffers despite their reason. Can be transfer, corruption, or overflown ring buffer.

NumBuffersLostTransfer 

Count that only contains lost images during transfer.

NumBuffersLostLocked 

Count that only contains lost images due to ring buffer overflow.

NumBuffersLocked 

Number of images currently in locked state.

NumBuffersPending 

Number of images acquired, but not retrieved via the stream's wait method.

NumBuffersCorruptOnArrival 

Count that contains erroneous image buffer acquisition.

Packet resend can alleviate this problem and result in complete buffer to be delivered via the stream's wait method. But higher counts indicate a bad connection either due to transfer errors or to high throughput.

NumBuffersCorruptOnDelivery 

Count that contains erroneous image buffers delivered via the stream's wait method.

This count can only increase if corrupt images are delivered from the driver (default is yes). That means that either packet resend is disabled or packet resend could not complete the image buffer.

NumTriggersLost 

Gets how many trigger signals where ignored by the device due to e.g. over-triggering.

NumBuffersAnnounced 

Number of buffers used in the acquisition engine.

This is the number of images in the ring buffer.

NumBuffersQueued 

Number of buffers available to be filled by the acquisition engine. I.e. image buffers that are not locked.

NumBuffersBeingFilled 

Number of buffer currently being filled by the acquisition engine.

NumPacketsReceived 

For packet based protocols this contains the actual number of packets received (parts of a whole image buffer).

NumResends 

Number of resend requests sent since start of the last acquisition.

◆ WaitStatus

enum WaitStatus

Extended status code for IAcquisition.Wait(out WaitStatus) and IAcquisition.WaitFor(UsTimeSpan, out WaitStatus) methods.

You can use the methods with this overload to not generate exceptions in the cases WaitStatus.Timeout or WaitStatus.Abort.

With the Async methods we follow the .Net idiom of setting the Task to canceled (see Task.IsCanceled) resulting in OperationCanceledException when using await.

Enumerator
Ok 

Image was returned normally.

Timeout 

No image was returned because the operation timed out.

Abort 

No image was returned because the operation was IAcquisition.Aborted.