4#include "declarative/PropertyMacros.h"
28 template<
typename PropsT>
31 const std::map<std::string, apra::ScalarPropertyValue>& values,
32 std::vector<std::string>& missingRequired
34 apra::applyProp(props.contrast,
"contrast", values,
false, missingRequired);
35 apra::applyProp(props.brightness,
"brightness", values,
false, missingRequired);
39 if (propName ==
"contrast")
return contrast;
40 if (propName ==
"brightness")
return brightness;
41 throw std::runtime_error(
"Unknown property: " + propName);
45 if (propName ==
"contrast") {
contrast = std::get<double>(value);
return true; }
46 if (propName ==
"brightness") {
brightness = std::get<double>(value);
return true; }
47 throw std::runtime_error(
"Unknown property: " + propName);
51 return {
"contrast",
"brightness"};
57 template <
class Archive>
58 void serialize(Archive &ar,
const unsigned int version)
60 ar &boost::serialization::base_object<ModuleProps>(*
this);
77 bool process(frame_container &frames);
81 void addInputPin(framemetadata_sp &metadata,
string &pinId);
Definition BrightnessContrastControlXform.h:7
size_t getSerializeSize()
Definition BrightnessContrastControlXform.h:20
bool setProperty(const std::string &propName, const apra::ScalarPropertyValue &value)
Definition BrightnessContrastControlXform.h:44
apra::ScalarPropertyValue getProperty(const std::string &propName) const
Definition BrightnessContrastControlXform.h:38
BrightnessContrastControlProps(double _contrast, double _brightness)
Definition BrightnessContrastControlXform.h:9
static void applyProperties(PropsT &props, const std::map< std::string, apra::ScalarPropertyValue > &values, std::vector< std::string > &missingRequired)
Definition BrightnessContrastControlXform.h:29
double brightness
Definition BrightnessContrastControlXform.h:18
double contrast
Definition BrightnessContrastControlXform.h:17
BrightnessContrastControlProps()
Definition BrightnessContrastControlXform.h:13
friend class boost::serialization::access
Definition BrightnessContrastControlXform.h:55
static std::vector< std::string > dynamicPropertyNames()
Definition BrightnessContrastControlXform.h:50
void serialize(Archive &ar, const unsigned int version)
Definition BrightnessContrastControlXform.h:58
Definition BrightnessContrastControlXform.cpp:12
Definition BrightnessContrastControlXform.h:66
virtual ~BrightnessContrastControl()
Definition BrightnessContrastControlXform.cpp:44
boost::shared_ptr< Detail > mDetail
Definition BrightnessContrastControlXform.h:87
bool term()
Definition BrightnessContrastControlXform.cpp:105
void setProps(BrightnessContrastControlProps &props)
Definition BrightnessContrastControlXform.cpp:174
void addInputPin(framemetadata_sp &metadata, string &pinId)
Definition BrightnessContrastControlXform.cpp:92
bool init()
Definition BrightnessContrastControlXform.cpp:100
bool validateInputPins()
Definition BrightnessContrastControlXform.cpp:46
void setMetadata(framemetadata_sp &metadata)
Definition BrightnessContrastControlXform.cpp:124
bool process(frame_container &frames)
Definition BrightnessContrastControlXform.cpp:110
bool handlePropsChange(frame_sp &frame)
Definition BrightnessContrastControlXform.cpp:166
bool processSOS(frame_sp &frame)
Definition BrightnessContrastControlXform.cpp:153
BrightnessContrastControlProps getProps()
Definition BrightnessContrastControlXform.cpp:160
bool validateOutputPins()
Definition BrightnessContrastControlXform.cpp:73
BrightnessContrastControl(BrightnessContrastControlProps _props)
Definition BrightnessContrastControlXform.cpp:39
virtual size_t getSerializeSize()
Definition Module.h:101
void applyProp(T &member, const char *propName, const std::map< std::string, ScalarPropertyValue > &values, bool isRequired, std::vector< std::string > &missingRequired)
Definition PropertyMacros.h:36
std::variant< int64_t, double, bool, std::string > ScalarPropertyValue
Definition ModuleRegistry.h:30