123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237 |
- #ifndef _ARGUS_SYNC_SENSOR_CALIBRATION_DATA_H
- #define _ARGUS_SYNC_SENSOR_CALIBRATION_DATA_H
- namespace Argus
- {
- DEFINE_NAMED_UUID_CLASS(DistortionType);
- DEFINE_UUID(DistortionType, DISTORTION_TYPE_POLYNOMIAL, 23e59580,17ff,11eb,8b6f,08,00,20,0c,9a,66);
- DEFINE_UUID(DistortionType, DISTORTION_TYPE_FISHEYE, 23e59581,17ff,11eb,8b6f,08,00,20,0c,9a,66);
- DEFINE_UUID(DistortionType, DISTORTION_TYPE_OMINI_DIRECTIONAL, 23e5bc90,17ff,11eb,8b6f,08,00,20,0c,9a,66);
- DEFINE_NAMED_UUID_CLASS(MappingType);
- DEFINE_UUID(MappingType, MAPPING_TYPE_EQUIDISTANT, 9e7f3c10,17ff,11eb,8b6f,08,00,20,0c,9a,66);
- DEFINE_UUID(MappingType, MAPPING_TYPE_EQUISOLID, 9e7f3c11,17ff,11eb,8b6f,08,00,20,0c,9a,66);
- DEFINE_UUID(MappingType, MAPPING_TYPE_ORTHOGRAPHIC, 9e7f3c12,17ff,11eb,8b6f,08,00,20,0c,9a,66);
- DEFINE_UUID(MappingType, MAPPING_TYPE_STEREOGRAPHIC, 9e7f3c13,17ff,11eb,8b6f,08,00,20,0c,9a,66);
- DEFINE_UUID(ExtensionName, EXT_SYNC_SENSOR_CALIBRATION_DATA, 10845a70,d52f,11ea,8b6e,08,00,20,0c,9a,66);
- namespace Ext
- {
- DEFINE_UUID(InterfaceID, IID_SYNC_SENSOR_CALIBRATION_DATA, 5925f360,d52f,11ea,8b6e,08,00,20,0c,9a,66);
- class ISyncSensorCalibrationData : public Interface
- {
- public:
- static const InterfaceID& id() { return IID_SYNC_SENSOR_CALIBRATION_DATA; }
-
- virtual Status getSyncSensorModuleId(void* syncSensorId, size_t size) const = 0;
-
- virtual Size2D<uint32_t> getImageSizeInPixels() const = 0;
-
- virtual Point2D<float> getFocalLength() const = 0;
-
- virtual float getSkew() const = 0;
-
- virtual Point2D<float> getPrincipalPoint() const = 0;
-
- virtual DistortionType getLensDistortionType() const = 0;
-
- virtual MappingType getFisheyeMappingType() const = 0;
-
- virtual uint32_t getRadialCoeffsCount(const DistortionType& distortionType) const = 0;
-
- virtual Status getRadialCoeffs(std::vector<float>* k,
- const DistortionType& distortionType) const = 0;
-
- virtual uint32_t getTangentialCoeffsCount() const = 0;
-
- virtual Status getTangentialCoeffs(std::vector<float>* p) const = 0;
-
- virtual Point3D<float> getRotationParams() const = 0;
-
- virtual Point3D<float> getTranslationParams() const = 0;
-
- virtual Status getModuleSerialNumber(void * serialNumber, size_t size) const = 0;
-
- virtual bool isImuSensorAvailable() const = 0;
-
- virtual Point3D<float> getLinearAccBias() const = 0;
-
- virtual Point3D<float> getAngularVelocityBias() const = 0;
-
- virtual Point3D<float> getGravityAcc() const = 0;
-
- virtual Point3D<float> getImuRotationParams() const = 0;
-
- virtual Point3D<float> getImuTranslationParams() const = 0;
-
- virtual float getUpdateRate() const = 0;
-
- virtual float getLinearAccNoiseDensity() const = 0;
-
- virtual float getLinearAccRandomWalk() const = 0;
-
- virtual float getAngularVelNoiseDensity() const = 0;
-
- virtual float getAngularVelRandomWalk() const = 0;
- protected:
- ~ISyncSensorCalibrationData() {}
- };
- }
- }
- #endif
|