So, I created a fairly functional camera emulation interface

Hi - In the course of normal development work for a client, I developed a fairly functional camera interface layer. Purpose is to allow the customer to test their camera access code, which uses aravis, to unit test in an environment without hardware - such as in CI. This interface implements derivations of ArvInterface, ArvDevice and ArvCamera. It has the facility to import any GenICam xml file to populate an ArvGc object. The emulation version of ArvDevice has the accessors in it which allow it to access the ArvGc device as if it were an actual device. These accessors use a custom hash table to efficiently implement the emulated device register map. There are utilities to access the register map directly if you know the register address. I am likely to add a means to trawl the XML and read/write particular registers. Currently, devices are created manually, and added to the emulated interface after it has been registered. But I am also thinking about adding a facility to “discover” devices by iterating through a folder of XML files and creating new devices and adding them to the interface. At present, it is pretty bare of the actual imaging part of the emulation.

I was wondering if the aravis team was interested in such a capability? Where do I find the workflows for ensuring code quality and submitting a PR, should you be interested?

Kind regards,
Paul O.

Hi,

Sorry for the late reply, I was not receiving notifications from discourse lately.

If you have already developed a functionality, just open a merge request on github. We will discuss it there.

Thanks.

Emmanuel.