Is it possible from with a device driver that before iocInit (or during some part of it) to programmatically build a database record for use in EPICS?
I know of a driver that does that, yes.
In the initialization of the driver (started by calls from the startup script) they detect the hardware and create a matching DB file in '/tmp', then load that file. Works fine.
I don't like that for a production system for multiple reasons. Having no or little control over which records an IOC loads.... Broken cards that would just disappear from the name space with no trace....
But I see the advantage for plug-and-play lab use.
If you don't hard code the records into the driver code, but maybe blow up from templates that are part of your application, you would give the user at least some control.
Cheers,
~Ralph