A class that contains items to configure the behaviour of the GenICam GenTL driver stack.
More...
A class that contains items to configure the behaviour of the GenICam GenTL driver stack.
This class contains items e.g. to configure the enumeration behaviour of third party GenTL producer libraries.
Since version 2.32.0 Impact Acquire has built-in support for third party GenTL producer libraries. The latest version of the GenTL specification can be found here: https://www.emva.org/standards-technology/genicam/.
Detection of GenTL producer libraries works by evaluating the GENICAM_GENTL32_PATH
environment variable within a 32-bit process or the GENICAM_GENTL64_PATH
variable in a 64-bit process. This variable contains a list of directories that might potentially contain GenTL producer libraries. These libraries use a the file extension
.cti and export a defined interface.
All libraries that fulfill these requirements will be loaded into the Impact Acquire process. By default all these libraries will then also be enumerated for connected/bound devices. The only exception will be if a third party producer is found that reports an interface supporting the same technology as one delivered by Impact Acquire (e.g. for the GigE Vision or USB3 Vision standard). These interfaces by default will not be enumerated.
The purpose of this class now is to allow an application to modify this behaviour. This might be beneficial for several reasons:
- a certain third party library on the system has negative impact on the overall stability of the process
- there are so many third party libraries on the system that enumeration takes a very long time but the application does not want to access devices reported by these third party libraries
- multiple producers support the same device resulting in very long and confusing device lists
- etc.
To exclude a certain producer from enumeration first an mvIMPACT::acquire::GenICam::GenTLProducerConfiguration entry for that producer must be created and then the mvIMPACT::acquire::GenICam::GenTLProducerConfiguration::enumerationEnable property for this producer must be set to mvIMPACT::acquire::bFalse.
{
}
else
{
}
const EnumPropertyI & write(ZYX value, int index=0) const
Writes one value to the property.
Definition mvIMPACT_acquire.h:4426
A class that contains items to configure the behaviour of the GenICam GenTL driver stack.
Definition mvIMPACT_acquire.h:24162
bool hasProducerConfiguration(const std::string &producerName) const
Checks if a certain producer library has been associated with a mvIMPACT::acquire::GenICam::GenTLProd...
Definition mvIMPACT_acquire.h:24296
GenTLProducerConfiguration getProducerConfiguration(const std::string &producerName) const
Returns the mvIMPACT::acquire::GenICam::GenTLProducerConfiguration associated with the referenced pro...
Definition mvIMPACT_acquire.h:24310
GenTLProducerConfiguration createProducerConfiguration(const std::string &producerName, const std::string &interfaceID="")
Creates a new mvIMPACT::acquire::GenICam::GenTLProducerConfiguration object for the desired interface...
Definition mvIMPACT_acquire.h:24234
PropertyIBoolean enumerationEnable
An enumerated integer property defining the enumeration behavior this particular GenTL producer.
Definition mvIMPACT_acquire.h:23905
@ bFalse
Off, false or logical low.
Definition mvDriverBaseEnums.h:589
To exclude a certain interface from a producer from enumeration an mvIMPACT::acquire::GenICam::GenTLProducerConfiguration::enumerationEnable property for this producer can be set to mvIMPACT::acquire::bFalse and the interface enumeration behaviour should be set to mvIMPACT::acquire::iebForceEnumerate.
configuration.createProducerInterfaceConfigurationEntry(
"ACME.interface0.ID" ).
write(
iebForceIgnore );
A class that contains items to configure the behaviour of the GenICam GenTL driver stack.
Definition mvIMPACT_acquire.h:23852
@ bTrue
On, true or logical high.
Definition mvDriverBaseEnums.h:591
@ iebForceIgnore
The interface will not enumerate devices, regardless of the general enumeration behavior of this inte...
Definition mvDriverBaseEnums.h:4008
The same thing can be done the other way round:
@ iebForceEnumerate
The interface will forcefully enumerate devices, regardless of the general enumeration behavior of th...
Definition mvDriverBaseEnums.h:4010
- See also
- Setting Up The Framework For Third Party GenTL Producer Usage
- Since
- 2.34.0