Instead of having separate get/set functions for each property (zoom, exposure, focus etc), the library has just three functions:
/** get the min/max limits of a camera/stream property (e.g. zoom, exposure etc) */
Cap_getPropertyLimits(CapContext ctx, CapStream stream, CapPropertyID propID, int32_t *min, int32_t *max);
/** set the value of a camera/stream property (e.g. zoom, exposure etc) */
Cap_setProperty(CapContext ctx, CapStream stream, CapPropertyID propID, int32_t value);
/** set the automatic flag of a camera/stream property (e.g. zoom, focus etc) */
Cap_setAutoProperty(CapContext ctx, CapStream stream, CapPropertyID propID, uint32_t bOnOff);
This simplifies the API and makes sure we can add properties in the future.
Hey @trcwm, I haven't done a full review of this, but the API changes make sense to me and I think it's a good way to go. I'd say go ahead and merge it as long as you are happy with it.
Instead of having separate get/set functions for each property (zoom, exposure, focus etc), the library has just three functions:
This simplifies the API and makes sure we can add properties in the future.