48 class DepthSensorInterface;
59 virtual ~
Camera() =
default;
88 virtual Status setMode(
const uint8_t &
mode) = 0;
96 getFrameProcessParams(std::map<std::string, std::string> &
params) = 0;
104 setFrameProcessParams(std::map<std::string, std::string> &
params) = 0;
112 getAvailableModes(std::vector<uint8_t> &availableModes)
const = 0;
132 virtual void normalizeABBuffer(uint16_t *abBuffer, uint16_t abWidth,
133 uint16_t abHeight,
bool advanceScaling,
134 bool useLogScaling) = 0;
147 bool useLogScaling) = 0;
162 getAvailableControls(std::vector<std::string> &controls)
const = 0;
187 virtual std::shared_ptr<DepthSensorInterface> getSensor() = 0;
196 virtual Status enableXYZframe(
bool enable) = 0;
220 virtual Status enableDepthCompute(
bool enable) = 0;
235 virtual Status adsd3500SetToggleMode(
int mode) = 0;
241 virtual Status adsd3500ToggleFsync() = 0;
248 virtual Status adsd3500SetABinvalidationThreshold(
int threshold) = 0;
255 virtual Status adsd3500GetABinvalidationThreshold(
int &threshold) = 0;
262 virtual Status adsd3500SetConfidenceThreshold(
int threshold) = 0;
269 virtual Status adsd3500GetConfidenceThreshold(
int &threshold) = 0;
276 virtual Status adsd3500SetJBLFfilterEnableState(
bool enable) = 0;
283 virtual Status adsd3500GetJBLFfilterEnableState(
bool &
enabled) = 0;
290 virtual Status adsd3500SetJBLFfilterSize(
int size) = 0;
297 virtual Status adsd3500GetJBLFfilterSize(
int &
size) = 0;
304 virtual Status adsd3500SetRadialThresholdMin(
int threshold) = 0;
311 virtual Status adsd3500GetRadialThresholdMin(
int &threshold) = 0;
318 virtual Status adsd3500SetRadialThresholdMax(
int threshold) = 0;
325 virtual Status adsd3500GetRadialThresholdMax(
int &threshold) = 0;
332 virtual Status adsd3500GetSensorTemperature(uint16_t &tmpValue) = 0;
339 virtual Status adsd3500GetLaserTemperature(uint16_t &tmpValue) = 0;
354 virtual Status adsd3500SetMIPIOutputSpeed(uint16_t speed) = 0;
361 virtual Status adsd3500GetMIPIOutputSpeed(uint16_t &speed) = 0;
368 virtual Status adsd3500GetImagerErrorCode(uint16_t &errcode) = 0;
375 virtual Status adsd3500SetVCSELDelay(uint16_t delay) = 0;
382 virtual Status adsd3500GetVCSELDelay(uint16_t &delay) = 0;
389 virtual Status adsd3500SetJBLFMaxEdgeThreshold(uint16_t threshold) = 0;
396 virtual Status adsd3500SetJBLFABThreshold(uint16_t threshold) = 0;
403 virtual Status adsd3500SetJBLFGaussianSigma(uint16_t
value) = 0;
410 virtual Status adsd3500GetJBLFGaussianSigma(uint16_t &
value) = 0;
417 virtual Status adsd3500SetJBLFExponentialTerm(uint16_t
value) = 0;
424 virtual Status adsd3500GetJBLFExponentialTerm(uint16_t &
value) = 0;
431 virtual Status adsd3500GetFrameRate(uint16_t &fps) = 0;
438 virtual Status adsd3500SetFrameRate(uint16_t fps) = 0;
445 virtual Status adsd3500SetEnableEdgeConfidence(uint16_t
value) = 0;
453 adsd3500GetTemperatureCompensationStatus(uint16_t &
value) = 0;
460 virtual Status adsd3500SetEnablePhaseInvalidation(uint16_t
value) = 0;
467 virtual Status adsd3500SetEnableTemperatureCompensation(uint16_t
value) = 0;
489 virtual Status adsd3500SetGenericTemplate(uint16_t reg, uint16_t
value) = 0;
497 virtual Status adsd3500GetGenericTemplate(uint16_t reg,
498 uint16_t &
value) = 0;
505 virtual Status adsd3500GetStatus(
int &chipStatus,
int &imagerStatus) = 0;
512 virtual Status adsd3500DisableCCBM(
bool disable) = 0;
519 virtual Status adsd3500IsCCBMsupported(
bool &supported) = 0;
528 adsd3500setEnableDynamicModeSwitching(
bool enable) = 0;
549 const std::vector<std::pair<uint8_t, uint8_t>> &sequence) = 0;
560 bool useCacheValue =
false) = 0;
575 saveDepthParamsToJsonFile(
const std::string &savePathFile) = 0;
585 const std::string &pathFileloadDepthParamsFromJsonFile,
586 const int16_t mode_in_use = -1) = 0;
594 adsd3500ResetIniParamsForMode(
const uint16_t
mode) = 0;
603 setSensorConfiguration(
const std::string &sensorConf) = 0;
610 virtual void dropFirstFrame(
bool dropFrame) = 0;