37 #ifndef LibMultiSense_MultiSenseTypes_hh 38 #define LibMultiSense_MultiSenseTypes_hh 47 #if __cplusplus > 199711L 49 #define CRL_CONSTEXPR constexpr 52 #define CRL_CONSTEXPR const 57 #if !defined(MULTISENSE_API) 58 #if defined (_MSC_VER) 59 #if defined (MultiSense_EXPORTS) 60 #define MULTISENSE_API __declspec(dllexport) 62 #define MULTISENSE_API __declspec(dllimport) 65 #define MULTISENSE_API 69 #if defined (_MSC_VER) 76 #pragma warning (push) 77 #pragma warning (disable: 4251) 81 namespace multisense {
175 const std::string& addr,
176 uint16_t p=DFL_UDP_PORT,
181 fpsDecimation(dec) {};
206 virtual bool inMask(DataSource mask) {
return true; };
407 : source(Source_Unknown) {};
413 virtual bool inMask(DataSource mask) {
return (mask & source) != 0;};
530 uint32_t h) { m_width=w;m_height=h; };
652 float b) { m_wbRed=r;m_wbBlue=b; };
700 void setHdr (
bool e) { m_hdrEnabled = e; };
711 uint32_t
width ()
const {
return m_width; };
719 uint32_t
height ()
const {
return m_height; };
744 int offset ()
const {
return m_offset; };
752 float fps ()
const {
return m_fps; };
760 float gain ()
const {
return m_gain; };
874 float fx()
const {
return m_fx; };
885 float fy()
const {
return m_fy; };
897 float cx()
const {
return m_cx; };
909 float cy()
const {
return m_cy; };
919 float tx()
const {
return m_tx; };
930 float ty()
const {
return m_ty; };
941 float tz()
const {
return m_tz; };
951 float roll()
const {
return m_roll; };
961 float pitch()
const {
return m_pitch; };
971 float yaw()
const {
return m_yaw; };
978 m_exposure(10000), m_aeEnabled(true), m_aeMax(5000000), m_aeDecay(7), m_aeThresh(0.75
f),
979 m_wbBlue(1.0
f), m_wbRed(1.0
f), m_wbEnabled(true), m_wbDecay(3), m_wbThresh(0.5
f),
980 m_width(1024), m_height(544), m_disparities(128), m_cam_mode(0), m_offset(-1), m_spfStrength(0.5
f), m_hdrEnabled(false),
981 m_fx(0), m_fy(0), m_cx(0), m_cy(0),
982 m_tx(0), m_ty(0), m_tz(0), m_roll(0), m_pitch(0), m_yaw(0) {};
1204 uint8_t adc_gain[2];
1208 int16_t bl_offset[2];
1430 float laserToSpindle[4][4];
1433 float cameraToSpindleFixed[4][4];
1440 namespace lighting {
1565 if (percent < 0.0 || percent > MAX_DUTY_CYCLE)
1568 std::fill(m_dutyCycle.begin(),
1587 if (i >= MAX_LIGHTS ||
1588 percent < 0.0 || percent > MAX_DUTY_CYCLE)
1591 m_dutyCycle[i] = percent;
1605 if (i >= MAX_LIGHTS)
1607 return m_dutyCycle[i];
1614 Config() : m_flashEnabled(false), m_dutyCycle(MAX_LIGHTS, -1.0
f) {};
1763 return (static_cast<double>(timeSeconds) +
1764 1e-6 * static_cast<double>(timeMicroSeconds));
2047 supportedDataSources(
d),
2112 sensorFirmwareVersion(0),
2113 sensorHardwareVersion(0),
2114 sensorHardwareMagic(0),
2115 sensorFpgaDna(0) {};
2181 static CRL_CONSTEXPR uint32_t HARDWARE_REV_MULTISENSE_S = HARDWARE_REV_MULTISENSE_S7;
2251 hardwareRevision(0),
2256 nominalBaseline(0.0),
2257 nominalFocalLength(0.0),
2258 nominalRelativeAperture(0.0),
2263 motorGearReduction(0.0) {};
2347 ipv4Address(
"10.66.171.21"),
2348 ipv4Gateway(
"10.66.171.1"),
2349 ipv4Netmask(
"255.255.240.0") {};
2361 const std::string& g,
2362 const std::string& n) :
2472 laserMotorOk(false),
2475 externalLedsOk(false),
2476 processingPipelineOk(false),
2477 powerSupplyTemperature(0.),
2478 fpgaTemperature(0.),
2479 leftImagerTemperature(0.),
2480 rightImagerTemperature(0.),
2602 #if defined (_MSC_VER) 2603 #pragma warning (pop) 2606 #endif // LibMultiSense_MultiSenseTypes_hh
static CRL_CONSTEXPR DataSource Source_Disparity_Cost
std::vector< PcbInfo > pcbs
std::vector< RangeEntry > ranges
void setStereoPostFilterStrength(float s)
NetworkConfig(const std::string &a, const std::string &g, const std::string &n)
static CRL_CONSTEXPR DataSource Source_Disparity_Right
static CRL_CONSTEXPR DataSource Source_Disparity_Left
DirectedStream(DataSource m, const std::string &addr, uint16_t p=DFL_UDP_PORT, uint32_t dec=1)
void setAutoWhiteBalanceThresh(float t)
static CRL_CONSTEXPR DataSource Source_Jpeg_Left
void setAutoWhiteBalanceDecay(uint32_t d)
static CRL_CONSTEXPR DataSource Source_Disparity
void setHeight(uint32_t h)
static CRL_CONSTEXPR TriggerSource Trigger_Internal
static CRL_CONSTEXPR DataSource Source_Chroma_Left
bool autoWhiteBalance() const
void setWidth(uint32_t w)
uint64_t sensorHardwareMagic
static CRL_CONSTEXPR Status Status_Unsupported
float getDutyCycle(uint32_t i) const
static CRL_CONSTEXPR TriggerSource Trigger_External
static CRL_CONSTEXPR DataSource Source_Luma_Left
void setResolution(uint32_t w, uint32_t h)
bool setDutyCycle(uint32_t i, float percent)
float whiteBalanceBlue() const
uint32_t disparities() const
std_msgs::Header * header(M &m)
std::string sensorFirmwareBuildDate
static CRL_CONSTEXPR Status Status_Failed
bool setDutyCycle(float percent)
static CRL_CONSTEXPR float MAX_AMBIENT_LIGHTING
float powerSupplyTemperature
float stereoPostFilterStrength() const
uint32_t autoExposureMax() const
uint32_t autoWhiteBalanceDecay() const
std::vector< float > m_dutyCycle
std::vector< uint32_t > data
float autoExposureThresh() const
static CRL_CONSTEXPR DataSource Source_Lidar_Scan
static CRL_CONSTEXPR DataSource Source_Luma_Right
void setExposure(uint32_t e)
static CRL_CONSTEXPR DataSource Source_Imu
float leftImagerTemperature
void setFlash(bool onOff)
std::vector< RateEntry > rates
uint32_t hardwareRevision
static CRL_CONSTEXPR Status Status_TimedOut
bool autoExposure() const
static CRL_CONSTEXPR float MAX_DUTY_CYCLE
static CRL_CONSTEXPR Status Status_Ok
bool processingPipelineOk
static CRL_CONSTEXPR DataSource Source_Pps
static CRL_CONSTEXPR DataSource Source_Rgb_Left
void setAutoExposure(bool e)
void setDisparities(uint32_t d)
void setAutoExposureMax(uint32_t m)
float whiteBalanceRed() const
DeviceMode(uint32_t w=0, uint32_t h=0, DataSource d=0, int32_t s=-1)
void setWhiteBalance(float r, float b)
static CRL_CONSTEXPR DataSource Source_Unknown
uint32_t autoExposureDecay() const
uint32_t exposure() const
VersionType sensorFirmwareVersion
static CRL_CONSTEXPR DataSource Source_Raw_Right
float nominalRelativeAperture
static CRL_CONSTEXPR DataSource Source_Raw_Left
static CRL_CONSTEXPR uint32_t MAX_LIGHTS
uint32_t timeMicroSeconds
float rightImagerTemperature
static CRL_CONSTEXPR DataSource Source_Luma_Rectified_Right
void setAutoExposureDecay(uint32_t d)
void(* Callback)(const Header &header, void *userDataP)
static CRL_CONSTEXPR Status Status_Exception
void setAutoWhiteBalance(bool e)
void setAutoExposureThresh(float t)
static CRL_CONSTEXPR Status Status_Error
uint64_t sensorHardwareVersion
float ambientLightPercentage
DataSource supportedDataSources
float autoWhiteBalanceThresh() const
static CRL_CONSTEXPR DataSource Source_Chroma_Right
static CRL_CONSTEXPR DataSource Source_All
static CRL_CONSTEXPR Status Status_Unknown
static CRL_CONSTEXPR DataSource Source_Luma_Rectified_Left