Modules | |
IDeviceControl | |
Interface for controlling device related properties. | |
INodeMapHandle | |
Interface for accessing module properties [Legacy API: 1st generation]. | |
INodeMapHandle2 | |
Interface for accessing module properties. | |
CVCDriver.dll offers entry points for programmers to set up and use hardware devices from their programs. Its abstracted structures based on standardized modules simplify tasks that involve image data acquisition devices.
The most basic entry point is the INodeMapHandle2 Interface that exposes properties through a node map, which belong to various categories of driver-related components, to programmers.
To get the handle of a node map, it is required to walk through the following steps: First, check if the target object supports INodeMapHandle2 calling CanNodeMapHandle2; The following types can support INodeMapHandle2; that means a device module, or a data stream module can have a node map that represents its properties:
Note that these types are synonyms for a common type so even if a function signature says that it takes an IMG but it is also valid to pass a DEVOJB or a CVDSTREAM. So a CVDSTREAM can be passed to CanNodeMapHandle2 to check if the object can expose its node map through NMH2GetNodeMap.
If it supports the interface then get the number of node maps in the device calling NMH2GetNum. After that, calling NMH2GetID retrieve each ID that is required to access nodes in the given node map. Finally, the handle can be retrieved by NMH2GetNodeMap supplying an ID as a key.
Modules in the hierarchy are defines as follows:
The following diagram represents the logical hierarchy of a GenTL based structure that the INodeMapHandle2 Interfaces defines.