mirror of
https://github.com/wpilibsuite/allwpilib
synced 2026-06-30 02:31:44 +00:00
Create VideoCamera base class and move camera settings functions to it.
This makes them available for both UsbCamera and HttpCamera / AxisCamera. To avoid virtual functions in the public-facing interface, move the implementation of the camera settings functions to the core library.
This commit is contained in:
@@ -107,6 +107,16 @@ class SourceImpl {
|
||||
std::vector<std::string> GetEnumPropertyChoices(int property,
|
||||
CS_Status* status) const;
|
||||
|
||||
// Standard common camera properties
|
||||
virtual void SetBrightness(int brightness, CS_Status* status) = 0;
|
||||
virtual int GetBrightness(CS_Status* status) const = 0;
|
||||
virtual void SetWhiteBalanceAuto(CS_Status* status) = 0;
|
||||
virtual void SetWhiteBalanceHoldCurrent(CS_Status* status) = 0;
|
||||
virtual void SetWhiteBalanceManual(int value, CS_Status* status) = 0;
|
||||
virtual void SetExposureAuto(CS_Status* status) = 0;
|
||||
virtual void SetExposureHoldCurrent(CS_Status* status) = 0;
|
||||
virtual void SetExposureManual(int value, CS_Status* status) = 0;
|
||||
|
||||
// Video mode functions
|
||||
VideoMode GetVideoMode(CS_Status* status) const;
|
||||
virtual bool SetVideoMode(const VideoMode& mode, CS_Status* status) = 0;
|
||||
|
||||
Reference in New Issue
Block a user