| |
- mrpt.pymrpt.mrpt.config.CLoadableOptions(pybind11_builtins.pybind11_object)
-
- TMyntEyeCameraParameters
- pybind11_builtins.pybind11_object(builtins.object)
-
- CFFMPEG_InputStream
- CGenericSensor
-
- C2DRangeFinderAbstract
-
- CHokuyoURG
- CLMS100Eth
- CRoboPeakLidar
- CSICKTim561Eth
- CSickLaserSerial
- CSickLaserUSB
- CBoardENoses
- CCANBusReader
- CCameraSensor
- CEnoseModular
- CGPSInterface
- CGPS_NTRIP
- CGillAnemometer
- CGyroKVHDSP3000
- CIMUIntersense
- CIMUXSens_MT4
- CIbeoLuxETH
- CImpinjRFID
- CKinect
- CNTRIPEmitter
- CNationalInstrumentsDAQ
- COpenNI2Sensor(CGenericSensor, COpenNI2Generic)
- COpenNI2_RGBD360(CGenericSensor, COpenNI2Generic)
- CPhidgetInterfaceKitProximitySensors
- CRaePID
- CSkeletonTracker
- CSwissRanger3DCamera
- CTaoboticsIMU
- CVelodyneScanner
- CWirelessPower
- CImageGrabber_FlyCapture2
- CImageGrabber_OpenCV
- CImageGrabber_dc1394
- CJoystick
- CMyntEyeCamera
- CNTRIPClient
- COpenNI2Generic
- CPtuBase
-
- CPtuDPerception
- CTuMicos
- CStereoGrabber_Bumblebee_libdc1394
- CStereoGrabber_SVS
- GYRO_MODE
- SensorType
- TCameraType
- TCaptureCVOptions
- TCaptureOptions_DUO3D
- TCaptureOptions_FlyCapture2
- TCaptureOptions_SVS
- TCaptureOptions_dc1394
- TSensorClassId
class C2DRangeFinderAbstract(CGenericSensor) |
|
This is the base, abstract class for "software drivers" interfaces to 2D
scanners (laser range finders).
Physical devices may be interfaced through a serial port, a USB
connection,etc. but this class
abstract those details throught the "binding" of the specific scanner
driver to a given I/O channel,
which must be set by calling "hwdrivers::C2DRangeFinderAbstract::bindIO".
See also the derived classes.
There is support for "exclusion polygons", areas where points, if detected,
should be marked as invalid.
Those areas are useful in cases where the scanner always detects part of
the vehicle itself, and those
points want to be ignored (see
C2DRangeFinderAbstract::loadExclusionAreas).
comms::CSerialPort |
|
- Method resolution order:
- C2DRangeFinderAbstract
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
- bindIO(...)
- bindIO(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, streamIO: mrpt.pymrpt.mrpt.io.CStream) -> None
Binds the object to a given I/O channel.
The stream object must not be deleted before the destruction of this
class.
comms::CSerialPort
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::bindIO(const class std::shared_ptr<class mrpt::io::CStream> &) --> void
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
Main method for a CGenericSensor
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::doProcess() --> void
- doProcessSimple(...)
- doProcessSimple(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
Specific laser scanner "software drivers" must process here new data
from the I/O stream, and, if a whole scan has arrived, return it.
This method MUST BE CALLED in a timely fashion by the user to allow the
proccessing of incoming data. It can be run in a different thread safely.
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::doProcessSimple(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- getEstimatedScanPeriod(...)
- getEstimatedScanPeriod(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> float
Returns the empirical, filtered estimation for the period at which whole
scans are being returned from calls to doProcessSimple()
: Units: seconds
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getEstimatedScanPeriod() const --> double
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
Get the last observation from the sensor, if available, and unmarks it
as being "the last one" (thus a new scan must arrive or subsequent calls
will find no new observations).
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getObservation(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- showPreview(...)
- showPreview(*args, **kwargs)
Overloaded function.
1. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
2. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, enable: bool) -> None
Enables GUI visualization in real-time
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::showPreview(bool) --> void
- turnOff(...)
- turnOff(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> bool
Disables the scanning mode (this can be used to turn the device in low
energy mode, if available)
If everything works "true", or "false" if there is any error.
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::turnOff() --> bool
- turnOn(...)
- turnOn(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> bool
Enables the scanning mode (which may depend on the specific laser
device); this must be called before asking for observations to assure
that the protocol has been initializated.
If everything works "true", or "false" if there is any error.
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::turnOn() --> bool
Methods inherited from CGenericSensor:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CGenericSensor::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
This method can or cannot be implemented in the derived class, depending
on the need for it.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CGenericSensor::initialize() --> void
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CBoardENoses(CGenericSensor) |
|
A class for interfacing an e-Noses via a FTDI USB link.
Implemented for the board v1.0 designed by 2007 @ ISA (University of
Malaga). |
|
- Method resolution order:
- CBoardENoses
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CBoardENoses) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CBoardENoses::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CBoardENoses) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CBoardENoses) -> None
C++: mrpt::hwdrivers::CBoardENoses::doProcess() --> void
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CBoardENoses, outObservation: mrpt.pymrpt.mrpt.obs.CObservationGasSensors) -> bool
Request the master eNose the latest readings from all the eNoses.
The output observation contains a valid timestamp and 3D positions if
"loadConfig" has been called previously.
true if OK, false if there were any error.
C++: mrpt::hwdrivers::CBoardENoses::getObservation(class mrpt::obs::CObservationGasSensors &) --> bool
- getSerialPort(...)
- getSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CBoardENoses) -> str
C++: mrpt::hwdrivers::CBoardENoses::getSerialPort() const --> std::string
- getSerialPortBaud(...)
- getSerialPortBaud(self: mrpt.pymrpt.mrpt.hwdrivers.CBoardENoses) -> int
C++: mrpt::hwdrivers::CBoardENoses::getSerialPortBaud() const --> unsigned int
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CBoardENoses) -> None
Tries to open the camera, after setting all the parameters with a call
to loadConfig.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CBoardENoses::initialize() --> void
- queryFirmwareVersion(...)
- queryFirmwareVersion(self: mrpt.pymrpt.mrpt.hwdrivers.CBoardENoses, out_firmwareVersion: str) -> bool
Query the firmware version on the device (can be used to test
communications).
true on success, false on communications errors or device not
found.
C++: mrpt::hwdrivers::CBoardENoses::queryFirmwareVersion(std::string &) --> bool
- setActiveChamber(...)
- setActiveChamber(self: mrpt.pymrpt.mrpt.hwdrivers.CBoardENoses, chamber: int) -> bool
Set the active chamber (afected by poluted air) on the device
true on success, false on communications errors or device not
found.
C++: mrpt::hwdrivers::CBoardENoses::setActiveChamber(unsigned char) --> bool
- setSerialPort(...)
- setSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CBoardENoses, port: str) -> None
If not an empty string, will open that serial port, otherwise will try
to open USB FTDI device "m_usbSerialNumber"
The default is an empty string. Example strings: "COM1", "ttyUSB0", ...
C++: mrpt::hwdrivers::CBoardENoses::setSerialPort(const std::string &) --> void
- setSerialPortBaud(...)
- setSerialPortBaud(self: mrpt.pymrpt.mrpt.hwdrivers.CBoardENoses, baud: int) -> None
Set the serial port baud rate (default: 115200)
C++: mrpt::hwdrivers::CBoardENoses::setSerialPortBaud(unsigned int) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CBoardENoses::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CBoardENoses::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CCANBusReader(CGenericSensor) |
|
This "software driver" implements the communication protocol for interfacing
a SICK LMS 2XX laser scanners through a standard RS232 serial port (or a
USB2SERIAL converter).
The serial port is opened upon the first call to "doProcess" or
"initialize", so you must call "loadConfig" before
this, or manually call "setSerialPort". Another alternative is to call the
base class method C2DRangeFinderAbstract::bindIO,
but the "setSerialPort" interface is probably much simpler to use.
For an example of usage see the example in
"samples/SICK_laser_serial_test".
See also the example configuration file for rawlog-grabber in
"share/mrpt/config_files/rawlog-grabber".
C2DRangeFinderAbstract |
|
- Method resolution order:
- CCANBusReader
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CCANBusReader::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader) -> None
C++: mrpt::hwdrivers::CCANBusReader::doProcess() --> void
- doProcessSimple(...)
- doProcessSimple(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservationCANBusJ1939, hardwareError: bool) -> None
Specific laser scanner "software drivers" must process here new data
from the I/O stream, and, if a whole scan has arrived, return it.
This method will be typically called in a different thread than other
methods, and will be called in a timely fashion.
C++: mrpt::hwdrivers::CCANBusReader::doProcessSimple(bool &, class mrpt::obs::CObservationCANBusJ1939 &, bool &) --> void
- getBaudRate(...)
- getBaudRate(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader) -> int
setBaudRate
C++: mrpt::hwdrivers::CCANBusReader::getBaudRate() const --> int
- getCANReaderSpeed(...)
- getCANReaderSpeed(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader) -> int
C++: mrpt::hwdrivers::CCANBusReader::getCANReaderSpeed() --> unsigned int
- getCANReaderTimeStamping(...)
- getCANReaderTimeStamping(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader) -> bool
C++: mrpt::hwdrivers::CCANBusReader::getCANReaderTimeStamping() --> bool
- getCurrentConnectTry(...)
- getCurrentConnectTry(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader) -> int
If performing several tries in ::initialize(), this is the current try
loop number.
C++: mrpt::hwdrivers::CCANBusReader::getCurrentConnectTry() const --> unsigned int
- getSerialPort(...)
- getSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader) -> str
setSerialPort
C++: mrpt::hwdrivers::CCANBusReader::getSerialPort() const --> std::string
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader) -> None
Set-up communication with the laser.
Called automatically by rawlog-grabber.
If used manually, call after "loadConfig" and before "doProcess".
In this class this method does nothing, since the communications are
setup at the first try from "doProcess" or "doProcessSimple".
C++: mrpt::hwdrivers::CCANBusReader::initialize() --> void
- setBaudRate(...)
- setBaudRate(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader, baud: int) -> None
Changes the serial port baud rate (call prior to 'doProcess'); valid
values are 9600,38400 and 500000.
This is not needed if the configuration is loaded with "loadConfig".
getBaudRate
C++: mrpt::hwdrivers::CCANBusReader::setBaudRate(int) --> void
- setCANReaderSpeed(...)
- setCANReaderSpeed(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader, speed: int) -> None
Sets the CAN reader speed when connecting to the CAN Bus
C++: mrpt::hwdrivers::CCANBusReader::setCANReaderSpeed(const unsigned int) --> void
- setCANReaderTimeStamping(...)
- setCANReaderTimeStamping(*args, **kwargs)
Overloaded function.
1. setCANReaderTimeStamping(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader) -> None
2. setCANReaderTimeStamping(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader, setTimestamp: bool) -> None
Enables/Disables the addition of a timestamp according to the arrival
time to the converter (default=false)
(call prior to 'doProcess') This is not needed if the configuration is
loaded with "loadConfig".
C++: mrpt::hwdrivers::CCANBusReader::setCANReaderTimeStamping(bool) --> void
- setSerialPort(...)
- setSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CCANBusReader, port: str) -> None
Changes the serial port to connect to (call prior to 'doProcess'), for
example "COM1" or "ttyS0".
This is not needed if the configuration is loaded with "loadConfig".
C++: mrpt::hwdrivers::CCANBusReader::setSerialPort(const std::string &) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CCANBusReader::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CCANBusReader::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CCameraSensor(CGenericSensor) |
|
The central class for camera grabbers in MRPT, implementing the "generic
sensor" interface.
This class provides the user with a uniform interface to a variety of
other classes which manage only one specific camera "driver" (opencv, ffmpeg,
PGR FlyCapture,...)
Following the "generic sensor" interface, all the parameters must be
passed int the form of a configuration file,
which may be also formed on the fly (without being a real config file) as
in this example:
Images can be retrieved through the normal "doProcess()" interface, or the
specific method "getNextFrame()".
Some notes:
- "grabber_type" determines the class to use internally for image capturing
(see below).
- For the meaning of cv_camera_type and other parameters, refer to
mrpt::hwdrivers::CImageGrabber_OpenCV
- For the parameters of dc1394 parameters, refer to generic IEEE1394
documentation, and to mrpt::hwdrivers::TCaptureOptions_dc1394.
- If the high number of existing parameters annoy you, try the function
prepareVideoSourceFromUserSelection(),
which displays a GUI dialog to the user so he/she can choose the desired
camera & its parameters.
Images can be saved in the "external storage" mode. Detached threads are
created for this task. See and
These methods are called automatically from the app rawlog-grabber.
These is the list of all accepted parameters:
The execution rate, in rawlog-grabber or the user code calling
doProcess(), should be greater than the required capture FPS.
In Linux you may need to execute "chmod 666 /dev/video1394/ * " and
"chmod 666 /dev/raw1394" for allowing any user R/W access to firewire
cameras.
[New in MRPT 1.4.0] The `bumblebee` driver has been deleted, use the
`flycap` driver in stereo mode.
mrpt::hwdrivers::CImageGrabber_OpenCV,
mrpt::hwdrivers::CImageGrabber_dc1394, CGenericSensor,
prepareVideoSourceFromUserSelection() |
|
- Method resolution order:
- CCameraSensor
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CCameraSensor) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CCameraSensor::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CCameraSensor) -> None
- addPreSaveHook(...)
- addPreSaveHook(self: mrpt.pymrpt.mrpt.hwdrivers.CCameraSensor, user_function: std::function<void (std::shared_ptr<mrpt::obs::CObservation> const&, void*)>, user_ptr: capsule) -> None
Provides a "hook" for user-code to be run BEFORE an image is going to be
saved to disk if external storage is enabled (e.g. to rectify images,
preprocess them, etc.)
Notice that this code may be called from detached threads, so it must be
thread safe.
If used, call this before initialize()
C++: mrpt::hwdrivers::CCameraSensor::addPreSaveHook(class std::function<void (const class std::shared_ptr<class mrpt::obs::CObservation> &, void *)>, void *) --> void
- close(...)
- close(self: mrpt.pymrpt.mrpt.hwdrivers.CCameraSensor) -> None
Close the camera (if open).
This method is called automatically on destruction.
C++: mrpt::hwdrivers::CCameraSensor::close() --> void
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CCameraSensor) -> None
C++: mrpt::hwdrivers::CCameraSensor::doProcess() --> void
- enableLaunchOwnThreadForSavingImages(...)
- enableLaunchOwnThreadForSavingImages(*args, **kwargs)
Overloaded function.
1. enableLaunchOwnThreadForSavingImages(self: mrpt.pymrpt.mrpt.hwdrivers.CCameraSensor) -> None
2. enableLaunchOwnThreadForSavingImages(self: mrpt.pymrpt.mrpt.hwdrivers.CCameraSensor, enable: bool) -> None
This must be called before initialize()
C++: mrpt::hwdrivers::CCameraSensor::enableLaunchOwnThreadForSavingImages(bool) --> void
- getNextFrame(...)
- getNextFrame(self: mrpt.pymrpt.mrpt.hwdrivers.CCameraSensor) -> mrpt.pymrpt.mrpt.obs.CObservation
Retrieves the next frame from the video source, raising an exception on
any error.
Note: The returned observations can be of one of these classes (you can
use IS_CLASS(obs,CObservationXXX) to determine it):
- mrpt::obs::CObservationImage (For normal cameras or video sources)
- mrpt::obs::CObservationStereoImages (For stereo cameras)
- mrpt::obs::CObservation3DRangeScan (For 3D cameras)
C++: mrpt::hwdrivers::CCameraSensor::getNextFrame() --> class std::shared_ptr<class mrpt::obs::CObservation>
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CCameraSensor) -> None
Tries to open the camera, after setting all the parameters with a call
to loadConfig.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CCameraSensor::initialize() --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CCameraSensor, directory: str) -> None
Set the path where to save off-rawlog image files (this class DOES take
into account this path).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CCameraSensor::setPathForExternalImages(const std::string &) --> void
- setSoftwareTriggerLevel(...)
- setSoftwareTriggerLevel(self: mrpt.pymrpt.mrpt.hwdrivers.CCameraSensor, level: bool) -> None
Set Software trigger level value (ON or OFF) for cameras with this
function available.
C++: mrpt::hwdrivers::CCameraSensor::setSoftwareTriggerLevel(bool) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CCameraSensor::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CCameraSensor::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CEnoseModular(CGenericSensor) |
|
A class for interfacing an e-NoseModular via a FTDI USB link.
Implemented for the Mdular board v1.0 designed by 2013 @ MAPIR (University
of Malaga). |
|
- Method resolution order:
- CEnoseModular
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CEnoseModular) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CEnoseModular::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CEnoseModular) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CEnoseModular) -> None
C++: mrpt::hwdrivers::CEnoseModular::doProcess() --> void
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CEnoseModular, outObservation: mrpt.pymrpt.mrpt.obs.CObservationGasSensors) -> bool
Request the master eNose the latest readings from all the eNoses.
The output observation contains a valid timestamp and 3D positions if
"loadConfig" has been called previously.
true if OK, false if there were any error.
C++: mrpt::hwdrivers::CEnoseModular::getObservation(class mrpt::obs::CObservationGasSensors &) --> bool
- getSerialPort(...)
- getSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CEnoseModular) -> str
C++: mrpt::hwdrivers::CEnoseModular::getSerialPort() const --> std::string
- getSerialPortBaud(...)
- getSerialPortBaud(self: mrpt.pymrpt.mrpt.hwdrivers.CEnoseModular) -> int
C++: mrpt::hwdrivers::CEnoseModular::getSerialPortBaud() const --> unsigned int
- setSerialPort(...)
- setSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CEnoseModular, port: str) -> None
If not an empty string, will open that serial port, otherwise will try
to open USB FTDI device "m_usbSerialNumber"
The default is an empty string. Example strings: "COM1", "ttyUSB0", ...
C++: mrpt::hwdrivers::CEnoseModular::setSerialPort(const std::string &) --> void
- setSerialPortBaud(...)
- setSerialPortBaud(self: mrpt.pymrpt.mrpt.hwdrivers.CEnoseModular, baud: int) -> None
Set the serial port baud rate (default: 115200)
C++: mrpt::hwdrivers::CEnoseModular::setSerialPortBaud(unsigned int) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CEnoseModular::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CEnoseModular::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
This method can or cannot be implemented in the derived class, depending
on the need for it.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CGenericSensor::initialize() --> void
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CFFMPEG_InputStream(pybind11_builtins.pybind11_object) |
|
A generic class which process a video file or other kind of input stream
(http, rtsp) and allows the extraction of images frame by frame.
Video sources can be open with "openURL", which can manage both video files
and "rtsp://" sources (IP cameras).
Frames are retrieved by calling CFFMPEG_InputStream::retrieveFrame
For an example of usage, see the file "samples/grab_camera_ffmpeg"
This class is an easy to use C++ wrapper for ffmpeg libraries
(libavcodec). In Unix systems these libraries must be installed in the system
as explained in
* href="http://www.mrpt.org/Building_and_Installing_Instructions" > MRPT's
wiki. In Win32, a precompiled version for Visual Studio must be also
downloaded as explained in
* href="http://www.mrpt.org/Building_and_Installing_Instructions" >the
wiki. |
|
- Method resolution order:
- CFFMPEG_InputStream
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream) -> None
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream, arg0: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream, : mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream) -> mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream
C++: mrpt::hwdrivers::CFFMPEG_InputStream::operator=(const class mrpt::hwdrivers::CFFMPEG_InputStream &) --> class mrpt::hwdrivers::CFFMPEG_InputStream &
- close(...)
- close(self: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream) -> None
Close the video stream (this is called automatically at destruction).
openURL
C++: mrpt::hwdrivers::CFFMPEG_InputStream::close() --> void
- getVideoFPS(...)
- getVideoFPS(self: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream) -> float
Get the frame-per-second (FPS) of the video source, or "-1" if the video
is not open.
C++: mrpt::hwdrivers::CFFMPEG_InputStream::getVideoFPS() const --> double
- isOpen(...)
- isOpen(self: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream) -> bool
Return whether the video source was open correctly
C++: mrpt::hwdrivers::CFFMPEG_InputStream::isOpen() const --> bool
- openURL(...)
- openURL(*args, **kwargs)
Overloaded function.
1. openURL(self: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream, url: str) -> bool
2. openURL(self: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream, url: str, grab_as_grayscale: bool) -> bool
3. openURL(self: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream, url: str, grab_as_grayscale: bool, verbose: bool) -> bool
4. openURL(self: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream, url: str, grab_as_grayscale: bool, verbose: bool, options: Dict[str, str]) -> bool
Open a video file or a video stream (rtsp://)
This can be used to open local video files (eg. "myVideo.avi",
"c:\a.mpeg") and also IP cameras (e.g `rtsp://a.b.c.d/live.sdp`).
User/password can be used like `rtsp://USER:PASSWORD/PATH`.
[ffmpeg options](https://www.ffmpeg.org/ffmpeg-protocols.html)
can be added via the argument.
If is set to true, more information about the video will be
dumped to cout.
close, retrieveFrame
false on any error (and error info dumped to cerr), true on
success.
C++: mrpt::hwdrivers::CFFMPEG_InputStream::openURL(const std::string &, bool, bool, const class std::map<std::string, std::string > &) --> bool
- retrieveFrame(...)
- retrieveFrame(self: mrpt.pymrpt.mrpt.hwdrivers.CFFMPEG_InputStream, out_img: mrpt.pymrpt.mrpt.img.CImage) -> bool
Get the next frame from the video stream.
Note that for remote streams (IP cameras) this method may block until
enough information is read to generate a new frame.
Images are returned as 8-bit depth grayscale if "grab_as_grayscale" is
true.
false on any error, true on success.
openURL, close, isOpen
C++: mrpt::hwdrivers::CFFMPEG_InputStream::retrieveFrame(class mrpt::img::CImage &) --> bool
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CGPSInterface(CGenericSensor) |
|
A class capable of reading GPS/GNSS/GNSS+IMU receiver data, from a serial
port or from any input stream,
and the ASCII/binary stream into indivual messages in
mrpt::obs::CObservationGPS objects.
Typical input streams are serial ports or raw GPS log files. By default, the
serial port selected by CGPSInterface::setSerialPortName()
or as set in the configuration file will be open upon call to
CGenericSensor::initialize().
Alternatively, an external stream can be bound with
CGPSInterface::bindStream() before calling CGenericSensor::initialize().
This feature can be used to parse commands from a file, a TCP/IP stream, a
memory block, etc.
The parsers in the enum type CGPSInterface::PARSERS are supported as
parameter `parser` in the
configuration file below or in method CGPSInterface::setParser():
- `NONE`: Do not try to parse the messages into CObservation's. Only useful
if combined with `raw_dump_file_prefix`
- `AUTO`: Try to automatically identify the format of incomming data.
- `NMEA` (NMEA 0183, ASCII messages): Default parser. Supported frames:
GGA, RMC,... See full list of messages in children of
mrpt::obs::gnss::gnss_message
- `NOVATEL_OEM6` (Novatel OEM6, binary frames): Supported frames:
BESTPOS,... Note that receiving a correct IONUTC msg is required for a
correct timestamping of subsequent frames. See full list of messages in
children of mrpt::obs::gnss::gnss_message
See available parameters below, and an example config file for
rawlog-grabber
[here](https://github.com/MRPT/mrpt/blob/master/share/mrpt/config_files/rawlog-grabber/gps.ini)
Note that the `customInit` field, supported in MRPT <1.4.0 will be still
parsed and obeyed, but since it has been superseded
by the new mechanism to establish set-up commands, it is no further
documented here.
The next picture summarizes existing MRPT classes related to GPS / GNSS
devices (CGPSInterface, CNTRIPEmitter, CGPS_NTRIP):
VERSIONS HISTORY:
- 09/JUN/2006: First version (JLBC)
- 04/JUN/2008: Added virtual methods for device-specific initialization
commands.
- 10/JUN/2008: Converted into CGenericSensor class (there are no inhirited
classes anymore).
- 07/DEC/2012: Added public static method to parse NMEA strings.
- 17/JUN/2014: Added GGA feedback.
- 01/FEB/2016: API changed for MTPT 1.4.0
Verbose debug info will be dumped to cout if the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1", or if you call
CGenericSensor::enableVerbose(true)
[API changed in MRPT 1.4.0] mrpt::hwdrivers::CGPSInterface API
clean-up and made more generic so any stream can be used to parse GNSS
messages, not only serial ports.
CGPS_NTRIP, CNTRIPEmitter, mrpt::obs::CObservationGPS |
|
- Method resolution order:
- CGPSInterface
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CGPSInterface::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> None
C++: mrpt::hwdrivers::CGPSInterface::doProcess() --> void
- enableAppendMsgTypeToSensorLabel(...)
- enableAppendMsgTypeToSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, enable: bool) -> None
C++: mrpt::hwdrivers::CGPSInterface::enableAppendMsgTypeToSensorLabel(bool) --> void
- enableSetupCommandsAppendCRLF(...)
- enableSetupCommandsAppendCRLF(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, enable: bool) -> None
C++: mrpt::hwdrivers::CGPSInterface::enableSetupCommandsAppendCRLF(const bool) --> void
- getLastGGA(...)
- getLastGGA(*args, **kwargs)
Overloaded function.
1. getLastGGA(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> str
2. getLastGGA(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, reset: bool) -> str
Gets the latest GGA command or an empty string if no newer GGA command
was received since the last call to this method.
If set to true, will empty the GGA cache so next calls
will return an empty string if no new frame is received.
C++: mrpt::hwdrivers::CGPSInterface::getLastGGA(bool) --> std::string
- getParser(...)
- getParser(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface.PARSERS
C++: mrpt::hwdrivers::CGPSInterface::getParser() const --> enum mrpt::hwdrivers::CGPSInterface::PARSERS
- getRawDumpFilePrefix(...)
- getRawDumpFilePrefix(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> str
C++: mrpt::hwdrivers::CGPSInterface::getRawDumpFilePrefix() const --> std::string
- getSerialPortName(...)
- getSerialPortName(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> str
Get the serial port to use (COM1, ttyUSB0, etc).
C++: mrpt::hwdrivers::CGPSInterface::getSerialPortName() const --> std::string
- getSetupCommands(...)
- getSetupCommands(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> List[str]
C++: mrpt::hwdrivers::CGPSInterface::getSetupCommands() const --> const class std::vector<std::string > &
- getSetupCommandsDelay(...)
- getSetupCommandsDelay(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> float
C++: mrpt::hwdrivers::CGPSInterface::getSetupCommandsDelay() const --> double
- getShutdownCommands(...)
- getShutdownCommands(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> List[str]
C++: mrpt::hwdrivers::CGPSInterface::getShutdownCommands() const --> const class std::vector<std::string > &
- implement_parser_NMEA(...)
- implement_parser_NMEA(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, out_minimum_rx_buf_to_decide: int) -> bool
bytes in the
incoming buffer, and return false if the available data does not match
the expected format, so we must skip 1 byte and try again.
@{
C++: mrpt::hwdrivers::CGPSInterface::implement_parser_NMEA(unsigned long &) --> bool
- implement_parser_NOVATEL_OEM6(...)
- implement_parser_NOVATEL_OEM6(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, out_minimum_rx_buf_to_decide: int) -> bool
C++: mrpt::hwdrivers::CGPSInterface::implement_parser_NOVATEL_OEM6(unsigned long &) --> bool
- isAIMConfigured(...)
- isAIMConfigured(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> bool
@}
C++: mrpt::hwdrivers::CGPSInterface::isAIMConfigured() --> bool
- isEnabledSetupCommandsAppendCRLF(...)
- isEnabledSetupCommandsAppendCRLF(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> bool
C++: mrpt::hwdrivers::CGPSInterface::isEnabledSetupCommandsAppendCRLF() const --> bool
- isGPS_connected(...)
- isGPS_connected(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> bool
Returns true if communications work, i.e. if some message has been
received.
C++: mrpt::hwdrivers::CGPSInterface::isGPS_connected() --> bool
- sendCustomCommand(...)
- sendCustomCommand(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, data: capsule, datalen: int) -> bool
Send a custom data block to the GNSS device right now. Can be used to
change its behavior online as needed.
false on communication error
C++: mrpt::hwdrivers::CGPSInterface::sendCustomCommand(const void *, size_t) --> bool
- setParser(...)
- setParser(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, parser: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface.PARSERS) -> None
Select the parser for incomming data, among the options enumerated in
C++: mrpt::hwdrivers::CGPSInterface::setParser(enum mrpt::hwdrivers::CGPSInterface::PARSERS) --> void
- setRawDumpFilePrefix(...)
- setRawDumpFilePrefix(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, filePrefix: str) -> None
If set to non-empty, RAW GPS serial data will be also dumped to a
separate file.
C++: mrpt::hwdrivers::CGPSInterface::setRawDumpFilePrefix(const std::string &) --> void
- setSerialPortName(...)
- setSerialPortName(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, COM_port: str) -> None
@{
Set the serial port to use (COM1, ttyUSB0, etc).
C++: mrpt::hwdrivers::CGPSInterface::setSerialPortName(const std::string &) --> void
- setSetupCommands(...)
- setSetupCommands(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, cmds: List[str]) -> None
C++: mrpt::hwdrivers::CGPSInterface::setSetupCommands(const class std::vector<std::string > &) --> void
- setSetupCommandsDelay(...)
- setSetupCommandsDelay(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, delay_secs: float) -> None
C++: mrpt::hwdrivers::CGPSInterface::setSetupCommandsDelay(const double) --> void
- setShutdownCommands(...)
- setShutdownCommands(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface, cmds: List[str]) -> None
C++: mrpt::hwdrivers::CGPSInterface::setShutdownCommands(const class std::vector<std::string > &) --> void
- useExternalStream(...)
- useExternalStream(self: mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface) -> bool
C++: mrpt::hwdrivers::CGPSInterface::useExternalStream() const --> bool
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CGPSInterface::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CGPSInterface::doRegister() --> void
- parse_NMEA(...) from builtins.PyCapsule
- parse_NMEA(*args, **kwargs)
Overloaded function.
1. parse_NMEA(cmd_line: str, out_obs: mrpt.pymrpt.mrpt.obs.CObservationGPS) -> bool
2. parse_NMEA(cmd_line: str, out_obs: mrpt.pymrpt.mrpt.obs.CObservationGPS, verbose: bool) -> bool
Parses one line of NMEA data from a GPS receiver, and writes the
recognized fields (if any) into an observation object.
Recognized frame types are those listed for the `NMEA` parser in the
documentation of CGPSInterface
true if some new data field has been correctly parsed and
inserted into out_obs
C++: mrpt::hwdrivers::CGPSInterface::parse_NMEA(const std::string &, class mrpt::obs::CObservationGPS &, const bool) --> bool
Data and other attributes defined here:
- AUTO = <PARSERS.AUTO: -1>
- NMEA = <PARSERS.NMEA: 0>
- NONE = <PARSERS.NONE: -2>
- NOVATEL_OEM6 = <PARSERS.NOVATEL_OEM6: 1>
- PARSERS = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGPSInterface.PARSERS'>
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
This method can or cannot be implemented in the derived class, depending
on the need for it.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CGenericSensor::initialize() --> void
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CGPS_NTRIP(CGenericSensor) |
|
A combination of GPS receiver + NTRIP receiver capable of submitting GGA
frames to enable RTCM 3.0.
This class holds instances of two classes, publicly exposed as member
variables:
- mrpt::hwdrivers::CGPSInterface gps;
- mrpt::hwdrivers::CNTRIPEmitter ntrip;
and acts as a "joint sensor", calling both objects' doProcess() inside the
doProcess() loop, etc.
The goal of this class is automatically gather GGA frames from the gps
sensor and upload them to the NTRIP server.
Configuration file format is a combination of the original parameters for
both classes, each with
a prefix: `"gps_` for CGPSInterface params and `ntrip_` for CNTRIPEmitter.
The next picture summarizes existing MRPT classes related to GPS / GNSS
devices (CGPSInterface, CNTRIPEmitter, CGPS_NTRIP):
Verbose debug info will be dumped to cout if the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1", or if you call
CGenericSensor::enableVerbose(true)
CGPSInterface, CNTRIPEmitter |
|
- Method resolution order:
- CGPS_NTRIP
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CGPS_NTRIP) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CGPS_NTRIP::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CGPS_NTRIP) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CGPS_NTRIP) -> None
C++: mrpt::hwdrivers::CGPS_NTRIP::doProcess() --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CGPS_NTRIP) -> None
C++: mrpt::hwdrivers::CGPS_NTRIP::initialize() --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CGPS_NTRIP::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CGPS_NTRIP::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CGenericSensor(pybind11_builtins.pybind11_object) |
|
A generic interface for a wide-variety of sensors designed to be used in the
application RawLogGrabber.
Derived classes should be designed with the following execution flow in
mind:
- Object constructor
- CGenericSensor::loadConfig: The following parameters are common to all
sensors in rawlog-grabber (they are automatically loaded by rawlog-grabber) -
see each class documentation for additional parameters:
- "process_rate": (Mandatory) The rate in Hertz (Hz) at which the
sensor
thread should invoke "doProcess".
- "max_queue_len": (Optional) The maximum number of objects in the
observations queue (default is 200). If overflow occurs, an error message
will be issued at run-time.
- "grab_decimation": (Optional) Grab only 1 out of N observations
captured
by the sensor (default is 1, i.e. do not decimate).
- CGenericSensor::initialize
- CGenericSensor::doProcess
- CGenericSensor::getObservations
Notice that there are helper methods for managing the internal list of
objects (see CGenericSensor::appendObservation).
Class Factory: This is also a factory of derived classes, through
the static method CGenericSensor::createSensor
For more details on RawLogGrabber refer to the wiki page:
https://www.mrpt.org/Application:RawLogGrabber |
|
- Method resolution order:
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CGenericSensor::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
This method will be invoked at a minimum rate of "process_rate" (Hz)
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CGenericSensor::doProcess() --> void
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
This method can or cannot be implemented in the derived class, depending
on the need for it.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CGenericSensor::initialize() --> void
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods defined here:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes defined here:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CGillAnemometer(CGenericSensor) |
|
This class implements a driver for the Gill Windsonic Option 1 Anemometer
The sensor is accessed via a standard serial port.
Refer to the manufacturer website for details on this sensor:
http://gillinstruments.com/data/manuals/WindSonic-Web-Manual.pdf
Configure for single <CR> return, at 2Hz
mrpt::obs::CObservationWindSensor |
|
- Method resolution order:
- CGillAnemometer
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CGillAnemometer) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CGillAnemometer::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CGillAnemometer) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CGillAnemometer) -> None
C++: mrpt::hwdrivers::CGillAnemometer::doProcess() --> void
- loadConfig_sensorSpecific(...)
- loadConfig_sensorSpecific(self: mrpt.pymrpt.mrpt.hwdrivers.CGillAnemometer, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
C++: mrpt::hwdrivers::CGillAnemometer::loadConfig_sensorSpecific(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CGillAnemometer::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CGillAnemometer::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
This method can or cannot be implemented in the derived class, depending
on the need for it.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CGenericSensor::initialize() --> void
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CGyroKVHDSP3000(CGenericSensor) |
|
A class for interfacing KVH DSP 3000 gyroscope with an assynchronous serial
communication (product SN : 02-1222-01).
It uses a serial port connection to the device. The class implements the
generic sensor class.
See also the application "rawlog-grabber" for a ready-to-use application to
gather data from the scanner.
The generated observation is a CObservationIMU, but only the yaw angular
velocity and the absolute yaw position are
are set in the vector CObservationIMU::rawMeasurements.
The sensor process rate is imposed by hardware at 100Hz.
For now, this sensor is only supported on posix system.
In most of the communs applications, this class will be used as : |
|
- Method resolution order:
- CGyroKVHDSP3000
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CGyroKVHDSP3000) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CGyroKVHDSP3000::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CGyroKVHDSP3000) -> None
- changeMode(...)
- changeMode(self: mrpt.pymrpt.mrpt.hwdrivers.CGyroKVHDSP3000, _newMode: mrpt.pymrpt.mrpt.hwdrivers.GYRO_MODE) -> None
C++: mrpt::hwdrivers::CGyroKVHDSP3000::changeMode(enum mrpt::hwdrivers::GYRO_MODE) --> void
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CGyroKVHDSP3000) -> None
This method will be invoked at a minimum rate of "process_rate" (Hz)
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CGyroKVHDSP3000::doProcess() --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CGyroKVHDSP3000) -> None
Turns on the KVH DSP 3000 device and configure it for getting
orientation data. you must have called loadConfig_sensorSpecific before
calling this function.
C++: mrpt::hwdrivers::CGyroKVHDSP3000::initialize() --> void
- loadConfig_sensorSpecific(...)
- loadConfig_sensorSpecific(self: mrpt.pymrpt.mrpt.hwdrivers.CGyroKVHDSP3000, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, iniSection: str) -> None
See the class documentation at the top for expected parameters
C++: mrpt::hwdrivers::CGyroKVHDSP3000::loadConfig_sensorSpecific(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- resetIncrementalAngle(...)
- resetIncrementalAngle(self: mrpt.pymrpt.mrpt.hwdrivers.CGyroKVHDSP3000) -> None
Send to the sensor the command 'Z' wich reset the integrated angle. (in
both rate mode and incremental, this function has no effect)
C++: mrpt::hwdrivers::CGyroKVHDSP3000::resetIncrementalAngle() --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CGyroKVHDSP3000::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CGyroKVHDSP3000::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CHokuyoURG(C2DRangeFinderAbstract) |
|
This software driver implements the protocol SCIP-2.0 for interfacing HOKUYO
URG/UTM/UXM/UST laser scanners (USB or Ethernet).
Refer to the example code
[HOKUYO_laser_test](http://www.mrpt.org/tutorials/mrpt-examples/example_hokuyo_urgutm_laser_scanner/)
and to example rawlog-grabber [config
files](https://github.com/MRPT/mrpt/tree/master/share/mrpt/config_files/rawlog-grabber)
See also the application "rawlog-grabber" for a ready-to-use application to
gather data from the scanner. |
|
- Method resolution order:
- CHokuyoURG
- C2DRangeFinderAbstract
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CHokuyoURG::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG) -> None
- doProcessSimple(...)
- doProcessSimple(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
Specific laser scanner "software drivers" must process here new data
from the I/O stream, and, if a whole scan has arrived, return it.
This method will be typically called in a different thread than other
methods, and will be called in a timely fashion.
C++: mrpt::hwdrivers::CHokuyoURG::doProcessSimple(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- getScanInterval(...)
- getScanInterval(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG) -> int
C++: mrpt::hwdrivers::CHokuyoURG::getScanInterval() const --> unsigned int
- getSerialPort(...)
- getSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG) -> str
Returns the currently set serial port
setSerialPort
C++: mrpt::hwdrivers::CHokuyoURG::getSerialPort() --> const std::string
- purgeBuffers(...)
- purgeBuffers(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG) -> None
Empties the RX buffers of the serial port
C++: mrpt::hwdrivers::CHokuyoURG::purgeBuffers() --> void
- sendCmd(...)
- sendCmd(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG, str: str) -> None
C++: mrpt::hwdrivers::CHokuyoURG::sendCmd(const char *) --> void
- setHighSensitivityMode(...)
- setHighSensitivityMode(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG, enabled: bool) -> bool
Changes the high sensitivity mode (HS) (default: false)
false on any error
C++: mrpt::hwdrivers::CHokuyoURG::setHighSensitivityMode(bool) --> bool
- setIPandPort(...)
- setIPandPort(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG, ip: str, port: int) -> None
Set the ip direction and port to connect using Ethernet communication
C++: mrpt::hwdrivers::CHokuyoURG::setIPandPort(const std::string &, const unsigned int &) --> void
- setIntensityMode(...)
- setIntensityMode(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG, enabled: bool) -> bool
If true scans will capture intensity. (default: false)
Should not be called while scanning.
false on any error
C++: mrpt::hwdrivers::CHokuyoURG::setIntensityMode(bool) --> bool
- setReducedFOV(...)
- setReducedFOV(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG, fov: float) -> None
If called (before calling "turnOn"), the field of view of the laser is
reduced to the given range (in radians), discarding the rest of measures.
Call with "0" to disable this reduction again (the default).
C++: mrpt::hwdrivers::CHokuyoURG::setReducedFOV(const double) --> void
- setScanInterval(...)
- setScanInterval(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG, skipScanCount: int) -> None
Set the skip scan count (0 means send all scans).
Must be set before initialize()
C++: mrpt::hwdrivers::CHokuyoURG::setScanInterval(unsigned int) --> void
- setSerialPort(...)
- setSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG, port_name: str) -> None
If set to non-empty, the serial port will be attempted to be opened
automatically when this class is first used to request data from the
laser.
C++: mrpt::hwdrivers::CHokuyoURG::setSerialPort(const std::string &) --> void
- turnOff(...)
- turnOff(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG) -> bool
Disables the scanning mode (this can be used to turn the device in low
energy mode, if available)
If everything works "true", or "false" if there is any error.
C++: mrpt::hwdrivers::CHokuyoURG::turnOff() --> bool
- turnOn(...)
- turnOn(self: mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG) -> bool
Enables the scanning mode (which may depend on the specific laser
device); this must be called before asking for observations to assure
that the protocol has been initializated.
If everything works "true", or "false" if there is any error.
C++: mrpt::hwdrivers::CHokuyoURG::turnOn() --> bool
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CHokuyoURG::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CHokuyoURG::doRegister() --> void
Data and other attributes defined here:
- TSensorInfo = <class 'mrpt.pymrpt.mrpt.hwdrivers.CHokuyoURG.TSensorInfo'>
- Used in CHokuyoURG::displayVersionInfo
Methods inherited from C2DRangeFinderAbstract:
- bindIO(...)
- bindIO(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, streamIO: mrpt.pymrpt.mrpt.io.CStream) -> None
Binds the object to a given I/O channel.
The stream object must not be deleted before the destruction of this
class.
comms::CSerialPort
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::bindIO(const class std::shared_ptr<class mrpt::io::CStream> &) --> void
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
Main method for a CGenericSensor
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::doProcess() --> void
- getEstimatedScanPeriod(...)
- getEstimatedScanPeriod(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> float
Returns the empirical, filtered estimation for the period at which whole
scans are being returned from calls to doProcessSimple()
: Units: seconds
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getEstimatedScanPeriod() const --> double
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
Get the last observation from the sensor, if available, and unmarks it
as being "the last one" (thus a new scan must arrive or subsequent calls
will find no new observations).
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getObservation(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- showPreview(...)
- showPreview(*args, **kwargs)
Overloaded function.
1. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
2. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, enable: bool) -> None
Enables GUI visualization in real-time
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::showPreview(bool) --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
This method can or cannot be implemented in the derived class, depending
on the need for it.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CGenericSensor::initialize() --> void
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CIMUIntersense(CGenericSensor) |
|
A class for interfacing Intersense Inertial Measuring Units (IMUs).
It connects to a InterSense inertiaCube 3 sensor and records inertial data.
NOTE: This device provides:
- Euler angles,
- 2 angular velocties (body-frame and navigation-frame)
- X,Y,Z velocity
- 2 accelerations (body-frame and navigation-frame)
In order to record all this information within the 'rawMeasurements'
vector
in mrpt::obs::CObservationIMU, some of it had to be stored in positions which
weren't intended for the stored data (marked with *):
- Euler angles --> rawMeasurements[IMU_YAW], rawMeasurements[IMU_PITCH],
rawMeasurements[IMU_ROLL]
- Body-frame angular velocity --> rawMeasurements[IMU_YAW_VEL],
rawMeasurements[IMU_PITCH_VEL], rawMeasurements[IMU_ROLL_VEL]
- * Nav-frame angular velocity --> rawMeasurements[IMU_MAG_X],
rawMeasurements[IMU_MAG_Y], rawMeasurements[IMU_MAG_Z]
- XYZ velocity --> rawMeasurements[IMU_X_VEL],
rawMeasurements[IMU_Y_VEL],
rawMeasurements[IMU_Z_VEL]
- Body-frame acceleration --> rawMeasurements[IMU_X_ACC],
rawMeasurements[IMU_Y_ACC], rawMeasurements[IMU_Z_ACC]
- * Nav-frame acceleration --> rawMeasurements[IMU_X],
rawMeasurements[IMU_Y], rawMeasurements[IMU_Z]
Be careful with this when using the grabbed mrpt::obs::CObservationIMU
data.
See also the application "rawlog-grabber" for a ready-to-use application to
gather data from this sensor.
Class introduced in MRPT 1.3.1 |
|
- Method resolution order:
- CIMUIntersense
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CIMUIntersense) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CIMUIntersense::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CIMUIntersense) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CIMUIntersense) -> None
This method will be invoked at a minimum rate of "process_rate" (Hz)
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CIMUIntersense::doProcess() --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CIMUIntersense) -> None
Turns on the iSense device and configure it for getting orientation data
C++: mrpt::hwdrivers::CIMUIntersense::initialize() --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CIMUIntersense::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CIMUIntersense::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CIMUXSens_MT4(CGenericSensor) |
|
A class for interfacing XSens 4th generation Inertial Measuring Units
(IMUs): MTi 10-series, MTi 100-series.
Usage considerations:
- In Windows, you only need to install XSens drivers.
- In Linux, this class requires the system libraries: libusb-1.0 &
libudev (dev packages). Accessing USB devices may require
running the program as super user ("sudo"). To avoid that, Or, install
MRPT/scripts/52-xsens.rules in /etc/udev/rules.d/
to allow access to all users.
Set the environment variable "MRPT_HWDRIVERS_VERBOSE" to "1" to
enable diagnostic information while using this class. |
|
- Method resolution order:
- CIMUXSens_MT4
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CIMUXSens_MT4) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CIMUXSens_MT4::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CIMUXSens_MT4) -> None
- close(...)
- close(self: mrpt.pymrpt.mrpt.hwdrivers.CIMUXSens_MT4) -> None
C++: mrpt::hwdrivers::CIMUXSens_MT4::close() --> void
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CIMUXSens_MT4) -> None
This method will be invoked at a minimum rate of "process_rate" (Hz)
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CIMUXSens_MT4::doProcess() --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CIMUXSens_MT4) -> None
Turns on the xSens device and configure it for getting orientation data
C++: mrpt::hwdrivers::CIMUXSens_MT4::initialize() --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CIMUXSens_MT4::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CIMUXSens_MT4::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CIbeoLuxETH(CGenericSensor) |
|
This "software driver" implements the communication protocol for interfacing
a Ibeo Lux laser scanners through an ethernet controller.
This class does not need to be bind, i.e. you do not need to call
C2DRangeFinderAbstract::bindIO.
Connection is established when user call the turnOn() method. You can
pass to the class's constructor the Lux's ip address and port.
Device will NOT be configured. Configuration has to be done seperately.
To get a laser scan you must proceed like that :
This class was contributed by Adrien Barral - Robopec (France)
And modified by Jan Girlich - University of Hamburg |
|
- Method resolution order:
- CIbeoLuxETH
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CIbeoLuxETH) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CIbeoLuxETH::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CIbeoLuxETH) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CIbeoLuxETH, arg0: str) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CIbeoLuxETH, _ip: str, _port: int) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CIbeoLuxETH) -> None
This function acquire a laser scan from the device. If an error occured,
hardwareError will be set to true.
The new laser scan will be stored in the outObservation argument.
This method throw exception if the frame received from the
LMS 100 contain the following bad parameters :
* Status is not OK
* Data in the scan aren't DIST1 (may be RSSIx or DIST2).
C++: mrpt::hwdrivers::CIbeoLuxETH::doProcess() --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CIbeoLuxETH) -> None
C++: mrpt::hwdrivers::CIbeoLuxETH::initialize() --> void
- makeCommandHeader(...)
- makeCommandHeader(self: mrpt.pymrpt.mrpt.hwdrivers.CIbeoLuxETH, buffer: int) -> None
C++: mrpt::hwdrivers::CIbeoLuxETH::makeCommandHeader(unsigned char *) --> void
- makeStartCommand(...)
- makeStartCommand(self: mrpt.pymrpt.mrpt.hwdrivers.CIbeoLuxETH, buffer: int) -> None
C++: mrpt::hwdrivers::CIbeoLuxETH::makeStartCommand(unsigned char *) --> void
- makeStopCommand(...)
- makeStopCommand(self: mrpt.pymrpt.mrpt.hwdrivers.CIbeoLuxETH, buffer: int) -> None
C++: mrpt::hwdrivers::CIbeoLuxETH::makeStopCommand(unsigned char *) --> void
- makeTypeCommand(...)
- makeTypeCommand(self: mrpt.pymrpt.mrpt.hwdrivers.CIbeoLuxETH, buffer: int) -> None
C++: mrpt::hwdrivers::CIbeoLuxETH::makeTypeCommand(unsigned char *) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CIbeoLuxETH::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CIbeoLuxETH::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CImageGrabber_FlyCapture2(pybind11_builtins.pybind11_object) |
|
A wrapper for Point Gray Research (PGR) FlyCapture2 API for capturing images
from Firewire, USB3 or GigaE cameras and stereo cameras.
This class is only available when compiling MRPT with
"MRPT_HAS_PGR_FLYCAPTURE2".
See the most generic camera grabber in MRPT:
mrpt::hwdrivers::CCameraSensor
See example code in [samples]/captureVideoFlyCapture2 and
[samples]/captureVideoFlyCapture2_stereo. |
|
- Method resolution order:
- CImageGrabber_FlyCapture2
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_FlyCapture2) -> None
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_FlyCapture2, options: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2) -> None
- close(...)
- close(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_FlyCapture2) -> None
Stop capture and closes the opened camera, if any. Called automatically
on object destruction.
C++: mrpt::hwdrivers::CImageGrabber_FlyCapture2::close() --> void
- getCameraOptions(...)
- getCameraOptions(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_FlyCapture2) -> mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2
Returns the current settings of the camera
C++: mrpt::hwdrivers::CImageGrabber_FlyCapture2::getCameraOptions() const --> const struct mrpt::hwdrivers::TCaptureOptions_FlyCapture2 &
- getObservation(...)
- getObservation(*args, **kwargs)
Overloaded function.
1. getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_FlyCapture2, out_observation: mrpt.pymrpt.mrpt.obs.CObservationImage) -> bool
Grab mono image from the camera. This method blocks until the next frame
is captured.
false on any error.
C++: mrpt::hwdrivers::CImageGrabber_FlyCapture2::getObservation(class mrpt::obs::CObservationImage &) --> bool
2. getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_FlyCapture2, out_observation: mrpt.pymrpt.mrpt.obs.CObservationStereoImages) -> bool
Grab stereo image from the camera. This method blocks until the next
frame is captured.
false on any error.
C++: mrpt::hwdrivers::CImageGrabber_FlyCapture2::getObservation(class mrpt::obs::CObservationStereoImages &) --> bool
- isStereo(...)
- isStereo(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_FlyCapture2) -> bool
Returns if current configuration is stereo or not
C++: mrpt::hwdrivers::CImageGrabber_FlyCapture2::isStereo() --> bool
- open(...)
- open(*args, **kwargs)
Overloaded function.
1. open(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_FlyCapture2, options: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2) -> None
2. open(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_FlyCapture2, options: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2, startCapture: bool) -> None
Tries to open the camera with the given options, and starts capture.
Raises an exception on error.
If set to false, the camera is only opened and
configured, but a posterior call to startCapture() is required to start
grabbing images.
close(), startCapture()
C++: mrpt::hwdrivers::CImageGrabber_FlyCapture2::open(const struct mrpt::hwdrivers::TCaptureOptions_FlyCapture2 &, const bool) --> void
- startCapture(...)
- startCapture(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_FlyCapture2) -> None
Start the actual image capture of the camera. Must be called after
open(), only when "startCapture" was set to false.
startSyncCapture
C++: mrpt::hwdrivers::CImageGrabber_FlyCapture2::startCapture() --> void
- stopCapture(...)
- stopCapture(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_FlyCapture2) -> None
Stop capture.
C++: mrpt::hwdrivers::CImageGrabber_FlyCapture2::stopCapture() --> void
Static methods defined here:
- getFC2version(...) from builtins.PyCapsule
- getFC2version() -> str
Returns the PGR FlyCapture2 library version
C++: mrpt::hwdrivers::CImageGrabber_FlyCapture2::getFC2version() --> std::string
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CImageGrabber_OpenCV(pybind11_builtins.pybind11_object) |
|
A class for grabing images from a "OpenCV"-compatible camera, or from an AVI
video file.
See the constructor for the options when opening the camera.
Unless input from AVI files is required, it is recommended to use the more
generic class
mrpt::hwdrivers::CCameraSensor.
This class is only available when compiling MRPT with the flag
"MRPT_HAS_OPENCV" defined.
Some code is based on the class CaptureCamera from the Orocos project.
mrpt::hwdrivers::CCameraSensor, CImageGrabber_dc1394
The most generic camera grabber in MRPT: mrpt::hwdrivers::CCameraSensor |
|
- Method resolution order:
- CImageGrabber_OpenCV
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV, cameraIndex: int) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV, cameraIndex: int, cameraType: mrpt.pymrpt.mrpt.hwdrivers.TCameraType) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV, cameraIndex: int, cameraType: mrpt.pymrpt.mrpt.hwdrivers.TCameraType, options: mrpt.pymrpt.mrpt.hwdrivers.TCaptureCVOptions) -> None
5. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV, AVI_fileName: str) -> None
6. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV, arg0: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV, : mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV) -> mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV
C++: mrpt::hwdrivers::CImageGrabber_OpenCV::operator=(const class mrpt::hwdrivers::CImageGrabber_OpenCV &) --> class mrpt::hwdrivers::CImageGrabber_OpenCV &
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV, out_observation: mrpt.pymrpt.mrpt.obs.CObservationImage) -> bool
Grab an image from the opened camera.
The object to be filled with sensed data.
false on any error, true if all go fine.
C++: mrpt::hwdrivers::CImageGrabber_OpenCV::getObservation(class mrpt::obs::CObservationImage &) --> bool
- isOpen(...)
- isOpen(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_OpenCV) -> bool
Check whether the camera has been open successfully.
C++: mrpt::hwdrivers::CImageGrabber_OpenCV::isOpen() const --> bool
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CImageGrabber_dc1394(pybind11_builtins.pybind11_object) |
|
A class for grabing images from a IEEE1394 (Firewire) camera using the
libdc1394-2 library.
See the constructor for the options when opening the camera. Notice that
you may have
to carefully set the resolution, framerate and color_mode. See the
verbose parameter of
the constructor, which can display a list of supported modes in your
camera.
This class is able to manage any Firewire cameras, including Stereo or
multi-cameras in general,
so this can be used to open the Bumblebee camera (not tested yet).
A static method (CImageGrabber_dc1394::enumerateCameras) is provided to
enumerate all existing cameras and their properties. It can be used
to find the GUID of the desired camera, then open it at the constructor.
This class requires MRPT compiled with "libdc1394-2" (Only works under
Linux for now) and "opencv".
In Linux you may need to execute "chmod 666 /dev/video1394/ * " and
"chmod 666 /dev/raw1394" for allowing any user R/W access to firewire
cameras.
[New in MRPT 1.3.0] Length of ring buffer is now configurable via
TCaptureOptions_dc1394::ring_buffer_size
The most generic camera grabber in MRPT: mrpt::hwdrivers::CCameraSensor |
|
- Method resolution order:
- CImageGrabber_dc1394
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394, cameraGUID: int) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394, cameraGUID: int, cameraUnit: int) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394, cameraGUID: int, cameraUnit: int, options: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_dc1394) -> None
doc
5. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394, cameraGUID: int, cameraUnit: int, options: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_dc1394, verbose: bool) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394, : mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394) -> mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394
C++: mrpt::hwdrivers::CImageGrabber_dc1394::operator=(const class mrpt::hwdrivers::CImageGrabber_dc1394 &) --> class mrpt::hwdrivers::CImageGrabber_dc1394 &
- changeCaptureOptions(...)
- changeCaptureOptions(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394, options: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_dc1394) -> bool
Changes the capture properties (brightness, gain, shutter, etc)
The frame size, framerate, and color_coding fields in options are
ignored since they can be only set at construction time.
false on error
C++: mrpt::hwdrivers::CImageGrabber_dc1394::changeCaptureOptions(const struct mrpt::hwdrivers::TCaptureOptions_dc1394 &) --> bool
- getObservation(...)
- getObservation(*args, **kwargs)
Overloaded function.
1. getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394, out_observation: mrpt.pymrpt.mrpt.obs.CObservationImage) -> bool
Grab an image from the opened camera (for monocular cameras).
The object to be filled with sensed data.
This may be blocking when using software trigger and no frame is
available yet. Ensure trigger before getObservation() or take into
account that this call may block.
false on any error, true if all go fine.
C++: mrpt::hwdrivers::CImageGrabber_dc1394::getObservation(class mrpt::obs::CObservationImage &) --> bool
2. getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394, out_observation: mrpt.pymrpt.mrpt.obs.CObservationStereoImages) -> bool
Grab an image from the opened camera (for stereo cameras).
The object to be filled with sensed data.
false on any error, true if all go fine.
C++: mrpt::hwdrivers::CImageGrabber_dc1394::getObservation(class mrpt::obs::CObservationStereoImages &) --> bool
- isOpen(...)
- isOpen(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394) -> bool
Check whether the camera has been open successfully.
C++: mrpt::hwdrivers::CImageGrabber_dc1394::isOpen() const --> bool
- setSoftwareTriggerLevel(...)
- setSoftwareTriggerLevel(self: mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394, level: bool) -> bool
Changes the boolean level associated to Software Trigger (ON/OFF)
Can be used to control camera triggering trough software
false on error
C++: mrpt::hwdrivers::CImageGrabber_dc1394::setSoftwareTriggerLevel(bool) --> bool
Data and other attributes defined here:
- TCameraInfo = <class 'mrpt.pymrpt.mrpt.hwdrivers.CImageGrabber_dc1394.TCameraInfo'>
- Used in enumerateCameras
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CImpinjRFID(CGenericSensor) |
|
This class implements an interface to an Impinj RFID reader. This object
connects to a program that does the actual communication with the receiver.
This is done because the manufacturer only provides libraries for C# and
Java. The program that runs the device must be started after this object |
|
- Method resolution order:
- CImpinjRFID
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CImpinjRFID) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CImpinjRFID::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CImpinjRFID) -> None
- closeReader(...)
- closeReader(self: mrpt.pymrpt.mrpt.hwdrivers.CImpinjRFID) -> None
Close the connection to the reader.
C++: mrpt::hwdrivers::CImpinjRFID::closeReader() --> void
- connect(...)
- connect(self: mrpt.pymrpt.mrpt.hwdrivers.CImpinjRFID) -> None
Connect to the reader.
C++: mrpt::hwdrivers::CImpinjRFID::connect() --> void
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CImpinjRFID) -> None
C++: mrpt::hwdrivers::CImpinjRFID::doProcess() --> void
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CImpinjRFID, obs: mrpt.pymrpt.mrpt.obs.CObservationRFID) -> bool
Gets the information of the tags as a timestamped observation
NOTE: Deprecated, use getObservations instead. See CGenericSensor
documentation. This function is kept for internal use of the module
Returns true if the observation was correct, and false otherwise
mrpt::hwdrivers::CGenericSensor
C++: mrpt::hwdrivers::CImpinjRFID::getObservation(class mrpt::obs::CObservationRFID &) --> bool
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CImpinjRFID) -> None
C++: mrpt::hwdrivers::CImpinjRFID::initialize() --> void
- loadConfig_sensorSpecific(...)
- loadConfig_sensorSpecific(self: mrpt.pymrpt.mrpt.hwdrivers.CImpinjRFID, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
C++: mrpt::hwdrivers::CImpinjRFID::loadConfig_sensorSpecific(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CImpinjRFID::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CImpinjRFID::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CJoystick(pybind11_builtins.pybind11_object) |
|
Access to joysticks and gamepads (read buttons and position), and request
number of joysticks in the system. |
|
- Method resolution order:
- CJoystick
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CJoystick) -> None
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CJoystick, arg0: mrpt.pymrpt.mrpt.hwdrivers.CJoystick) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.CJoystick, : mrpt.pymrpt.mrpt.hwdrivers.CJoystick) -> mrpt.pymrpt.mrpt.hwdrivers.CJoystick
C++: mrpt::hwdrivers::CJoystick::operator=(const class mrpt::hwdrivers::CJoystick &) --> class mrpt::hwdrivers::CJoystick &
- setLimits(...)
- setLimits(*args, **kwargs)
Overloaded function.
1. setLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CJoystick) -> None
2. setLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CJoystick, x_min: int) -> None
3. setLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CJoystick, x_min: int, x_max: int) -> None
4. setLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CJoystick, x_min: int, x_max: int, y_min: int) -> None
5. setLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CJoystick, x_min: int, x_max: int, y_min: int, y_max: int) -> None
6. setLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CJoystick, x_min: int, x_max: int, y_min: int, y_max: int, z_min: int) -> None
7. setLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CJoystick, x_min: int, x_max: int, y_min: int, y_max: int, z_min: int, z_max: int) -> None
C++: mrpt::hwdrivers::CJoystick::setLimits(int, int, int, int, int, int) --> void
Static methods defined here:
- getJoysticksCount(...) from builtins.PyCapsule
- getJoysticksCount() -> int
Returns the number of Joysticks in the computer.
C++: mrpt::hwdrivers::CJoystick::getJoysticksCount() --> int
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CKinect(CGenericSensor) |
|
A class for grabing "range images", intensity images (either RGB or IR) and
other information from an Xbox Kinect sensor.
To use Kinect for Windows or ASUS/Primesense RGBD cameras, use the class
COpenNI2.
Configuration and usage:
Data is returned as observations of type mrpt::obs::CObservation3DRangeScan
(and mrpt::obs::CObservationIMU for accelerometers data).
See those classes for documentation on their fields.
As with any other CGenericSensor class, the normal sequence of methods to be
called is:
- CGenericSensor::loadConfig() - Or calls to the individual setXXX() to
configure the sensor parameters.
- CKinect::initialize() - to start the communication with the sensor.
- call CKinect::getNextObservation() for getting the data.
Calibration parameters
For an accurate transformation of depth images to 3D points, you'll have to
calibrate your Kinect, and supply
the following threee pieces of information (default calibration
data will be used otherwise, but they'll be not optimal for all sensors!):
- Camera parameters for the RGB camera. See
CKinect::setCameraParamsIntensity()
- Camera parameters for the depth camera. See
CKinect::setCameraParamsDepth()
- The 3D relative pose of the two cameras. See
CKinect::setRelativePoseIntensityWrtDepth()
See https://www.mrpt.org/Kinect_calibration for a procedure to calibrate
Kinect sensors with an interactive GUI program.
Coordinates convention
The origin of coordinates is the focal point of the depth camera, with the
axes oriented as in the
diagram shown in mrpt::obs::CObservation3DRangeScan. Notice in that
picture that the RGB camera is
assumed to have axes as usual in computer vision, which differ from those
for the depth camera.
The X,Y,Z axes used to report the data from accelerometers coincide with
those of the depth camera
(e.g. the camera standing on a table would have an ACC_Z=-9.8m/s2).
Notice however that, for consistency with stereo cameras, when loading the
calibration parameters from
a configuration file, the left-to-right pose increment is expected as if
both RGB & IR cameras had
their +Z axes pointing forward, +X to the right, +Y downwards (just like
it's the standard in stereo cameras
and in computer vision literature). In other words: the pose stored in
this class uses a different
axes convention for the depth camera than in a stereo camera, so when a
pose L2R is loaded from a calibration file
it's actually converted like:
L2R(this class convention) = CPose3D(0,0,0,-90deg,0deg,-90deg) (+)
L2R(in the config file)
Some general comments
- Depth is grabbed in 10bit depth, and a range N it's converted to
meters
as: range(m) = 0.1236 * tan(N/2842.5 + 1.1863)
- This sensor can be also used from within rawlog-grabber to grab
datasets
within a robot with more sensors.
- There is no built-in threading support, so if you use this class
manually
(not with-in rawlog-grabber),
the ideal would be to create a thread and continuously request data
from
that thread (see mrpt::system::createThread ).
- The intensity channel default to the RGB images, but it can be changed
with setVideoChannel() to read the IR camera images (useful for calibrating).
- There is a built-in support for an optional preview of the data on a
window, so you don't need to even worry on creating a window to show them.
- This class relies on an embedded version of libfreenect (you do NOT
need
to install it in your system). Thanks guys for the great job!
Converting to 3D point cloud
You can convert the 3D observation into a 3D point cloud with this piece
of code:
Then the point cloud mrpt::maps::CColouredPointsMap can be converted into
an OpenGL object for
rendering with mrpt::maps::CMetricMap::getAs3DObject() or alternatively
with:
Raw depth to range conversion
At construction, this class builds an internal array for converting raw 10
or 11bit depths into ranges in meters.
Users can read that array or modify it (if you have a better calibration,
for example) by calling CKinect::getRawDepth2RangeConversion().
If you replace it, remember to set the first and last entries (index 0 and
KINECT_RANGES_TABLE_LEN-1) to zero, to indicate that those are invalid
ranges.
R(d) = k3 * tan(d/k2 + k1);
k1 = 1.1863, k2 = 2842.5, k3 = 0.1236
Platform-specific comments
For more details, refer to
*>libfreenect documentation:
- Linux: You'll need root privileges to access Kinect. Or, install
MRPT/scripts/51-kinect.rules in /etc/udev/rules.d/ to
allow access to all users.
- Windows:
- Since MRPT 0.9.4 you'll only need to install
*href="http://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/"
>libusb-win32: download and extract the latest
libusb-win32-bin-x.x.x.x.zip
- To install the drivers, read this:
http://openkinect.org/wiki/Getting_Started#Windows
- MacOS: (write me!)
Format of parameters for loading from a .ini file
More references to read:
- http://openkinect.org/wiki/Imaging_Information
- http://nicolas.burrus.name/index.php/Research/KinectCalibration |
|
- Method resolution order:
- CKinect
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CKinect::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> None
- close(...)
- close(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> None
Close the Connection to the sensor (not need to call it manually unless
desired for some reason,
since it's called at destructor)
C++: mrpt::hwdrivers::CKinect::close() --> void
- cols(...)
- cols(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> int
Get the col count in the camera images, loaded automatically upon camera
open().
C++: mrpt::hwdrivers::CKinect::cols() const --> size_t
- disablePreviewRGB(...)
- disablePreviewRGB(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> None
C++: mrpt::hwdrivers::CKinect::disablePreviewRGB() --> void
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> None
To be called at a high rate (>XX Hz), this method populates the
internal buffer of received observations.
This method is mainly intended for usage within rawlog-grabber or
similar programs.
For an alternative, see getNextObservation()
This method must throw an exception with a descriptive
message if some critical error is found.
getNextObservation
C++: mrpt::hwdrivers::CKinect::doProcess() --> void
- enableGrab3DPoints(...)
- enableGrab3DPoints(*args, **kwargs)
Overloaded function.
1. enableGrab3DPoints(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> None
2. enableGrab3DPoints(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, enable: bool) -> None
Enable/disable the grabbing of the 3D point clouds
C++: mrpt::hwdrivers::CKinect::enableGrab3DPoints(bool) --> void
- enableGrabAccelerometers(...)
- enableGrabAccelerometers(*args, **kwargs)
Overloaded function.
1. enableGrabAccelerometers(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> None
2. enableGrabAccelerometers(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, enable: bool) -> None
Enable/disable the grabbing of the inertial data
C++: mrpt::hwdrivers::CKinect::enableGrabAccelerometers(bool) --> void
- enableGrabDepth(...)
- enableGrabDepth(*args, **kwargs)
Overloaded function.
1. enableGrabDepth(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> None
2. enableGrabDepth(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, enable: bool) -> None
Enable/disable the grabbing of the depth channel
C++: mrpt::hwdrivers::CKinect::enableGrabDepth(bool) --> void
- enableGrabRGB(...)
- enableGrabRGB(*args, **kwargs)
Overloaded function.
1. enableGrabRGB(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> None
2. enableGrabRGB(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, enable: bool) -> None
Enable/disable the grabbing of the RGB channel
C++: mrpt::hwdrivers::CKinect::enableGrabRGB(bool) --> void
- enablePreviewRGB(...)
- enablePreviewRGB(*args, **kwargs)
Overloaded function.
1. enablePreviewRGB(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> None
2. enablePreviewRGB(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, enable: bool) -> None
Default: disabled
C++: mrpt::hwdrivers::CKinect::enablePreviewRGB(bool) --> void
- getCameraParamsDepth(...)
- getCameraParamsDepth(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> mrpt.pymrpt.mrpt.img.TCamera
Get a const reference to the depth camera calibration parameters
C++: mrpt::hwdrivers::CKinect::getCameraParamsDepth() const --> const class mrpt::img::TCamera &
- getCameraParamsIntensity(...)
- getCameraParamsIntensity(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> mrpt.pymrpt.mrpt.img.TCamera
Get a const reference to the depth camera calibration parameters
C++: mrpt::hwdrivers::CKinect::getCameraParamsIntensity() const --> const class mrpt::img::TCamera &
- getDeviceIndexToOpen(...)
- getDeviceIndexToOpen(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> int
C++: mrpt::hwdrivers::CKinect::getDeviceIndexToOpen() const --> int
- getMaxRange(...)
- getMaxRange(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> float
Get the maximum range (meters) that can be read in the observation field
"rangeImage"
C++: mrpt::hwdrivers::CKinect::getMaxRange() const --> double
- getNextObservation(...)
- getNextObservation(*args, **kwargs)
Overloaded function.
1. getNextObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, out_obs: mrpt.pymrpt.mrpt.obs.CObservation3DRangeScan, there_is_obs: bool, hardware_error: bool) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved observation (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
doProcess
C++: mrpt::hwdrivers::CKinect::getNextObservation(class mrpt::obs::CObservation3DRangeScan &, bool &, bool &) --> void
2. getNextObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, out_obs: mrpt.pymrpt.mrpt.obs.CObservation3DRangeScan, out_obs_imu: mrpt.pymrpt.mrpt.obs.CObservationIMU, there_is_obs: bool, hardware_error: bool) -> None
This method also grabs data from the accelerometers, returning
them in out_obs_imu
C++: mrpt::hwdrivers::CKinect::getNextObservation(class mrpt::obs::CObservation3DRangeScan &, class mrpt::obs::CObservationIMU &, bool &, bool &) --> void
- getPreviewDecimation(...)
- getPreviewDecimation(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> int
C++: mrpt::hwdrivers::CKinect::getPreviewDecimation() const --> size_t
- getRelativePoseIntensityWrtDepth(...)
- getRelativePoseIntensityWrtDepth(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> mrpt.pymrpt.mrpt.poses.CPose3D
C++: mrpt::hwdrivers::CKinect::getRelativePoseIntensityWrtDepth() const --> const class mrpt::poses::CPose3D &
- getTiltAngleDegrees(...)
- getTiltAngleDegrees(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> float
C++: mrpt::hwdrivers::CKinect::getTiltAngleDegrees() --> double
- getVideoChannel(...)
- getVideoChannel(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> mrpt.pymrpt.mrpt.hwdrivers.CKinect.TVideoChannel
Return the current video channel (RGB or IR)
setVideoChannel
C++: mrpt::hwdrivers::CKinect::getVideoChannel() const --> enum mrpt::hwdrivers::CKinect::TVideoChannel
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> None
Initializes the 3D camera - should be invoked after calling loadConfig()
or setting the different parameters with the set*() methods.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CKinect::initialize() --> void
- isGrab3DPointsEnabled(...)
- isGrab3DPointsEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> bool
C++: mrpt::hwdrivers::CKinect::isGrab3DPointsEnabled() const --> bool
- isGrabAccelerometersEnabled(...)
- isGrabAccelerometersEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> bool
C++: mrpt::hwdrivers::CKinect::isGrabAccelerometersEnabled() const --> bool
- isGrabDepthEnabled(...)
- isGrabDepthEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> bool
C++: mrpt::hwdrivers::CKinect::isGrabDepthEnabled() const --> bool
- isGrabRGBEnabled(...)
- isGrabRGBEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> bool
C++: mrpt::hwdrivers::CKinect::isGrabRGBEnabled() const --> bool
- isOpen(...)
- isOpen(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> bool
Whether there is a working connection to the sensor
C++: mrpt::hwdrivers::CKinect::isOpen() const --> bool
- isPreviewRGBEnabled(...)
- isPreviewRGBEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> bool
C++: mrpt::hwdrivers::CKinect::isPreviewRGBEnabled() const --> bool
- open(...)
- open(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> None
Try to open the camera (set all the parameters before calling this) -
users may also call initialize(), which in turn calls this method.
Raises an exception upon error.
std::exception A textual description of the error.
C++: mrpt::hwdrivers::CKinect::open() --> void
- rows(...)
- rows(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect) -> int
Get the row count in the camera images, loaded automatically upon camera
open().
C++: mrpt::hwdrivers::CKinect::rows() const --> size_t
- setCameraParamsDepth(...)
- setCameraParamsDepth(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, p: mrpt.pymrpt.mrpt.img.TCamera) -> None
C++: mrpt::hwdrivers::CKinect::setCameraParamsDepth(const class mrpt::img::TCamera &) --> void
- setCameraParamsIntensity(...)
- setCameraParamsIntensity(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, p: mrpt.pymrpt.mrpt.img.TCamera) -> None
C++: mrpt::hwdrivers::CKinect::setCameraParamsIntensity(const class mrpt::img::TCamera &) --> void
- setDeviceIndexToOpen(...)
- setDeviceIndexToOpen(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, index: int) -> None
Set the sensor index to open (if there're several sensors attached to
the computer); default=0 -> the first one.
C++: mrpt::hwdrivers::CKinect::setDeviceIndexToOpen(int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, directory: str) -> None
Set the path where to save off-rawlog image files (this class DOES take
into account this path).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CKinect::setPathForExternalImages(const std::string &) --> void
- setPreviewDecimation(...)
- setPreviewDecimation(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, decimation_factor: int) -> None
If preview is enabled, show only one image out of N (default: 1=show
all)
C++: mrpt::hwdrivers::CKinect::setPreviewDecimation(size_t) --> void
- setRelativePoseIntensityWrtDepth(...)
- setRelativePoseIntensityWrtDepth(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, p: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Set the pose of the intensity camera wrt the depth camera
See
mrpt::obs::CObservation3DRangeScan for a 3D diagram of this pose
C++: mrpt::hwdrivers::CKinect::setRelativePoseIntensityWrtDepth(const class mrpt::poses::CPose3D &) --> void
- setTiltAngleDegrees(...)
- setTiltAngleDegrees(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, angle: float) -> None
Change tilt angle
Sensor must be open first.
C++: mrpt::hwdrivers::CKinect::setTiltAngleDegrees(double) --> void
- setVideoChannel(...)
- setVideoChannel(self: mrpt.pymrpt.mrpt.hwdrivers.CKinect, vch: mrpt.pymrpt.mrpt.hwdrivers.CKinect.TVideoChannel) -> None
Changes the video channel to open (RGB or IR) - you can call this method
before start grabbing or in the middle of streaming and the video source
will change on the fly.
Default is RGB channel.
C++: mrpt::hwdrivers::CKinect::setVideoChannel(const enum mrpt::hwdrivers::CKinect::TVideoChannel) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CKinect::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CKinect::doRegister() --> void
Data and other attributes defined here:
- TVideoChannel = <class 'mrpt.pymrpt.mrpt.hwdrivers.CKinect.TVideoChannel'>
- VIDEO_CHANNEL_IR = <TVideoChannel.VIDEO_CHANNEL_IR: 1>
- VIDEO_CHANNEL_RGB = <TVideoChannel.VIDEO_CHANNEL_RGB: 0>
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CLMS100Eth(C2DRangeFinderAbstract) |
|
This "software driver" implements the communication protocol for interfacing
a SICK LMS100 laser scanners through an ethernet controller.
This class does not need to be bind, i.e. you do not need to call
C2DRangeFinderAbstract::bindIO.
Connection is established when user call the turnOn() method. You can
pass to the class's constructor the LMS100 's ip address and port.
Device will be configured with the following parameters :
- Start Angle : -45 deg (imposed by hardware)
- Stop Angle : +225 deg (imposed by hardware)
- Apperture : 270 deg (imposed by hardware)
- Angular resolution : 0.25 deg
- Scan frequency : 25 Hz
- Max Range : 20m (imposed by hardware).
Important note: SICK LMS 1xx devices have two levels of
configuration. In its present implementation, this class only handles one of
them, so
before using this class, you must "pre-configure" your scanner
with the SICK's software "SOAP" (this software ships with the device),
and set the framerate with this software. Of course, you have to
pre-configure the device just once, then save that configuration in its flash
memory.
To get a laser scan you must proceed like that :
The sensor pose on the vehicle could be loaded from an ini configuration
file with :
This class doesn't configure the SICK LMS sensor, it is recomended to
configure the sensor via the
the SICK software : SOPAS.
This class was contributed by Adrien Barral - Robopec (France) |
|
- Method resolution order:
- CLMS100Eth
- C2DRangeFinderAbstract
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CLMS100Eth) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CLMS100Eth::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CLMS100Eth) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CLMS100Eth, arg0: str) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CLMS100Eth, _ip: str, _port: int) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CLMS100Eth) -> None
This method should be called periodically. Period depend on the
process_rate in the configuration file.
C++: mrpt::hwdrivers::CLMS100Eth::doProcess() --> void
- doProcessSimple(...)
- doProcessSimple(self: mrpt.pymrpt.mrpt.hwdrivers.CLMS100Eth, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
This function acquire a laser scan from the device. If an error occured,
hardwareError will be set to true.
The new laser scan will be stored in the outObservation argument.
This method throw exception if the frame received from the
LMS 100 contain the following bad parameters :
* Status is not OK
* Data in the scan aren't DIST1 (may be RSSIx or DIST2).
C++: mrpt::hwdrivers::CLMS100Eth::doProcessSimple(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CLMS100Eth) -> None
Initialize the sensor according to the parameters previously read in the
configuration file.
C++: mrpt::hwdrivers::CLMS100Eth::initialize() --> void
- setSensorPose(...)
- setSensorPose(self: mrpt.pymrpt.mrpt.hwdrivers.CLMS100Eth, _pose: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
A method to set the sensor pose on the robot.
Equivalent to setting the sensor pose via loading it from a config
file.
C++: mrpt::hwdrivers::CLMS100Eth::setSensorPose(const class mrpt::poses::CPose3D &) --> void
- turnOff(...)
- turnOff(self: mrpt.pymrpt.mrpt.hwdrivers.CLMS100Eth) -> bool
This method could be called manually to stop communication with the
device. Method is also called by destructor.
C++: mrpt::hwdrivers::CLMS100Eth::turnOff() --> bool
- turnOn(...)
- turnOn(self: mrpt.pymrpt.mrpt.hwdrivers.CLMS100Eth) -> bool
This method must be called before trying to get a laser scan.
C++: mrpt::hwdrivers::CLMS100Eth::turnOn() --> bool
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CLMS100Eth::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CLMS100Eth::doRegister() --> void
Methods inherited from C2DRangeFinderAbstract:
- bindIO(...)
- bindIO(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, streamIO: mrpt.pymrpt.mrpt.io.CStream) -> None
Binds the object to a given I/O channel.
The stream object must not be deleted before the destruction of this
class.
comms::CSerialPort
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::bindIO(const class std::shared_ptr<class mrpt::io::CStream> &) --> void
- getEstimatedScanPeriod(...)
- getEstimatedScanPeriod(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> float
Returns the empirical, filtered estimation for the period at which whole
scans are being returned from calls to doProcessSimple()
: Units: seconds
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getEstimatedScanPeriod() const --> double
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
Get the last observation from the sensor, if available, and unmarks it
as being "the last one" (thus a new scan must arrive or subsequent calls
will find no new observations).
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getObservation(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- showPreview(...)
- showPreview(*args, **kwargs)
Overloaded function.
1. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
2. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, enable: bool) -> None
Enables GUI visualization in real-time
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::showPreview(bool) --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CNTRIPClient(pybind11_builtins.pybind11_object) |
|
A client for NTRIP (HTTP) sources of differential GPS corrections from
internet servers, or Global navigation satellite system (GNSS) internet
radio.
Usage:
- To open the server, invoke "open" with the proper parameters. Then use
"stream_data" to read the read data.
- To obtain a list of all the mountpoints available at a given NTRIP
Caster, call "retrieveListOfMountpoints" (it's a static method).
It is not neccesary to call "close", the connection is ended at
destruction.
For a good reference of the NTRIP protocol, see
http://gnss.itacyl.es/opencms/opencms/system/modules/es.jcyl.ita.site.gnss/resources/documentos_gnss/NtripDocumentation.pdf |
|
- Method resolution order:
- CNTRIPClient
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPClient) -> None
- close(...)
- close(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPClient) -> None
Closes the connection.
open
C++: mrpt::hwdrivers::CNTRIPClient::close() --> void
- open(...)
- open(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPClient, params: mrpt::hwdrivers::CNTRIPClient::NTRIPArgs, out_errmsg: str) -> bool
Tries to open a given NTRIP stream and, if successful, launches a thread
for continuously reading from it.
close, stream_data
false On any kind of error, with a description of the error in
errmsg, if provided.
C++: mrpt::hwdrivers::CNTRIPClient::open(const struct mrpt::hwdrivers::CNTRIPClient::NTRIPArgs &, std::string &) --> bool
- sendBackToServer(...)
- sendBackToServer(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPClient, data: str) -> None
Enqueues a string to be sent back to the NTRIP server (e.g. GGA frames)
C++: mrpt::hwdrivers::CNTRIPClient::sendBackToServer(const std::string &) --> void
Data and other attributes defined here:
- NTRIPArgs = <class 'mrpt.pymrpt.mrpt.hwdrivers.CNTRIPClient.NTRIPArgs'>
- The arguments for connecting to a NTRIP stream, used in
CNTRIPClient::open
- TMountPoint = <class 'mrpt.pymrpt.mrpt.hwdrivers.CNTRIPClient.TMountPoint'>
- A descriptor of one stream in an NTRIP Caster - See
CNTRIPClient::retrieveListOfMountpoints
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CNTRIPEmitter(CGenericSensor) |
|
This "virtual driver" encapsulates a NTRIP client (see CNTRIPClient) but
adds the functionality of dumping the received datastream to a given serial
port.
Used within rawlog-grabber, along CGPSInterface, this class allows to build
a powerful & simple RTK-capable GPS receiver system.
Therefore, this sensor will never "collect" any observation via the
CGenericSensor interface.
See also the example configuration file for rawlog-grabber in
"share/mrpt/config_files/rawlog-grabber".
The next picture summarizes existing MRPT classes related to GPS / GNSS
devices (CGPSInterface, CNTRIPEmitter, CGPS_NTRIP):
CGPSInterface, CGPS_NTRIP, CNTRIPClient |
|
- Method resolution order:
- CNTRIPEmitter
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPEmitter) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CNTRIPEmitter::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPEmitter) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPEmitter) -> None
The main loop, which must be called in a timely fashion in order to
process the incomming NTRIP data stream and dump it to the serial port.
This method is called automatically when used within rawlog-grabber.
C++: mrpt::hwdrivers::CNTRIPEmitter::doProcess() --> void
- getNTRIPClient(...)
- getNTRIPClient(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPEmitter) -> mrpt.pymrpt.mrpt.hwdrivers.CNTRIPClient
Exposes the NTRIP client object
C++: mrpt::hwdrivers::CNTRIPEmitter::getNTRIPClient() --> class mrpt::hwdrivers::CNTRIPClient &
- getOutputSerialPort(...)
- getOutputSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPEmitter) -> str
C++: mrpt::hwdrivers::CNTRIPEmitter::getOutputSerialPort() const --> std::string
- getRawOutputFilePrefix(...)
- getRawOutputFilePrefix(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPEmitter) -> str
C++: mrpt::hwdrivers::CNTRIPEmitter::getRawOutputFilePrefix() const --> std::string
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPEmitter) -> None
Set up the NTRIP communications, raising an exception on fatal errors.
Called automatically by rawlog-grabber.
If used manually, call after "loadConfig" and before "doProcess".
C++: mrpt::hwdrivers::CNTRIPEmitter::initialize() --> void
- setOutputSerialPort(...)
- setOutputSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPEmitter, port: str) -> None
Changes the serial port to connect to (call prior to 'doProcess'), for
example "COM1" or "ttyS0".
This is not needed if the configuration is loaded with "loadConfig".
C++: mrpt::hwdrivers::CNTRIPEmitter::setOutputSerialPort(const std::string &) --> void
- setRawOutputFilePrefix(...)
- setRawOutputFilePrefix(self: mrpt.pymrpt.mrpt.hwdrivers.CNTRIPEmitter, outfile: str) -> None
C++: mrpt::hwdrivers::CNTRIPEmitter::setRawOutputFilePrefix(const std::string &) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CNTRIPEmitter::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CNTRIPEmitter::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CNationalInstrumentsDAQ(CGenericSensor) |
|
An interface to read from data acquisition boards compatible with National
Instruments "DAQmx Base" or "DAQmx".
Refer to DAQmx Base C API reference online to learn more on the concepts of
"channels", "tasks" (which in this MRPT class
are mapped to independent grabbing threads), etc.
If both DAQmx and DAQmxBase are installed in the system, DAQmx will be used.
This class API isolate the user from the usage of one or another specific
library.
This class can be used as a sensor from the application "rawlog-grabber", or
directly as a C++ class from a user program.
Refer to the example: [MRPT]/samples/NIDAQ_test
Samples will be returned inside mrpt::obs::CObservationRawDAQ in "packets"
of a predefined number of samples, which can be changed by the user through
the "samplesPerChannelToRead" parameter of each task.
For multichannels tasks, samples will be **interleaved**. For example, the
readings from successive timesteps for 4 ADC channels
will be available in the ADC vector inside mrpt::obs::CObservationRawDAQ in
this order:
- A0[0] A1[0] A2[0] A3[0] A0[1] A1[1] A2[1] A3[1] A0[2] A1[2] A2[2] A3[2]
...
The sensor label (field "m_sensorLabel") of each grabbed observation will be
the concatenation of this class sensor label,
a dot (".") and the task label (default="task###", with ### the task index).
See also:
- [MRPT]/samples/NIDAQ_test
- Sample .ini files for rawlog-grabber in
[MRPT]/share/mrpt/config_files/rawlog-grabber/
- NI DAQmx C reference:
http://others-help.mrpt.org/ni-daqmx_c_reference_help/
- NI DAQmx Base 3.x C reference:
http://others-help.mrpt.org/ni-daqmx_base_3.x_c_function_reference/
DAQmx Base Installation
------------------------
Go to http://ni.com and download the "DAQmx Base" package for your OS.
Install following NI's instructions. As of 2013, the latest version is 3.7.
This class requires compiling MRPT with support for "NI DAQmx" or "NI
DAQmx Base". While compiling MRPT,
check the "MRPT_HAS_NI_DAQmx"/"MRPT_HAS_NI_DAQmxBASE" option and
correctly set the new variables to
the library include directory and library file.
As of 2013, NI seems not to support compiling 64bit programs, so you
can must build MRPT for 32bits if you need this class. |
|
- Method resolution order:
- CNationalInstrumentsDAQ
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CNationalInstrumentsDAQ) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CNationalInstrumentsDAQ::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CNationalInstrumentsDAQ) -> None
- checkDAQIsWorking(...)
- checkDAQIsWorking(self: mrpt.pymrpt.mrpt.hwdrivers.CNationalInstrumentsDAQ) -> bool
Returns true if initialize() was called and at least one task is
running.
C++: mrpt::hwdrivers::CNationalInstrumentsDAQ::checkDAQIsWorking() const --> bool
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CNationalInstrumentsDAQ) -> None
C++: mrpt::hwdrivers::CNationalInstrumentsDAQ::doProcess() --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CNationalInstrumentsDAQ) -> None
Setup and launch the DAQ tasks, in parallel threads.
Access to grabbed data with CNationalInstrumentsDAQ::readFromDAQ() or
the standard CGenericSensor::doProcess()
C++: mrpt::hwdrivers::CNationalInstrumentsDAQ::initialize() --> void
- stop(...)
- stop(self: mrpt.pymrpt.mrpt.hwdrivers.CNationalInstrumentsDAQ) -> None
Stop the grabbing threads for DAQ tasks. It is automatically called at
destruction.
C++: mrpt::hwdrivers::CNationalInstrumentsDAQ::stop() --> void
- writeAnalogOutputTask(...)
- writeAnalogOutputTask(self: mrpt.pymrpt.mrpt.hwdrivers.CNationalInstrumentsDAQ, task_index: int, nSamplesPerChannel: int, volt_values: float, timeout: float, groupedByChannel: bool) -> None
Set voltage outputs to all the outputs in an AOUT task
For the meaning of parameters, refere to NI DAQmx docs for
DAQmxBaseWriteAnalogF64()
The number of samples in must match the number of
channels in the task when it was initiated.
C++: mrpt::hwdrivers::CNationalInstrumentsDAQ::writeAnalogOutputTask(size_t, size_t, const double *, double, bool) --> void
- writeDigitalOutputTask(...)
- writeDigitalOutputTask(self: mrpt.pymrpt.mrpt.hwdrivers.CNationalInstrumentsDAQ, task_index: int, line_value: bool, timeout: float) -> None
Changes the boolean state of one digital output line.
For the meaning of parameters, refere to NI DAQmx docs for
DAQmxBaseWriteAnalogF64()
The number of samples in must match the number of
channels in the task when it was initiated.
C++: mrpt::hwdrivers::CNationalInstrumentsDAQ::writeDigitalOutputTask(size_t, bool, double) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CNationalInstrumentsDAQ::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CNationalInstrumentsDAQ::doRegister() --> void
Data descriptors defined here:
- task_definitions
Data and other attributes defined here:
- TaskDescription = <class 'mrpt.pymrpt.mrpt.hwdrivers.CNationalInstrumentsDAQ.TaskDescription'>
- Each of the tasks to create in CNationalInstrumentsDAQ::initialize().
Refer to the docs on config file formats of
mrpt::hwdrivers::CNationalInstrumentsDAQ to learn on the meaning
of each field. Also, see National Instruments' DAQmx API docs online.
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class COpenNI2Generic(pybind11_builtins.pybind11_object) |
|
An abstract class for accessing OpenNI2 compatible sensors.
This class permits to access several sensors simultaneously. The same
options (resolution, fps, etc.) are used for every sensor.
More references to read:
- http://http://www.openni.org/ |
|
- Method resolution order:
- COpenNI2Generic
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> None
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, width: int, height: int) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, width: int, height: int, fps: float) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, width: int, height: int, fps: float, open_streams_now: bool) -> None
5. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, arg0: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, : mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic
C++: mrpt::hwdrivers::COpenNI2Generic::operator=(const class mrpt::hwdrivers::COpenNI2Generic &) --> class mrpt::hwdrivers::COpenNI2Generic &
- close(...)
- close(*args, **kwargs)
Overloaded function.
1. close(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> None
2. close(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, sensor_id: int) -> None
Close the connection to the sensor (no need to call it manually unless
desired for some reason, since it's called at destructor
C++: mrpt::hwdrivers::COpenNI2Generic::close(unsigned int) --> void
- getColorSensorParam(...)
- getColorSensorParam(*args, **kwargs)
Overloaded function.
1. getColorSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera) -> bool
2. getColorSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera, sensor_id: int) -> bool
C++: mrpt::hwdrivers::COpenNI2Generic::getColorSensorParam(class mrpt::img::TCamera &, unsigned int) const --> bool
- getConnectedDevices(...)
- getConnectedDevices(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> int
Get a list of the connected OpenNI2 sensors.
C++: mrpt::hwdrivers::COpenNI2Generic::getConnectedDevices() --> int
- getDepthSensorParam(...)
- getDepthSensorParam(*args, **kwargs)
Overloaded function.
1. getDepthSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera) -> bool
2. getDepthSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera, sensor_id: int) -> bool
C++: mrpt::hwdrivers::COpenNI2Generic::getDepthSensorParam(class mrpt::img::TCamera &, unsigned int) const --> bool
- getDeviceIDFromSerialNum(...)
- getDeviceIDFromSerialNum(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, SerialRequired: int, sensor_id: int) -> bool
Get the ID of the device corresponding to 'SerialRequired'.
C++: mrpt::hwdrivers::COpenNI2Generic::getDeviceIDFromSerialNum(const unsigned int, int &) const --> bool
- getNextFrameD(...)
- getNextFrameD(*args, **kwargs)
Overloaded function.
1. getNextFrameD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, depth_img_mm: mrpt.pymrpt.mrpt.math.CMatrixDynamic_unsigned_short_t, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool) -> None
2. getNextFrameD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, depth_img_mm: mrpt.pymrpt.mrpt.math.CMatrixDynamic_unsigned_short_t, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool, sensor_id: int) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved depth image (only if
there_is_obs=true).
The timestamp of the capture (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
The index of the sensor accessed.
C++: mrpt::hwdrivers::COpenNI2Generic::getNextFrameD(class mrpt::math::CMatrixDynamic<unsigned short> &, mrpt::Clock::time_point &, bool &, bool &, unsigned int) --> void
- getNextFrameRGB(...)
- getNextFrameRGB(*args, **kwargs)
Overloaded function.
1. getNextFrameRGB(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, rgb_img: mrpt.pymrpt.mrpt.img.CImage, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool) -> None
2. getNextFrameRGB(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, rgb_img: mrpt.pymrpt.mrpt.img.CImage, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool, sensor_id: int) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved RGB image (only if
there_is_obs=true).
The timestamp of the capture (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
The index of the sensor accessed.
C++: mrpt::hwdrivers::COpenNI2Generic::getNextFrameRGB(class mrpt::img::CImage &, mrpt::Clock::time_point &, bool &, bool &, unsigned int) --> void
- getNextFrameRGBD(...)
- getNextFrameRGBD(*args, **kwargs)
Overloaded function.
1. getNextFrameRGBD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, out_obs: mrpt.pymrpt.mrpt.obs.CObservation3DRangeScan, there_is_obs: bool, hardware_error: bool) -> None
2. getNextFrameRGBD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, out_obs: mrpt.pymrpt.mrpt.obs.CObservation3DRangeScan, there_is_obs: bool, hardware_error: bool, sensor_id: int) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved observation (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
The index of the sensor accessed.
doProcess
C++: mrpt::hwdrivers::COpenNI2Generic::getNextFrameRGBD(class mrpt::obs::CObservation3DRangeScan &, bool &, bool &, unsigned int) --> void
- getNumDevices(...)
- getNumDevices(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> int
The number of available devices at initialization
C++: mrpt::hwdrivers::COpenNI2Generic::getNumDevices() const --> int
- isOpen(...)
- isOpen(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, sensor_id: int) -> bool
Whether there is a working connection to the sensor
C++: mrpt::hwdrivers::COpenNI2Generic::isOpen(const unsigned int) const --> bool
- isVerbose(...)
- isVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> bool
C++: mrpt::hwdrivers::COpenNI2Generic::isVerbose() const --> bool
- kill(...)
- kill(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> None
Kill the OpenNI2 driver
start()
C++: mrpt::hwdrivers::COpenNI2Generic::kill() --> void
- open(...)
- open(*args, **kwargs)
Overloaded function.
1. open(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> None
2. open(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, sensor_id: int) -> None
@{
Try to open the camera (all the parameters [resolution,fps,...] must be
set before calling this) - users may also call initialize(), which in
turn calls this method.
Raises an exception upon error.
std::exception A textual description of the error.
C++: mrpt::hwdrivers::COpenNI2Generic::open(unsigned int) --> void
- openDeviceBySerial(...)
- openDeviceBySerial(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, SerialRequired: int) -> int
Open a RGBD device specified by its serial number. This method is a
wrapper for
openDevicesBySerialNum(const std::set<unsigned>& vSerialRequired)
This method requires to open the sensors which are still closed to read
their serial.
C++: mrpt::hwdrivers::COpenNI2Generic::openDeviceBySerial(const unsigned int) --> unsigned int
- setVerbose(...)
- setVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, verbose: bool) -> None
@}
C++: mrpt::hwdrivers::COpenNI2Generic::setVerbose(bool) --> void
- start(...)
- start(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> bool
Open all sensor streams (normally called automatically at constructor,
no need to call it manually).
false on error
kill() to close
C++: mrpt::hwdrivers::COpenNI2Generic::start() --> bool
Static methods defined here:
- getNumInstances(...) from builtins.PyCapsule
- getNumInstances() -> int
Get the number of OpenNI2 cameras currently open via COpenNI2Generic
C++: mrpt::hwdrivers::COpenNI2Generic::getNumInstances() --> int
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class COpenNI2Sensor(CGenericSensor, COpenNI2Generic) |
|
A class for grabing "range images", intensity images (either RGB or IR) and
other information from an OpenNI2 sensor.
This class permits to access several sensors simultaneously. The same
options (resolution, fps, etc.) are used for every sensor.
Configuration and usage:
Data is returned as observations of type mrpt::obs::CObservation3DRangeScan.
See those classes for documentation on their fields.
As with any other CGenericSensor class, the normal sequence of methods to be
called is:
- CGenericSensor::loadConfig() - Or calls to the individual setXXX() to
configure the sensor parameters.
- COpenNI2Sensor::initialize() - to start the communication with the
sensor.
- call COpenNI2Sensor::getNextObservation() for getting the data.
Calibration parameters
In this class we employ the OpenNI2 method to return depth images refered
to the RGB camera. Otherwise we could specify
an accurate transformation of depth images to 3D points, you'll have to
calibrate your RGBD sensor for that, and supply
the following threee pieces of information (default calibration
data will be used otherwise, but they'll be not optimal for all sensors!):
- Camera parameters for the RGB camera. See
COpenNI2Sensor::setCameraParamsIntensity()
- Camera parameters for the depth camera. See
COpenNI2Sensor::setCameraParamsDepth()
- The 3D relative pose of the two cameras. See
COpenNI2Sensor::setRelativePoseIntensityWrtDepth()
See https://www.mrpt.org/Kinect_calibration for a procedure to calibrate
RGBD sensors with an interactive GUI program.
Coordinates convention
The origin of coordinates is the focal point of the depth camera, with the
axes oriented as in the
diagram shown in mrpt::obs::CObservation3DRangeScan. Notice in that
picture that the RGB camera is
assumed to have axes as usual in computer vision, which differ from those
for the depth camera.
The X,Y,Z axes used to report the data from accelerometers coincide with
those of the depth camera
(e.g. the camera standing on a table would have an ACC_Z=-9.8m/s2).
Notice however that, for consistency with stereo cameras, when loading the
calibration parameters from
a configuration file, the left-to-right pose increment is expected as if
both RGB & IR cameras had
their +Z axes pointing forward, +X to the right, +Y downwards (just like
it's the standard in stereo cameras
and in computer vision literature). In other words: the pose stored in
this class uses a different
axes convention for the depth camera than in a stereo camera, so when a
pose L2R is loaded from a calibration file
it's actually converted like:
L2R(this class convention) = CPose3D(0,0,0,-90deg,0deg,-90deg) (+)
L2R(in the config file)
Some general comments
- Depth is grabbed in millimeters
- This sensor can be also used from within rawlog-grabber to grab
datasets
within a robot with more sensors.
- There is no built-in threading support, so if you use this class
manually
(not with-in rawlog-grabber),
the ideal would be to create a thread and continuously request data
from
that thread (see mrpt::system::createThread ).
- The intensity channel default to the RGB images, but it can be changed
with setVideoChannel() to read the IR camera images (useful for calibrating).
- There is a built-in support for an optional preview of the data on a
window, so you don't need to even worry on creating a window to show them.
- This class relies on an embedded version of libfreenect (you do NOT
need
to install it in your system). Thanks guys for the great job!
Converting to 3D point cloud
You can convert the 3D observation into a 3D point cloud with this piece
of code:
Then the point cloud mrpt::maps::CColouredPointsMap can be converted into
an OpenGL object for
rendering with mrpt::maps::CMetricMap::getAs3DObject() or alternatively
with:
Platform-specific comments
For more details, refer to
*>libfreenect documentation:
- Linux: You'll need root privileges to access Kinect. Or, install
MRPT/scripts/51-kinect.rules in /etc/udev/rules.d/ to
allow access to all users.
- Windows:
- Since MRPT 0.9.4 you'll only need to install
*href="http://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/"
>libusb-win32: download and extract the latest
libusb-win32-bin-x.x.x.x.zip
- To install the drivers, read this:
http://openkinect.org/wiki/Getting_Started#Windows
- MacOS: (write me!)
Format of parameters for loading from a .ini file
More references to read:IMPEXP mrpt
- http://http://www.openni.org/ |
|
- Method resolution order:
- COpenNI2Sensor
- CGenericSensor
- COpenNI2Generic
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::COpenNI2Sensor::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> None
- cols(...)
- cols(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> int
Get the col count in the camera images, loaded automatically upon camera
open().
C++: mrpt::hwdrivers::COpenNI2Sensor::cols() const --> size_t
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> None
To be called at a high rate (>XX Hz), this method populates the
internal buffer of received observations.
This method is mainly intended for usage within rawlog-grabber or
similar programs.
For an alternative, see getNextObservation()
This method must throw an exception with a descriptive
message if some critical error is found.
getNextObservation
C++: mrpt::hwdrivers::COpenNI2Sensor::doProcess() --> void
- enableGrab3DPoints(...)
- enableGrab3DPoints(*args, **kwargs)
Overloaded function.
1. enableGrab3DPoints(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> None
2. enableGrab3DPoints(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor, enable: bool) -> None
Enable/disable the grabbing of the 3D point clouds
C++: mrpt::hwdrivers::COpenNI2Sensor::enableGrab3DPoints(bool) --> void
- enableGrabDepth(...)
- enableGrabDepth(*args, **kwargs)
Overloaded function.
1. enableGrabDepth(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> None
2. enableGrabDepth(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor, enable: bool) -> None
Enable/disable the grabbing of the depth channel
C++: mrpt::hwdrivers::COpenNI2Sensor::enableGrabDepth(bool) --> void
- enableGrabRGB(...)
- enableGrabRGB(*args, **kwargs)
Overloaded function.
1. enableGrabRGB(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> None
2. enableGrabRGB(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor, enable: bool) -> None
Enable/disable the grabbing of the RGB channel
C++: mrpt::hwdrivers::COpenNI2Sensor::enableGrabRGB(bool) --> void
- getCameraParamsDepth(...)
- getCameraParamsDepth(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> mrpt.pymrpt.mrpt.img.TCamera
Get a const reference to the depth camera calibration parameters
C++: mrpt::hwdrivers::COpenNI2Sensor::getCameraParamsDepth() const --> const class mrpt::img::TCamera &
- getCameraParamsIntensity(...)
- getCameraParamsIntensity(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> mrpt.pymrpt.mrpt.img.TCamera
Get a const reference to the depth camera calibration parameters
C++: mrpt::hwdrivers::COpenNI2Sensor::getCameraParamsIntensity() const --> const class mrpt::img::TCamera &
- getMaxRange(...)
- getMaxRange(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> float
Get the maximum range (meters) that can be read in the observation field
"rangeImage"
C++: mrpt::hwdrivers::COpenNI2Sensor::getMaxRange() const --> double
- getNextObservation(...)
- getNextObservation(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor, out_obs: mrpt.pymrpt.mrpt.obs.CObservation3DRangeScan, there_is_obs: bool, hardware_error: bool) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved observation (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
doProcess
C++: mrpt::hwdrivers::COpenNI2Sensor::getNextObservation(class mrpt::obs::CObservation3DRangeScan &, bool &, bool &) --> void
- getRelativePoseIntensityWrtDepth(...)
- getRelativePoseIntensityWrtDepth(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> mrpt.pymrpt.mrpt.poses.CPose3D
C++: mrpt::hwdrivers::COpenNI2Sensor::getRelativePoseIntensityWrtDepth() const --> const class mrpt::poses::CPose3D &
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> None
Initializes the 3D camera - should be invoked after calling loadConfig()
or setting the different parameters with the set*() methods.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::COpenNI2Sensor::initialize() --> void
- isGrab3DPointsEnabled(...)
- isGrab3DPointsEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> bool
C++: mrpt::hwdrivers::COpenNI2Sensor::isGrab3DPointsEnabled() const --> bool
- isGrabDepthEnabled(...)
- isGrabDepthEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> bool
C++: mrpt::hwdrivers::COpenNI2Sensor::isGrabDepthEnabled() const --> bool
- isGrabRGBEnabled(...)
- isGrabRGBEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> bool
C++: mrpt::hwdrivers::COpenNI2Sensor::isGrabRGBEnabled() const --> bool
- rows(...)
- rows(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor) -> int
Get the row count in the camera images, loaded automatically upon camera
open().
C++: mrpt::hwdrivers::COpenNI2Sensor::rows() const --> size_t
- setCameraParamsDepth(...)
- setCameraParamsDepth(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor, p: mrpt.pymrpt.mrpt.img.TCamera) -> None
C++: mrpt::hwdrivers::COpenNI2Sensor::setCameraParamsDepth(const class mrpt::img::TCamera &) --> void
- setCameraParamsIntensity(...)
- setCameraParamsIntensity(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor, p: mrpt.pymrpt.mrpt.img.TCamera) -> None
C++: mrpt::hwdrivers::COpenNI2Sensor::setCameraParamsIntensity(const class mrpt::img::TCamera &) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor, directory: str) -> None
Set the path where to save off-rawlog image files (this class DOES take
into account this path).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::COpenNI2Sensor::setPathForExternalImages(const std::string &) --> void
- setRelativePoseIntensityWrtDepth(...)
- setRelativePoseIntensityWrtDepth(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor, p: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
Set the pose of the intensity camera wrt the depth camera
See
mrpt::obs::CObservation3DRangeScan for a 3D diagram of this pose
C++: mrpt::hwdrivers::COpenNI2Sensor::setRelativePoseIntensityWrtDepth(const class mrpt::poses::CPose3D &) --> void
- setSensorIDToOpen(...)
- setSensorIDToOpen(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor, sensor_id: int) -> None
Set the sensor_id of the device to open.
This method must throw an exception when such serial number
is not found among the connected devices.
C++: mrpt::hwdrivers::COpenNI2Sensor::setSensorIDToOpen(const unsigned int) --> void
- setSerialToOpen(...)
- setSerialToOpen(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Sensor, serial: int) -> None
Set the serial number of the device to open.
This method must throw an exception when such serial number
is not found among the connected devices.
C++: mrpt::hwdrivers::COpenNI2Sensor::setSerialToOpen(const unsigned int) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::COpenNI2Sensor::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::COpenNI2Sensor::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Methods inherited from COpenNI2Generic:
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, : mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic
C++: mrpt::hwdrivers::COpenNI2Generic::operator=(const class mrpt::hwdrivers::COpenNI2Generic &) --> class mrpt::hwdrivers::COpenNI2Generic &
- close(...)
- close(*args, **kwargs)
Overloaded function.
1. close(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> None
2. close(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, sensor_id: int) -> None
Close the connection to the sensor (no need to call it manually unless
desired for some reason, since it's called at destructor
C++: mrpt::hwdrivers::COpenNI2Generic::close(unsigned int) --> void
- getColorSensorParam(...)
- getColorSensorParam(*args, **kwargs)
Overloaded function.
1. getColorSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera) -> bool
2. getColorSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera, sensor_id: int) -> bool
C++: mrpt::hwdrivers::COpenNI2Generic::getColorSensorParam(class mrpt::img::TCamera &, unsigned int) const --> bool
- getConnectedDevices(...)
- getConnectedDevices(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> int
Get a list of the connected OpenNI2 sensors.
C++: mrpt::hwdrivers::COpenNI2Generic::getConnectedDevices() --> int
- getDepthSensorParam(...)
- getDepthSensorParam(*args, **kwargs)
Overloaded function.
1. getDepthSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera) -> bool
2. getDepthSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera, sensor_id: int) -> bool
C++: mrpt::hwdrivers::COpenNI2Generic::getDepthSensorParam(class mrpt::img::TCamera &, unsigned int) const --> bool
- getDeviceIDFromSerialNum(...)
- getDeviceIDFromSerialNum(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, SerialRequired: int, sensor_id: int) -> bool
Get the ID of the device corresponding to 'SerialRequired'.
C++: mrpt::hwdrivers::COpenNI2Generic::getDeviceIDFromSerialNum(const unsigned int, int &) const --> bool
- getNextFrameD(...)
- getNextFrameD(*args, **kwargs)
Overloaded function.
1. getNextFrameD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, depth_img_mm: mrpt.pymrpt.mrpt.math.CMatrixDynamic_unsigned_short_t, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool) -> None
2. getNextFrameD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, depth_img_mm: mrpt.pymrpt.mrpt.math.CMatrixDynamic_unsigned_short_t, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool, sensor_id: int) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved depth image (only if
there_is_obs=true).
The timestamp of the capture (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
The index of the sensor accessed.
C++: mrpt::hwdrivers::COpenNI2Generic::getNextFrameD(class mrpt::math::CMatrixDynamic<unsigned short> &, mrpt::Clock::time_point &, bool &, bool &, unsigned int) --> void
- getNextFrameRGB(...)
- getNextFrameRGB(*args, **kwargs)
Overloaded function.
1. getNextFrameRGB(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, rgb_img: mrpt.pymrpt.mrpt.img.CImage, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool) -> None
2. getNextFrameRGB(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, rgb_img: mrpt.pymrpt.mrpt.img.CImage, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool, sensor_id: int) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved RGB image (only if
there_is_obs=true).
The timestamp of the capture (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
The index of the sensor accessed.
C++: mrpt::hwdrivers::COpenNI2Generic::getNextFrameRGB(class mrpt::img::CImage &, mrpt::Clock::time_point &, bool &, bool &, unsigned int) --> void
- getNextFrameRGBD(...)
- getNextFrameRGBD(*args, **kwargs)
Overloaded function.
1. getNextFrameRGBD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, out_obs: mrpt.pymrpt.mrpt.obs.CObservation3DRangeScan, there_is_obs: bool, hardware_error: bool) -> None
2. getNextFrameRGBD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, out_obs: mrpt.pymrpt.mrpt.obs.CObservation3DRangeScan, there_is_obs: bool, hardware_error: bool, sensor_id: int) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved observation (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
The index of the sensor accessed.
doProcess
C++: mrpt::hwdrivers::COpenNI2Generic::getNextFrameRGBD(class mrpt::obs::CObservation3DRangeScan &, bool &, bool &, unsigned int) --> void
- getNumDevices(...)
- getNumDevices(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> int
The number of available devices at initialization
C++: mrpt::hwdrivers::COpenNI2Generic::getNumDevices() const --> int
- isOpen(...)
- isOpen(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, sensor_id: int) -> bool
Whether there is a working connection to the sensor
C++: mrpt::hwdrivers::COpenNI2Generic::isOpen(const unsigned int) const --> bool
- isVerbose(...)
- isVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> bool
C++: mrpt::hwdrivers::COpenNI2Generic::isVerbose() const --> bool
- kill(...)
- kill(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> None
Kill the OpenNI2 driver
start()
C++: mrpt::hwdrivers::COpenNI2Generic::kill() --> void
- open(...)
- open(*args, **kwargs)
Overloaded function.
1. open(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> None
2. open(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, sensor_id: int) -> None
@{
Try to open the camera (all the parameters [resolution,fps,...] must be
set before calling this) - users may also call initialize(), which in
turn calls this method.
Raises an exception upon error.
std::exception A textual description of the error.
C++: mrpt::hwdrivers::COpenNI2Generic::open(unsigned int) --> void
- openDeviceBySerial(...)
- openDeviceBySerial(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, SerialRequired: int) -> int
Open a RGBD device specified by its serial number. This method is a
wrapper for
openDevicesBySerialNum(const std::set<unsigned>& vSerialRequired)
This method requires to open the sensors which are still closed to read
their serial.
C++: mrpt::hwdrivers::COpenNI2Generic::openDeviceBySerial(const unsigned int) --> unsigned int
- setVerbose(...)
- setVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, verbose: bool) -> None
@}
C++: mrpt::hwdrivers::COpenNI2Generic::setVerbose(bool) --> void
- start(...)
- start(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> bool
Open all sensor streams (normally called automatically at constructor,
no need to call it manually).
false on error
kill() to close
C++: mrpt::hwdrivers::COpenNI2Generic::start() --> bool
Static methods inherited from COpenNI2Generic:
- getNumInstances(...) from builtins.PyCapsule
- getNumInstances() -> int
Get the number of OpenNI2 cameras currently open via COpenNI2Generic
C++: mrpt::hwdrivers::COpenNI2Generic::getNumInstances() --> int
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class COpenNI2_RGBD360(CGenericSensor, COpenNI2Generic) |
|
A class for grabing RGBD images from several OpenNI2 sensors. This is used
to obtain larger fields of view using a radial configuration of the sensors.
The same options (resolution, fps, etc.) are used for every sensor.
Configuration and usage:
Data is returned as observations of type mrpt::obs::CObservationRGBD360.
See those classes for documentation on their fields.
As with any other CGenericSensor class, the normal sequence of methods to be
called is:
- CGenericSensor::loadConfig() - Or calls to the individual setXXX() to
configure the sensor parameters.
- COpenNI2_RGBD360::initialize() - to start the communication with the
sensor.
- call COpenNI2_RGBD360::getNextObservation() for getting the data.
Calibration parameters
The reference system for both depth and RGB images provided by each
individual OpenNI2 sensors are referred to the
RGB Camera.
The extrinsic parameters of each RGBD sensor are provided from a
configuration file. This calibration was obtained
using the method reported in [].
Coordinates convention
The origin of coordinates is the focal point of the RGB camera of the
first indexed sensor, with the axes oriented
as in the diagram shown in mrpt::obs::CObservation3DRangeScan. Notice in
that picture that the RGB camera is
assumed to have axes as usual in computer vision, which differ from those
for the depth camera.
The X,Y,Z axes used to report the data from accelerometers coincide with
those of the depth camera
(e.g. the camera standing on a table would have an ACC_Z=-9.8m/s2).
Notice however that, for consistency with stereo cameras, when loading the
calibration parameters from
a configuration file, the left-to-right pose increment is expected as if
both RGB & IR cameras had
their +Z axes pointing forward, +X to the right, +Y downwards (just like
it's the standard in stereo cameras
and in computer vision literature). In other words: the pose stored in
this class uses a different
axes convention for the depth camera than in a stereo camera, so when a
pose L2R is loaded from a calibration file
it's actually converted like:
L2R(this class convention) = CPose3D(0,0,0,-90deg,0deg,-90deg) (+)
L2R(in the config file)
Some general comments
- Depth is grabbed in 10bit depth, and a range N it's converted to
meters
as: range(m) = 0.1236 * tan(N/2842.5 + 1.1863)
- This sensor can be also used from within rawlog-grabber to grab
datasets
within a robot with more sensors.
- There is no built-in threading support, so if you use this class
manually
(not with-in rawlog-grabber),
the ideal would be to create a thread and continuously request data
from
that thread (see mrpt::system::createThread ).
- The intensity channel default to the RGB images, but it can be changed
with setVideoChannel() to read the IR camera images (useful for calibrating).
- There is a built-in support for an optional preview of the data on a
window, so you don't need to even worry on creating a window to show them.
- This class relies on an embedded version of libfreenect (you do NOT
need
to install it in your system). Thanks guys for the great job!
Converting to 3D point cloud
You can convert the 3D observation into a 3D point cloud with this piece
of code:
Then the point cloud mrpt::maps::CColouredPointsMap can be converted into
an OpenGL object for
rendering with mrpt::maps::CMetricMap::getAs3DObject() or alternatively
with:
Platform-specific comments
For more details, refer to
*>libfreenect documentation:
- Linux: You'll need root privileges to access Kinect. Or, install
MRPT/scripts/51-kinect.rules in /etc/udev/rules.d/ to
allow access to all users.
- Windows:
- Since MRPT 0.9.4 you'll only need to install
*href="http://sourceforge.net/projects/libusb-win32/files/libusb-win32-releases/"
>libusb-win32: download and extract the latest
libusb-win32-bin-x.x.x.x.zip
- To install the drivers, read this:
http://openkinect.org/wiki/Getting_Started#Windows
- MacOS: (write me!)
Format of parameters for loading from a .ini file
More references to read:
- http://RGBD360
- http://http://www.openni.org/ |
|
- Method resolution order:
- COpenNI2_RGBD360
- CGenericSensor
- COpenNI2Generic
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::COpenNI2_RGBD360::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360) -> None
To be called at a high rate (>XX Hz), this method populates the
internal buffer of received observations.
This method is mainly intended for usage within rawlog-grabber or
similar programs.
For an alternative, see getNextObservation()
This method must throw an exception with a descriptive
message if some critical error is found.
getNextObservation
C++: mrpt::hwdrivers::COpenNI2_RGBD360::doProcess() --> void
- enableGrab3DPoints(...)
- enableGrab3DPoints(*args, **kwargs)
Overloaded function.
1. enableGrab3DPoints(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360) -> None
2. enableGrab3DPoints(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360, enable: bool) -> None
Enable/disable the grabbing of the 3D point clouds
C++: mrpt::hwdrivers::COpenNI2_RGBD360::enableGrab3DPoints(bool) --> void
- enableGrabDepth(...)
- enableGrabDepth(*args, **kwargs)
Overloaded function.
1. enableGrabDepth(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360) -> None
2. enableGrabDepth(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360, enable: bool) -> None
Enable/disable the grabbing of the depth channel
C++: mrpt::hwdrivers::COpenNI2_RGBD360::enableGrabDepth(bool) --> void
- enableGrabRGB(...)
- enableGrabRGB(*args, **kwargs)
Overloaded function.
1. enableGrabRGB(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360) -> None
2. enableGrabRGB(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360, enable: bool) -> None
Enable/disable the grabbing of the RGB channel
C++: mrpt::hwdrivers::COpenNI2_RGBD360::enableGrabRGB(bool) --> void
- getMaxRange(...)
- getMaxRange(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360) -> float
Get the maximum range (meters) that can be read in the observation field
"rangeImage"
C++: mrpt::hwdrivers::COpenNI2_RGBD360::getMaxRange() const --> double
- getNextObservation(...)
- getNextObservation(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360, out_obs: mrpt.pymrpt.mrpt.obs.CObservationRGBD360, there_is_obs: bool, hardware_error: bool) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved observation (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
doProcess
C++: mrpt::hwdrivers::COpenNI2_RGBD360::getNextObservation(class mrpt::obs::CObservationRGBD360 &, bool &, bool &) --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360) -> None
Initializes the 3D camera - should be invoked after calling loadConfig()
or setting the different parameters with the set*() methods.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::COpenNI2_RGBD360::initialize() --> void
- isGrab3DPointsEnabled(...)
- isGrab3DPointsEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360) -> bool
C++: mrpt::hwdrivers::COpenNI2_RGBD360::isGrab3DPointsEnabled() const --> bool
- isGrabDepthEnabled(...)
- isGrabDepthEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360) -> bool
C++: mrpt::hwdrivers::COpenNI2_RGBD360::isGrabDepthEnabled() const --> bool
- isGrabRGBEnabled(...)
- isGrabRGBEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360) -> bool
C++: mrpt::hwdrivers::COpenNI2_RGBD360::isGrabRGBEnabled() const --> bool
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2_RGBD360, directory: str) -> None
Set the path where to save off-rawlog image files (this class DOES take
into account this path).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::COpenNI2_RGBD360::setPathForExternalImages(const std::string &) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::COpenNI2_RGBD360::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::COpenNI2_RGBD360::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Methods inherited from COpenNI2Generic:
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, : mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic
C++: mrpt::hwdrivers::COpenNI2Generic::operator=(const class mrpt::hwdrivers::COpenNI2Generic &) --> class mrpt::hwdrivers::COpenNI2Generic &
- close(...)
- close(*args, **kwargs)
Overloaded function.
1. close(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> None
2. close(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, sensor_id: int) -> None
Close the connection to the sensor (no need to call it manually unless
desired for some reason, since it's called at destructor
C++: mrpt::hwdrivers::COpenNI2Generic::close(unsigned int) --> void
- getColorSensorParam(...)
- getColorSensorParam(*args, **kwargs)
Overloaded function.
1. getColorSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera) -> bool
2. getColorSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera, sensor_id: int) -> bool
C++: mrpt::hwdrivers::COpenNI2Generic::getColorSensorParam(class mrpt::img::TCamera &, unsigned int) const --> bool
- getConnectedDevices(...)
- getConnectedDevices(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> int
Get a list of the connected OpenNI2 sensors.
C++: mrpt::hwdrivers::COpenNI2Generic::getConnectedDevices() --> int
- getDepthSensorParam(...)
- getDepthSensorParam(*args, **kwargs)
Overloaded function.
1. getDepthSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera) -> bool
2. getDepthSensorParam(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, param: mrpt.pymrpt.mrpt.img.TCamera, sensor_id: int) -> bool
C++: mrpt::hwdrivers::COpenNI2Generic::getDepthSensorParam(class mrpt::img::TCamera &, unsigned int) const --> bool
- getDeviceIDFromSerialNum(...)
- getDeviceIDFromSerialNum(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, SerialRequired: int, sensor_id: int) -> bool
Get the ID of the device corresponding to 'SerialRequired'.
C++: mrpt::hwdrivers::COpenNI2Generic::getDeviceIDFromSerialNum(const unsigned int, int &) const --> bool
- getNextFrameD(...)
- getNextFrameD(*args, **kwargs)
Overloaded function.
1. getNextFrameD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, depth_img_mm: mrpt.pymrpt.mrpt.math.CMatrixDynamic_unsigned_short_t, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool) -> None
2. getNextFrameD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, depth_img_mm: mrpt.pymrpt.mrpt.math.CMatrixDynamic_unsigned_short_t, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool, sensor_id: int) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved depth image (only if
there_is_obs=true).
The timestamp of the capture (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
The index of the sensor accessed.
C++: mrpt::hwdrivers::COpenNI2Generic::getNextFrameD(class mrpt::math::CMatrixDynamic<unsigned short> &, mrpt::Clock::time_point &, bool &, bool &, unsigned int) --> void
- getNextFrameRGB(...)
- getNextFrameRGB(*args, **kwargs)
Overloaded function.
1. getNextFrameRGB(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, rgb_img: mrpt.pymrpt.mrpt.img.CImage, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool) -> None
2. getNextFrameRGB(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, rgb_img: mrpt.pymrpt.mrpt.img.CImage, timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, there_is_obs: bool, hardware_error: bool, sensor_id: int) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved RGB image (only if
there_is_obs=true).
The timestamp of the capture (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
The index of the sensor accessed.
C++: mrpt::hwdrivers::COpenNI2Generic::getNextFrameRGB(class mrpt::img::CImage &, mrpt::Clock::time_point &, bool &, bool &, unsigned int) --> void
- getNextFrameRGBD(...)
- getNextFrameRGBD(*args, **kwargs)
Overloaded function.
1. getNextFrameRGBD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, out_obs: mrpt.pymrpt.mrpt.obs.CObservation3DRangeScan, there_is_obs: bool, hardware_error: bool) -> None
2. getNextFrameRGBD(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, out_obs: mrpt.pymrpt.mrpt.obs.CObservation3DRangeScan, there_is_obs: bool, hardware_error: bool, sensor_id: int) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved observation (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
The index of the sensor accessed.
doProcess
C++: mrpt::hwdrivers::COpenNI2Generic::getNextFrameRGBD(class mrpt::obs::CObservation3DRangeScan &, bool &, bool &, unsigned int) --> void
- getNumDevices(...)
- getNumDevices(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> int
The number of available devices at initialization
C++: mrpt::hwdrivers::COpenNI2Generic::getNumDevices() const --> int
- isOpen(...)
- isOpen(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, sensor_id: int) -> bool
Whether there is a working connection to the sensor
C++: mrpt::hwdrivers::COpenNI2Generic::isOpen(const unsigned int) const --> bool
- isVerbose(...)
- isVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> bool
C++: mrpt::hwdrivers::COpenNI2Generic::isVerbose() const --> bool
- kill(...)
- kill(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> None
Kill the OpenNI2 driver
start()
C++: mrpt::hwdrivers::COpenNI2Generic::kill() --> void
- open(...)
- open(*args, **kwargs)
Overloaded function.
1. open(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> None
2. open(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, sensor_id: int) -> None
@{
Try to open the camera (all the parameters [resolution,fps,...] must be
set before calling this) - users may also call initialize(), which in
turn calls this method.
Raises an exception upon error.
std::exception A textual description of the error.
C++: mrpt::hwdrivers::COpenNI2Generic::open(unsigned int) --> void
- openDeviceBySerial(...)
- openDeviceBySerial(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, SerialRequired: int) -> int
Open a RGBD device specified by its serial number. This method is a
wrapper for
openDevicesBySerialNum(const std::set<unsigned>& vSerialRequired)
This method requires to open the sensors which are still closed to read
their serial.
C++: mrpt::hwdrivers::COpenNI2Generic::openDeviceBySerial(const unsigned int) --> unsigned int
- setVerbose(...)
- setVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic, verbose: bool) -> None
@}
C++: mrpt::hwdrivers::COpenNI2Generic::setVerbose(bool) --> void
- start(...)
- start(self: mrpt.pymrpt.mrpt.hwdrivers.COpenNI2Generic) -> bool
Open all sensor streams (normally called automatically at constructor,
no need to call it manually).
false on error
kill() to close
C++: mrpt::hwdrivers::COpenNI2Generic::start() --> bool
Static methods inherited from COpenNI2Generic:
- getNumInstances(...) from builtins.PyCapsule
- getNumInstances() -> int
Get the number of OpenNI2 cameras currently open via COpenNI2Generic
C++: mrpt::hwdrivers::COpenNI2Generic::getNumInstances() --> int
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CPhidgetInterfaceKitProximitySensors(CGenericSensor) |
| |
- Method resolution order:
- CPhidgetInterfaceKitProximitySensors
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CPhidgetInterfaceKitProximitySensors) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CPhidgetInterfaceKitProximitySensors::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CPhidgetInterfaceKitProximitySensors) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CPhidgetInterfaceKitProximitySensors) -> None
This method should be called periodically. Period depend on the
process_rate in the configuration file.
C++: mrpt::hwdrivers::CPhidgetInterfaceKitProximitySensors::doProcess() --> void
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CPhidgetInterfaceKitProximitySensors, outObservation: mrpt.pymrpt.mrpt.obs.CObservationRange) -> None
This method tries to get a set of range measurements from the IR
sensors.
Will be true if an observation was
sucessfully received.
C++: mrpt::hwdrivers::CPhidgetInterfaceKitProximitySensors::getObservation(class mrpt::obs::CObservationRange &) --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CPhidgetInterfaceKitProximitySensors) -> None
Initialize the sensor according to the parameters previously read in the
configuration file.
throw an exception if the board could not be found.
throw an exception if the process rate can't be set on one of
the board channel.
C++: mrpt::hwdrivers::CPhidgetInterfaceKitProximitySensors::initialize() --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CPhidgetInterfaceKitProximitySensors::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CPhidgetInterfaceKitProximitySensors::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CPtuBase(pybind11_builtins.pybind11_object) |
|
This class implements initialization and communication methods to
control a generic Pan and Tilt Unit, working in radians. |
|
- Method resolution order:
- CPtuBase
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(self, /, *args, **kwargs)
- Initialize self. See help(type(self)) for accurate signature.
- aWait(...)
- aWait(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> bool
Wait the finish of the last position command to
continue accept commands
C++: mrpt::hwdrivers::CPtuBase::aWait() --> bool
- absPosQ(...)
- absPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, nRad: float) -> bool
Query position in absolute terms
C++: mrpt::hwdrivers::CPtuBase::absPosQ(char, double &) --> bool
- aceleration(...)
- aceleration(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, RadSec2: float) -> bool
Specification (de/a)celeration in turn
C++: mrpt::hwdrivers::CPtuBase::aceleration(char, double) --> bool
- acelerationQ(...)
- acelerationQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, RadSec2: float) -> bool
Query (de/a)celeration in turn
C++: mrpt::hwdrivers::CPtuBase::acelerationQ(char, double &) --> bool
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, : mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> mrpt.pymrpt.mrpt.hwdrivers.CPtuBase
C++: mrpt::hwdrivers::CPtuBase::operator=(const class mrpt::hwdrivers::CPtuBase &) --> class mrpt::hwdrivers::CPtuBase &
- baseSpeed(...)
- baseSpeed(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, RadSec: float) -> bool
Specification of velocity to which start and finish
the (de/a)celeration
C++: mrpt::hwdrivers::CPtuBase::baseSpeed(char, double) --> bool
- baseSpeedQ(...)
- baseSpeedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, RadSec: float) -> bool
Query velocity to which start and finish
the (de/a)celeration
C++: mrpt::hwdrivers::CPtuBase::baseSpeedQ(char, double &) --> bool
- changeMotionDir(...)
- changeMotionDir(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> bool
C++: mrpt::hwdrivers::CPtuBase::changeMotionDir() --> bool
- checkErrors(...)
- checkErrors(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> int
Check errors, returns 0 if there are not errors or error code otherwise
*
C++: mrpt::hwdrivers::CPtuBase::checkErrors() --> int
- clearErrors(...)
- clearErrors(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> None
Clear errors *
C++: mrpt::hwdrivers::CPtuBase::clearErrors() --> void
- close(...)
- close(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> None
Close Connection with serial port
C++: mrpt::hwdrivers::CPtuBase::close() --> void
- echoMode(...)
- echoMode(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, mode: bool) -> bool
Enable/Disable echo response with command.
C++: mrpt::hwdrivers::CPtuBase::echoMode(bool) --> bool
- echoModeQ(...)
- echoModeQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, mode: bool) -> bool
Query echo mode
C++: mrpt::hwdrivers::CPtuBase::echoModeQ(bool &) --> bool
- enableLimits(...)
- enableLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, set: bool) -> bool
Enable/Disable movement limits
C++: mrpt::hwdrivers::CPtuBase::enableLimits(bool) --> bool
- enableLimitsQ(...)
- enableLimitsQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, enable: bool) -> bool
Query if exist movement limits
C++: mrpt::hwdrivers::CPtuBase::enableLimitsQ(bool &) --> bool
- halt(...)
- halt(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str) -> bool
Inmediately stop
C++: mrpt::hwdrivers::CPtuBase::halt(char) --> bool
- haltAll(...)
- haltAll(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> bool
Inmediately stop all
C++: mrpt::hwdrivers::CPtuBase::haltAll() --> bool
- init(...)
- init(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, port: str) -> bool
PTU and serial port initialization
C++: mrpt::hwdrivers::CPtuBase::init(const std::string &) --> bool
- inmediateExecution(...)
- inmediateExecution(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, set: bool) -> bool
With I mode (default) instructs pan-tilt unit to immediately
execute positional commands.
In S mode instructs pan-tilt unit to execute positional commands
only when an Await Position Command Completion command is executed
or when put into Immediate Execution Mode.
C++: mrpt::hwdrivers::CPtuBase::inmediateExecution(bool) --> bool
- lowerSpeed(...)
- lowerSpeed(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, RadSec: float) -> bool
Specification of velocity lower limit
C++: mrpt::hwdrivers::CPtuBase::lowerSpeed(char, double) --> bool
- lowerSpeedQ(...)
- lowerSpeedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, RadSec: float) -> bool
Query velocity lower limit
C++: mrpt::hwdrivers::CPtuBase::lowerSpeedQ(char, double &) --> bool
- maxPosQ(...)
- maxPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, nRad: float) -> bool
Query max movement limit of a axis in absolute terms
C++: mrpt::hwdrivers::CPtuBase::maxPosQ(char, double &) --> bool
- minPosQ(...)
- minPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, nRad: float) -> bool
Query min movement limit of a axis in absolute terms
C++: mrpt::hwdrivers::CPtuBase::minPosQ(char, double &) --> bool
- moveToAbsPos(...)
- moveToAbsPos(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, nRad: float) -> bool
Specification of positions in absolute terms
C++: mrpt::hwdrivers::CPtuBase::moveToAbsPos(char, double) --> bool
- moveToOffPos(...)
- moveToOffPos(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, nRad: float) -> bool
Specify desired axis position as an offset from the current position.
This method recives the number of radians to move.
C++: mrpt::hwdrivers::CPtuBase::moveToOffPos(char, double) --> bool
- nversion(...)
- nversion(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, nVersion: float) -> None
Number of version
C++: mrpt::hwdrivers::CPtuBase::nversion(double &) --> void
- offPosQ(...)
- offPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, nRad: float) -> bool
Query position in relative terms
C++: mrpt::hwdrivers::CPtuBase::offPosQ(char, double &) --> bool
- posToRad(...)
- posToRad(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, nPos: int) -> float
To obtain the number of radians for a discrete value
C++: mrpt::hwdrivers::CPtuBase::posToRad(char, long) --> double
- powerMode(...)
- powerMode(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, transit: bool, mode: str) -> bool
Specification of power mode
C++: mrpt::hwdrivers::CPtuBase::powerMode(bool, char) --> bool
- powerModeQ(...)
- powerModeQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, transit: bool, mode: str) -> bool
Query power mode
C++: mrpt::hwdrivers::CPtuBase::powerModeQ(bool, char &) --> bool
- radError(...)
- radError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, nRadMoved: float) -> float
To obtains the mistake for use discrete values when the movement
is expressed in radians. Parameters are the absolute position in
radians and the axis desired
C++: mrpt::hwdrivers::CPtuBase::radError(char, double) --> double
- radToPos(...)
- radToPos(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, nRad: float) -> int
To obtain the discrete value for a number of radians
C++: mrpt::hwdrivers::CPtuBase::radToPos(char, double) --> long
- rangeMeasure(...)
- rangeMeasure(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> bool
Search limit forward
C++: mrpt::hwdrivers::CPtuBase::rangeMeasure() --> bool
- reset(...)
- reset(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> bool
Reset PTU to initial state
C++: mrpt::hwdrivers::CPtuBase::reset() --> bool
- resolution(...)
- resolution(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> bool
Query the pan and tilt resolution per position moved
and initialize local atributes
C++: mrpt::hwdrivers::CPtuBase::resolution() --> bool
- restoreDefaults(...)
- restoreDefaults(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> bool
Restore default values
C++: mrpt::hwdrivers::CPtuBase::restoreDefaults() --> bool
- restoreFactoryDefaults(...)
- restoreFactoryDefaults(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> bool
Restore factory default values
C++: mrpt::hwdrivers::CPtuBase::restoreFactoryDefaults() --> bool
- save(...)
- save(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase) -> bool
Save or restart default values
C++: mrpt::hwdrivers::CPtuBase::save() --> bool
- scan(...)
- scan(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, wait: int, initial: float, final: float, RadPre: float) -> bool
Performs a scan in the axis indicated and whit the precision desired.
{Pan or Till}
{Wait time betwen commands}
{initial position}
{final position}
{radians precision for the scan}
C++: mrpt::hwdrivers::CPtuBase::scan(char, int, float, float, double) --> bool
- setLimits(...)
- setLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, l: float, u: float) -> bool
Set limits of movement
C++: mrpt::hwdrivers::CPtuBase::setLimits(char, double &, double &) --> bool
- speed(...)
- speed(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, RadSec: float) -> bool
Specification of turn speed
C++: mrpt::hwdrivers::CPtuBase::speed(char, double) --> bool
- speedQ(...)
- speedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, RadSec: float) -> bool
Query turn speed
C++: mrpt::hwdrivers::CPtuBase::speedQ(char, double &) --> bool
- status(...)
- status(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, rad: float) -> float
Check if ptu is moving
C++: mrpt::hwdrivers::CPtuBase::status(double &) --> double
- upperSpeed(...)
- upperSpeed(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, RadSec: float) -> bool
Specification of velocity upper limit
C++: mrpt::hwdrivers::CPtuBase::upperSpeed(char, double) --> bool
- upperSpeedQ(...)
- upperSpeedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, axis: str, RadSec: float) -> bool
Query velocity upper limit
C++: mrpt::hwdrivers::CPtuBase::upperSpeedQ(char, double &) --> bool
- verbose(...)
- verbose(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, set: bool) -> bool
Set verbose.
Example of response with FV (verbose) active:
FV *
PP * Current pan position is 0
Example of response with FT (terse) active:
FT *
PP * 0
C++: mrpt::hwdrivers::CPtuBase::verbose(bool) --> bool
- verboseQ(...)
- verboseQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, modo: bool) -> bool
Query verbose mode
C++: mrpt::hwdrivers::CPtuBase::verboseQ(bool &) --> bool
- version(...)
- version(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuBase, nVersion: str) -> bool
Version and CopyRights
C++: mrpt::hwdrivers::CPtuBase::version(char *) --> bool
Data descriptors defined here:
- panResolution
- tiltResolution
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CPtuDPerception(CPtuBase) |
|
This class implements initialization and communication methods to
control a Pan and Tilt Unit model PTU-46-17.5, working in radians . |
|
- Method resolution order:
- CPtuDPerception
- CPtuBase
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> None
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, arg0: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> None
3. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, arg0: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> None
- aWait(...)
- aWait(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
Wait the finish of the last position command to
continue accept commands
C++: mrpt::hwdrivers::CPtuDPerception::aWait() --> bool
- absPosQ(...)
- absPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, nRad: float) -> bool
Query position in absolute terms
C++: mrpt::hwdrivers::CPtuDPerception::absPosQ(char, double &) --> bool
- aceleration(...)
- aceleration(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, radSec2: float) -> bool
Specification (de/a)celeration in turn
C++: mrpt::hwdrivers::CPtuDPerception::aceleration(char, double) --> bool
- acelerationQ(...)
- acelerationQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, radSec2: float) -> bool
Query (de/a)celeration in turn
C++: mrpt::hwdrivers::CPtuDPerception::acelerationQ(char, double &) --> bool
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, : mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception
C++: mrpt::hwdrivers::CPtuDPerception::operator=(const class mrpt::hwdrivers::CPtuDPerception &) --> class mrpt::hwdrivers::CPtuDPerception &
- baseSpeed(...)
- baseSpeed(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, radSec: float) -> bool
Specification of velocity to which start and finish
the (de/a)celeration
C++: mrpt::hwdrivers::CPtuDPerception::baseSpeed(char, double) --> bool
- baseSpeedQ(...)
- baseSpeedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, radSec: float) -> bool
Query velocity to which start and finish
the (de/a)celeration
C++: mrpt::hwdrivers::CPtuDPerception::baseSpeedQ(char, double &) --> bool
- changeMotionDir(...)
- changeMotionDir(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::changeMotionDir() --> bool
- checkErrors(...)
- checkErrors(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> int
Check errors, returns 0 if there are not errors or error code in
otherwise
Error codes:
C++: mrpt::hwdrivers::CPtuDPerception::checkErrors() --> int
- clearErrors(...)
- clearErrors(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> None
Clear errors *
C++: mrpt::hwdrivers::CPtuDPerception::clearErrors() --> void
- close(...)
- close(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> None
Close Connection with serial port
C++: mrpt::hwdrivers::CPtuDPerception::close() --> void
- comError(...)
- comError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::comError() --> bool
- echoMode(...)
- echoMode(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, mode: bool) -> bool
Enable/Disable echo response with command.
C++: mrpt::hwdrivers::CPtuDPerception::echoMode(bool) --> bool
- echoModeQ(...)
- echoModeQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, mode: bool) -> bool
Query echo mode
C++: mrpt::hwdrivers::CPtuDPerception::echoModeQ(bool &) --> bool
- enableLimits(...)
- enableLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, set: bool) -> bool
Enable/Disable movement limits
C++: mrpt::hwdrivers::CPtuDPerception::enableLimits(bool) --> bool
- enableLimitsQ(...)
- enableLimitsQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, enable: bool) -> bool
Query if exist movement limits
C++: mrpt::hwdrivers::CPtuDPerception::enableLimitsQ(bool &) --> bool
- halt(...)
- halt(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str) -> bool
Inmediately stop
C++: mrpt::hwdrivers::CPtuDPerception::halt(char) --> bool
- haltAll(...)
- haltAll(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
Inmediately stop all
C++: mrpt::hwdrivers::CPtuDPerception::haltAll() --> bool
- illegalCommandError(...)
- illegalCommandError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::illegalCommandError() --> bool
- init(...)
- init(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, port: str) -> bool
PTU and serial port initialization
C++: mrpt::hwdrivers::CPtuDPerception::init(const std::string &) --> bool
- initError(...)
- initError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::initError() --> bool
- inmediateExecution(...)
- inmediateExecution(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, set: bool) -> bool
With I mode (default) instructs pan-tilt unit to immediately
execute positional commands.
In S mode instructs pan-tilt unit to execute positional commands
only when an Await Position Command Completion command is executed
or when put into Immediate Execution Mode.
C++: mrpt::hwdrivers::CPtuDPerception::inmediateExecution(bool) --> bool
- lowerSpeed(...)
- lowerSpeed(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, radSec: float) -> bool
Specification of velocity lower limit
C++: mrpt::hwdrivers::CPtuDPerception::lowerSpeed(char, double) --> bool
- lowerSpeedQ(...)
- lowerSpeedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, radSec: float) -> bool
Query velocity lower limit
C++: mrpt::hwdrivers::CPtuDPerception::lowerSpeedQ(char, double &) --> bool
- maxLimitError(...)
- maxLimitError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::maxLimitError() --> bool
- maxPosQ(...)
- maxPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, nRad: float) -> bool
Query max movement limit of a axis in absolute terms
C++: mrpt::hwdrivers::CPtuDPerception::maxPosQ(char, double &) --> bool
- minLimitError(...)
- minLimitError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::minLimitError() --> bool
- minPosQ(...)
- minPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, nRad: float) -> bool
Query min movement limit of a axis in absolute terms
C++: mrpt::hwdrivers::CPtuDPerception::minPosQ(char, double &) --> bool
- moveToAbsPos(...)
- moveToAbsPos(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, nRad: float) -> bool
Specification of positions in absolute terms
C++: mrpt::hwdrivers::CPtuDPerception::moveToAbsPos(char, double) --> bool
- moveToOffPos(...)
- moveToOffPos(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, nRad: float) -> bool
Specify desired axis position as an offset from the current position.
This method recives the number of radians to move.
C++: mrpt::hwdrivers::CPtuDPerception::moveToOffPos(char, double) --> bool
- noError(...)
- noError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::noError() --> bool
- nversion(...)
- nversion(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, nVersion: float) -> None
Number of version
C++: mrpt::hwdrivers::CPtuDPerception::nversion(double &) --> void
- offPosQ(...)
- offPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, nRad: float) -> bool
Query position in relative terms
C++: mrpt::hwdrivers::CPtuDPerception::offPosQ(char, double &) --> bool
- outOfRange(...)
- outOfRange(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::outOfRange() --> bool
- panHitError(...)
- panHitError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::panHitError() --> bool
- panTiltHitError(...)
- panTiltHitError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::panTiltHitError() --> bool
- posToRad(...)
- posToRad(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, nPos: int) -> float
To obtain the number of radians for a discrete value
C++: mrpt::hwdrivers::CPtuDPerception::posToRad(char, long) --> double
- powerMode(...)
- powerMode(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, transit: bool, mode: str) -> bool
Specification of power mode
C++: mrpt::hwdrivers::CPtuDPerception::powerMode(bool, char) --> bool
- powerModeQ(...)
- powerModeQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, transit: bool, mode: str) -> bool
Query power mode
C++: mrpt::hwdrivers::CPtuDPerception::powerModeQ(bool, char &) --> bool
- radError(...)
- radError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, nRadMoved: float) -> float
To obtains the mistake for use discrete values when the movement
is expressed in radians. Parameters are the absolute position in
radians and the axis desired
C++: mrpt::hwdrivers::CPtuDPerception::radError(char, double) --> double
- radToPos(...)
- radToPos(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, nRad: float) -> int
To obtain the discrete value for a number of radians
C++: mrpt::hwdrivers::CPtuDPerception::radToPos(char, double) --> long
- rangeMeasure(...)
- rangeMeasure(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
Search limit forward
C++: mrpt::hwdrivers::CPtuDPerception::rangeMeasure() --> bool
- reset(...)
- reset(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
Reset PTU to initial state
C++: mrpt::hwdrivers::CPtuDPerception::reset() --> bool
- resolution(...)
- resolution(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
Query the pan and tilt resolution per position moved
and initialize local atributes
C++: mrpt::hwdrivers::CPtuDPerception::resolution() --> bool
- restoreDefaults(...)
- restoreDefaults(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
Restore default values
C++: mrpt::hwdrivers::CPtuDPerception::restoreDefaults() --> bool
- restoreFactoryDefaults(...)
- restoreFactoryDefaults(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
Restore factory default values
C++: mrpt::hwdrivers::CPtuDPerception::restoreFactoryDefaults() --> bool
- save(...)
- save(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
Save or restart default values
C++: mrpt::hwdrivers::CPtuDPerception::save() --> bool
- scan(...)
- scan(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, wait: int, initial: float, final: float, radPre: float) -> bool
Performs a scan in the axis indicated and whit the precision desired.
{Pan or Till}
{Wait time betwen commands}
{initial position}
{final position}
{radians precision for the scan}
C++: mrpt::hwdrivers::CPtuDPerception::scan(char, int, float, float, double) --> bool
- setLimits(...)
- setLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, l: float, u: float) -> bool
Set limits of movement
C++: mrpt::hwdrivers::CPtuDPerception::setLimits(char, double &, double &) --> bool
- speed(...)
- speed(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, radSec: float) -> bool
Specification of turn speed
C++: mrpt::hwdrivers::CPtuDPerception::speed(char, double) --> bool
- speedQ(...)
- speedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, radSec: float) -> bool
Query turn speed
C++: mrpt::hwdrivers::CPtuDPerception::speedQ(char, double &) --> bool
- status(...)
- status(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, rad: float) -> float
Check if ptu is moving
C++: mrpt::hwdrivers::CPtuDPerception::status(double &) --> double
- tiltHitError(...)
- tiltHitError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::tiltHitError() --> bool
- timeoutError(...)
- timeoutError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::timeoutError() --> bool
- unExpectedError(...)
- unExpectedError(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception) -> bool
C++: mrpt::hwdrivers::CPtuDPerception::unExpectedError() --> bool
- upperSpeed(...)
- upperSpeed(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, radSec: float) -> bool
Specification of velocity upper limit
C++: mrpt::hwdrivers::CPtuDPerception::upperSpeed(char, double) --> bool
- upperSpeedQ(...)
- upperSpeedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, axis: str, radSec: float) -> bool
Query velocity upper limit
C++: mrpt::hwdrivers::CPtuDPerception::upperSpeedQ(char, double &) --> bool
- verbose(...)
- verbose(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, set: bool) -> bool
Set verbose.
Example of response with FV (verbose) active:
FV *
PP * Current pan position is 0
Example of response with FT (terse) active:
FT *
PP * 0
C++: mrpt::hwdrivers::CPtuDPerception::verbose(bool) --> bool
- verboseQ(...)
- verboseQ(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, modo: bool) -> bool
Query verbose mode
C++: mrpt::hwdrivers::CPtuDPerception::verboseQ(bool &) --> bool
- version(...)
- version(self: mrpt.pymrpt.mrpt.hwdrivers.CPtuDPerception, nVersion: str) -> bool
Version and CopyRights
C++: mrpt::hwdrivers::CPtuDPerception::version(char *) --> bool
Data descriptors defined here:
- nError
Data descriptors inherited from CPtuBase:
- panResolution
- tiltResolution
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CRaePID(CGenericSensor) |
|
This class implements a driver for the RAE Systems gas PhotoIonization
Detector (PID) (Tested on a MiniRAE Lite)
The sensor is accessed via a standard (or USB) serial port.
Refer to the manufacturer website for details on this sensor:
http://www.raesystems.com/products/minirae-lite
mrpt::obs::CObservationGasSensors |
|
- Method resolution order:
- CRaePID
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CRaePID::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID) -> None
C++: mrpt::hwdrivers::CRaePID::doProcess() --> void
- errorStatus(...)
- errorStatus(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID, errorString: str) -> bool
Get error status (true if an error was found). errorString shows the
error code (see PID documentation)
C++: mrpt::hwdrivers::CRaePID::errorStatus(std::string &) --> bool
- getFirmware(...)
- getFirmware(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID) -> str
Get firmware version string.
C++: mrpt::hwdrivers::CRaePID::getFirmware() --> std::string
- getFullInfo(...)
- getFullInfo(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID) -> mrpt.pymrpt.mrpt.obs.CObservationGasSensors
Get full reading (see PID documentation). In the returned observation,
each reding is saved as a separate e-nose
C++: mrpt::hwdrivers::CRaePID::getFullInfo() --> class mrpt::obs::CObservationGasSensors
- getLimits(...)
- getLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID, min: float, max: float) -> None
Get alarm limits
C++: mrpt::hwdrivers::CRaePID::getLimits(float &, float &) --> void
- getModel(...)
- getModel(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID) -> str
Get model string.
C++: mrpt::hwdrivers::CRaePID::getModel() --> std::string
- getName(...)
- getName(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID) -> str
Get name string.
C++: mrpt::hwdrivers::CRaePID::getName() --> std::string
- getSerialNumber(...)
- getSerialNumber(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID) -> str
Get serial number as a string.
C++: mrpt::hwdrivers::CRaePID::getSerialNumber() --> std::string
- loadConfig_sensorSpecific(...)
- loadConfig_sensorSpecific(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
C++: mrpt::hwdrivers::CRaePID::loadConfig_sensorSpecific(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- switchPower(...)
- switchPower(self: mrpt.pymrpt.mrpt.hwdrivers.CRaePID) -> bool
Switch power on or off (returns true if turned on).
C++: mrpt::hwdrivers::CRaePID::switchPower() --> bool
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CRaePID::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CRaePID::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
This method can or cannot be implemented in the derived class, depending
on the need for it.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CGenericSensor::initialize() --> void
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CRoboPeakLidar(C2DRangeFinderAbstract) |
|
Interfaces a Robo Peak LIDAR laser scanner.
See the example "samples/RoboPeakLidar_laser_test" and the application
"rawlog-grabber" for a ready-to-use application to gather data from the
scanner.
Class introduced in MRPT 1.2.2 |
|
- Method resolution order:
- CRoboPeakLidar
- C2DRangeFinderAbstract
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CRoboPeakLidar) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CRoboPeakLidar::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CRoboPeakLidar) -> None
- disconnect(...)
- disconnect(self: mrpt.pymrpt.mrpt.hwdrivers.CRoboPeakLidar) -> None
Closes the comms with the laser. Shouldn't have to be directly needed by
the user
C++: mrpt::hwdrivers::CRoboPeakLidar::disconnect() --> void
- doProcessSimple(...)
- doProcessSimple(self: mrpt.pymrpt.mrpt.hwdrivers.CRoboPeakLidar, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
C++: mrpt::hwdrivers::CRoboPeakLidar::doProcessSimple(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- getDeviceHealth(...)
- getDeviceHealth(self: mrpt.pymrpt.mrpt.hwdrivers.CRoboPeakLidar) -> bool
Returns true if the device is connected & operative
C++: mrpt::hwdrivers::CRoboPeakLidar::getDeviceHealth() const --> bool
- getSerialPort(...)
- getSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CRoboPeakLidar) -> str
Returns the currently set serial port
setSerialPort
C++: mrpt::hwdrivers::CRoboPeakLidar::getSerialPort() --> const std::string
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CRoboPeakLidar) -> None
Attempts to connect and turns the laser on. Raises an exception on
error.
C++: mrpt::hwdrivers::CRoboPeakLidar::initialize() --> void
- setSerialPort(...)
- setSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CRoboPeakLidar, port_name: str) -> None
If set to non-empty, the serial port will be attempted to be opened
automatically when this class is first used to request data from the
laser.
C++: mrpt::hwdrivers::CRoboPeakLidar::setSerialPort(const std::string &) --> void
- turnOff(...)
- turnOff(self: mrpt.pymrpt.mrpt.hwdrivers.CRoboPeakLidar) -> bool
See base class docs
C++: mrpt::hwdrivers::CRoboPeakLidar::turnOff() --> bool
- turnOn(...)
- turnOn(self: mrpt.pymrpt.mrpt.hwdrivers.CRoboPeakLidar) -> bool
See base class docs
C++: mrpt::hwdrivers::CRoboPeakLidar::turnOn() --> bool
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CRoboPeakLidar::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CRoboPeakLidar::doRegister() --> void
Methods inherited from C2DRangeFinderAbstract:
- bindIO(...)
- bindIO(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, streamIO: mrpt.pymrpt.mrpt.io.CStream) -> None
Binds the object to a given I/O channel.
The stream object must not be deleted before the destruction of this
class.
comms::CSerialPort
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::bindIO(const class std::shared_ptr<class mrpt::io::CStream> &) --> void
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
Main method for a CGenericSensor
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::doProcess() --> void
- getEstimatedScanPeriod(...)
- getEstimatedScanPeriod(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> float
Returns the empirical, filtered estimation for the period at which whole
scans are being returned from calls to doProcessSimple()
: Units: seconds
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getEstimatedScanPeriod() const --> double
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
Get the last observation from the sensor, if available, and unmarks it
as being "the last one" (thus a new scan must arrive or subsequent calls
will find no new observations).
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getObservation(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- showPreview(...)
- showPreview(*args, **kwargs)
Overloaded function.
1. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
2. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, enable: bool) -> None
Enables GUI visualization in real-time
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::showPreview(bool) --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CSICKTim561Eth(C2DRangeFinderAbstract) |
| |
- Method resolution order:
- CSICKTim561Eth
- C2DRangeFinderAbstract
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CSICKTim561Eth) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CSICKTim561Eth::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CSICKTim561Eth) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CSICKTim561Eth, arg0: str) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CSICKTim561Eth, _ip: str, _port: int) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CSICKTim561Eth) -> None
This method must be called periodically. Period depend on the
process_rate in the configuration file.
C++: mrpt::hwdrivers::CSICKTim561Eth::doProcess() --> void
- doProcessSimple(...)
- doProcessSimple(self: mrpt.pymrpt.mrpt.hwdrivers.CSICKTim561Eth, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
This function acquire a laser scan from the device. If an error occured,
hardwareError will be set to true.
The new laser scan will be stored in the outObservation argument.
This method throw exception if the frame received from the
TIM 561 contain the following bad parameters:
* Status is not OK
* Data in the scan aren't DIST1(may be RSSIx or DIST2).
C++: mrpt::hwdrivers::CSICKTim561Eth::doProcessSimple(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CSICKTim561Eth) -> None
Initialize the sensor according to the parameters previously read
in the configuration file.
C++: mrpt::hwdrivers::CSICKTim561Eth::initialize() --> void
- rebootDev(...)
- rebootDev(self: mrpt.pymrpt.mrpt.hwdrivers.CSICKTim561Eth) -> bool
This method could be called manually to reboot the device.
C++: mrpt::hwdrivers::CSICKTim561Eth::rebootDev() --> bool
- setSensorPose(...)
- setSensorPose(self: mrpt.pymrpt.mrpt.hwdrivers.CSICKTim561Eth, _pose: mrpt.pymrpt.mrpt.poses.CPose3D) -> None
A method to set the sensor pose on the robot.
Equivalent to setting the sensor pose via loading it from a config file.
C++: mrpt::hwdrivers::CSICKTim561Eth::setSensorPose(const class mrpt::poses::CPose3D &) --> void
- turnOff(...)
- turnOff(self: mrpt.pymrpt.mrpt.hwdrivers.CSICKTim561Eth) -> bool
This method could be called manually to stop communication with the
device. Method is also called by destructor.
C++: mrpt::hwdrivers::CSICKTim561Eth::turnOff() --> bool
- turnOn(...)
- turnOn(self: mrpt.pymrpt.mrpt.hwdrivers.CSICKTim561Eth) -> bool
This method must be called before trying to get a laser scan.
C++: mrpt::hwdrivers::CSICKTim561Eth::turnOn() --> bool
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CSICKTim561Eth::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CSICKTim561Eth::doRegister() --> void
Methods inherited from C2DRangeFinderAbstract:
- bindIO(...)
- bindIO(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, streamIO: mrpt.pymrpt.mrpt.io.CStream) -> None
Binds the object to a given I/O channel.
The stream object must not be deleted before the destruction of this
class.
comms::CSerialPort
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::bindIO(const class std::shared_ptr<class mrpt::io::CStream> &) --> void
- getEstimatedScanPeriod(...)
- getEstimatedScanPeriod(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> float
Returns the empirical, filtered estimation for the period at which whole
scans are being returned from calls to doProcessSimple()
: Units: seconds
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getEstimatedScanPeriod() const --> double
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
Get the last observation from the sensor, if available, and unmarks it
as being "the last one" (thus a new scan must arrive or subsequent calls
will find no new observations).
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getObservation(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- showPreview(...)
- showPreview(*args, **kwargs)
Overloaded function.
1. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
2. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, enable: bool) -> None
Enables GUI visualization in real-time
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::showPreview(bool) --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CSickLaserSerial(C2DRangeFinderAbstract) |
|
This "software driver" implements the communication protocol for interfacing
a SICK LMS 2XX laser scanners through a standard RS232 serial port (or a
USB2SERIAL converter).
The serial port is opened upon the first call to "doProcess" or
"initialize", so you must call "loadConfig" before
this, or manually call "setSerialPort". Another alternative is to call the
base class method C2DRangeFinderAbstract::bindIO,
but the "setSerialPort" interface is probably much simpler to use.
For an example of usage see the example in
"samples/SICK_laser_serial_test".
See also the example configuration file for rawlog-grabber in
"share/mrpt/config_files/rawlog-grabber".
C2DRangeFinderAbstract |
|
- Method resolution order:
- CSickLaserSerial
- C2DRangeFinderAbstract
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CSickLaserSerial::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial) -> None
- doProcessSimple(...)
- doProcessSimple(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
Specific laser scanner "software drivers" must process here new data
from the I/O stream, and, if a whole scan has arrived, return it.
This method will be typically called in a different thread than other
methods, and will be called in a timely fashion.
C++: mrpt::hwdrivers::CSickLaserSerial::doProcessSimple(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- getBaudRate(...)
- getBaudRate(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial) -> int
setBaudRate
C++: mrpt::hwdrivers::CSickLaserSerial::getBaudRate() const --> int
- getCurrentConnectTry(...)
- getCurrentConnectTry(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial) -> int
If performing several tries in ::initialize(), this is the current try
loop number.
C++: mrpt::hwdrivers::CSickLaserSerial::getCurrentConnectTry() const --> unsigned int
- getScanFOV(...)
- getScanFOV(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial) -> int
C++: mrpt::hwdrivers::CSickLaserSerial::getScanFOV() const --> int
- getScanResolution(...)
- getScanResolution(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial) -> int
C++: mrpt::hwdrivers::CSickLaserSerial::getScanResolution() const --> int
- getSerialPort(...)
- getSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial) -> str
setSerialPort
C++: mrpt::hwdrivers::CSickLaserSerial::getSerialPort() const --> std::string
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial) -> None
Set-up communication with the laser.
Called automatically by rawlog-grabber.
If used manually, call after "loadConfig" and before "doProcess".
In this class this method does nothing, since the communications are
setup at the first try from "doProcess" or "doProcessSimple".
C++: mrpt::hwdrivers::CSickLaserSerial::initialize() --> void
- setBaudRate(...)
- setBaudRate(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial, baud: int) -> None
Changes the serial port baud rate (call prior to 'doProcess'); valid
values are 9600,38400 and 500000.
This is not needed if the configuration is loaded with "loadConfig".
getBaudRate
C++: mrpt::hwdrivers::CSickLaserSerial::setBaudRate(int) --> void
- setMillimeterMode(...)
- setMillimeterMode(*args, **kwargs)
Overloaded function.
1. setMillimeterMode(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial) -> None
2. setMillimeterMode(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial, mm_mode: bool) -> None
Enables/Disables the millimeter mode, with a greater accuracy but a
shorter range (default=false)
(call prior to 'doProcess') This is not needed if the configuration is
loaded with "loadConfig".
C++: mrpt::hwdrivers::CSickLaserSerial::setMillimeterMode(bool) --> void
- setScanFOV(...)
- setScanFOV(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial, fov_degrees: int) -> None
Set the scanning field of view - possible values are 100 or 180
(default)
(call prior to 'doProcess') This is not needed if the configuration is
loaded with "loadConfig".
C++: mrpt::hwdrivers::CSickLaserSerial::setScanFOV(int) --> void
- setScanResolution(...)
- setScanResolution(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial, res_1_100th_degree: int) -> None
Set the scanning resolution, in units of 1/100 degree - Possible values
are 25, 50 and 100, for 0.25, 0.5 (default) and 1 deg.
(call prior to 'doProcess') This is not needed if the configuration is
loaded with "loadConfig".
C++: mrpt::hwdrivers::CSickLaserSerial::setScanResolution(int) --> void
- setSerialPort(...)
- setSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial, port: str) -> None
Changes the serial port to connect to (call prior to 'doProcess'), for
example "COM1" or "ttyS0".
This is not needed if the configuration is loaded with "loadConfig".
C++: mrpt::hwdrivers::CSickLaserSerial::setSerialPort(const std::string &) --> void
- turnOff(...)
- turnOff(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial) -> bool
Disables the scanning mode (in this class this has no effect).
If everything works "true", or "false" if there is any error.
C++: mrpt::hwdrivers::CSickLaserSerial::turnOff() --> bool
- turnOn(...)
- turnOn(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserSerial) -> bool
Enables the scanning mode (in this class this has no effect).
If everything works "true", or "false" if there is any error.
C++: mrpt::hwdrivers::CSickLaserSerial::turnOn() --> bool
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CSickLaserSerial::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CSickLaserSerial::doRegister() --> void
Methods inherited from C2DRangeFinderAbstract:
- bindIO(...)
- bindIO(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, streamIO: mrpt.pymrpt.mrpt.io.CStream) -> None
Binds the object to a given I/O channel.
The stream object must not be deleted before the destruction of this
class.
comms::CSerialPort
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::bindIO(const class std::shared_ptr<class mrpt::io::CStream> &) --> void
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
Main method for a CGenericSensor
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::doProcess() --> void
- getEstimatedScanPeriod(...)
- getEstimatedScanPeriod(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> float
Returns the empirical, filtered estimation for the period at which whole
scans are being returned from calls to doProcessSimple()
: Units: seconds
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getEstimatedScanPeriod() const --> double
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
Get the last observation from the sensor, if available, and unmarks it
as being "the last one" (thus a new scan must arrive or subsequent calls
will find no new observations).
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getObservation(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- showPreview(...)
- showPreview(*args, **kwargs)
Overloaded function.
1. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
2. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, enable: bool) -> None
Enables GUI visualization in real-time
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::showPreview(bool) --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CSickLaserUSB(C2DRangeFinderAbstract) |
|
This "software driver" implements the communication protocol for interfacing
a SICK LMS2XX laser scanners through a custom USB RS-422 interface board.
NOTE that this class is for a custom hardware built at our lab (MAPIR,
University of Malaga).
For a generic serial interface, see the class CSickLaserSerial.
This class does not need to be bind, i.e. you do not need to call
C2DRangeFinderAbstract::bindIO. However, calling it will have not effect.
In this class the "bind" is ignored since it is designed for USB
connections only, thus it internally generate the required object for
simplicity of use.
The serial number of the USB device is used to open it on the first call
to "doProcess", thus you must call "loadConfig" before this, or manually
call "setDeviceSerialNumber". The default serial number is "LASER001"
Warning: Avoid defining an object of this class in a global scope if you
want to catch all potential
exceptions during the constructors (like USB interface DLL not found,
etc...) |
|
- Method resolution order:
- CSickLaserUSB
- C2DRangeFinderAbstract
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserUSB) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CSickLaserUSB::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserUSB) -> None
- doProcessSimple(...)
- doProcessSimple(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserUSB, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
Specific laser scanner "software drivers" must process here new data
from the I/O stream, and, if a whole scan has arrived, return it.
This method will be typically called in a different thread than other
methods, and will be called in a timely fashion.
C++: mrpt::hwdrivers::CSickLaserUSB::doProcessSimple(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- setDeviceSerialNumber(...)
- setDeviceSerialNumber(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserUSB, deviceSerialNumber: str) -> None
Changes the serial number of the device to open (call prior to
'doProcess')
C++: mrpt::hwdrivers::CSickLaserUSB::setDeviceSerialNumber(const std::string &) --> void
- turnOff(...)
- turnOff(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserUSB) -> bool
Disables the scanning mode (in this class this has no effect).
If everything works "true", or "false" if there is any error.
C++: mrpt::hwdrivers::CSickLaserUSB::turnOff() --> bool
- turnOn(...)
- turnOn(self: mrpt.pymrpt.mrpt.hwdrivers.CSickLaserUSB) -> bool
Enables the scanning mode (in this class this has no effect).
If everything works "true", or "false" if there is any error.
C++: mrpt::hwdrivers::CSickLaserUSB::turnOn() --> bool
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CSickLaserUSB::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CSickLaserUSB::doRegister() --> void
Methods inherited from C2DRangeFinderAbstract:
- bindIO(...)
- bindIO(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, streamIO: mrpt.pymrpt.mrpt.io.CStream) -> None
Binds the object to a given I/O channel.
The stream object must not be deleted before the destruction of this
class.
comms::CSerialPort
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::bindIO(const class std::shared_ptr<class mrpt::io::CStream> &) --> void
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
Main method for a CGenericSensor
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::doProcess() --> void
- getEstimatedScanPeriod(...)
- getEstimatedScanPeriod(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> float
Returns the empirical, filtered estimation for the period at which whole
scans are being returned from calls to doProcessSimple()
: Units: seconds
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getEstimatedScanPeriod() const --> double
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, outThereIsObservation: bool, outObservation: mrpt.pymrpt.mrpt.obs.CObservation2DRangeScan, hardwareError: bool) -> None
Get the last observation from the sensor, if available, and unmarks it
as being "the last one" (thus a new scan must arrive or subsequent calls
will find no new observations).
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::getObservation(bool &, class mrpt::obs::CObservation2DRangeScan &, bool &) --> void
- showPreview(...)
- showPreview(*args, **kwargs)
Overloaded function.
1. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract) -> None
2. showPreview(self: mrpt.pymrpt.mrpt.hwdrivers.C2DRangeFinderAbstract, enable: bool) -> None
Enables GUI visualization in real-time
C++: mrpt::hwdrivers::C2DRangeFinderAbstract::showPreview(bool) --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
This method can or cannot be implemented in the derived class, depending
on the need for it.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CGenericSensor::initialize() --> void
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CSkeletonTracker(CGenericSensor) |
|
A class for grabbing mrpt::obs::CObservationSkeleton from a PrimeSense
camera.
It connects to a PrimeSense camera and tries to detect users while
recording the positions of their skeletons' joints along time.
See also the application "rawlog-grabber" for a ready-to-use application to
gather data from this sensor. |
|
- Method resolution order:
- CSkeletonTracker
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CSkeletonTracker) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CSkeletonTracker::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CSkeletonTracker) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CSkeletonTracker) -> None
This method will be invoked at a minimum rate of "process_rate" (Hz)
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CSkeletonTracker::doProcess() --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CSkeletonTracker) -> None
Connects to the PrimeSense camera and prepares it to get skeleton data
C++: mrpt::hwdrivers::CSkeletonTracker::initialize() --> void
- setPreview(...)
- setPreview(*args, **kwargs)
Overloaded function.
1. setPreview(self: mrpt.pymrpt.mrpt.hwdrivers.CSkeletonTracker) -> None
2. setPreview(self: mrpt.pymrpt.mrpt.hwdrivers.CSkeletonTracker, setPreview: bool) -> None
Set/unset preview
C++: mrpt::hwdrivers::CSkeletonTracker::setPreview(const bool) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CSkeletonTracker::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CSkeletonTracker::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CStereoGrabber_Bumblebee_libdc1394(pybind11_builtins.pybind11_object) |
|
Grabs from a "Bumblebee" or "Bumblebee2" stereo camera using raw access to
the libdc1394 library.
Only raw, unrectified images can be captured with this class, which can be
manually rectified given
correct calibration parameters.
See mrpt::hwdrivers::CStereoGrabber_Bumblebee for another class capable of
live capture of rectified images using
the vendor (PointGreyResearch) Triclops API.
Once connected to a camera, you can call `getStereoObservation()` to
retrieve the stereo images.
You'll probably want to use instead the most generic camera grabber in
MRPT: mrpt::hwdrivers::CCameraSensor |
|
- Method resolution order:
- CStereoGrabber_Bumblebee_libdc1394
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CStereoGrabber_Bumblebee_libdc1394, cameraGUID: int, cameraUnit: int, frameRate: float) -> None
- getStereoObservation(...)
- getStereoObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CStereoGrabber_Bumblebee_libdc1394, out_observation: mrpt.pymrpt.mrpt.obs.CObservationStereoImages) -> bool
Grab stereo images, and return the pair of rectified images.
The object to be filled with sensed data.
The member "CObservationStereoImages::refCameraPose" must be set on
the return of
this method by the user, since we don't know here the robot physical
structure.
false on any error, true if all go fine.
C++: mrpt::hwdrivers::CStereoGrabber_Bumblebee_libdc1394::getStereoObservation(class mrpt::obs::CObservationStereoImages &) --> bool
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CStereoGrabber_SVS(pybind11_builtins.pybind11_object) |
|
A class for grabing stereo images from a STOC camera of Videre Design
NOTE:
- Windows:
- This class is not available.
- Linux:
- This class is only available when compiling MRPT with
"MRPT_HAS_SVS".
- You must have the videre design's library.
- Capture will be made in grayscale.
- The grabber must be launch in root.
Once connected to a camera, you can call "getStereoObservation" to retrieve
the Disparity images.
You'll probably want to use instead the most generic camera grabber in
MRPT: mrpt::hwdrivers::CCameraSensor |
|
- Method resolution order:
- CStereoGrabber_SVS
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CStereoGrabber_SVS) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CStereoGrabber_SVS, cameraIndex: int) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CStereoGrabber_SVS, cameraIndex: int, options: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS) -> None
- getStereoObservation(...)
- getStereoObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CStereoGrabber_SVS, out_observation: mrpt.pymrpt.mrpt.obs.CObservationStereoImages) -> bool
Grab stereo images, and return the pair of rectified images.
The object to be filled with sensed data.
NOTICE: (1) That the member "CObservationStereoImages::refCameraPose"
must be
set on the return of this method, since we don't know here
the robot physical structure.
(2) The images are already rectified.
false on any error, true if all go fine.
C++: mrpt::hwdrivers::CStereoGrabber_SVS::getStereoObservation(class mrpt::obs::CObservationStereoImages &) --> bool
Data descriptors defined here:
- m_options
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CSwissRanger3DCamera(CGenericSensor) |
|
A class for grabing "range images" from a MESA imaging SwissRanger 3D
cameras (SR-2, SR-3000, SR-4k).
NOTES:
- This class requires a vendor specific driver installed in the system
in
order to build MRPT with support for this sensor. Download and install the
driver from: http://www.mesa-imaging.ch/drivers.php
- The intensity channel (grayscale image) is converted from 16bit to
standard 8bit-per-pixel using a logarithmic, modified A-law compression. This
allows exploiting the full dynamic range of the sensor and provides quite
good results.
As with any other CGenericSensor class, the normal sequence of methods to be
called is:
- loadConfig() - Or calls to the individual setXXX() to configure the
camera parameters.
- initialize() - to init the comms with the camera
- call getNextObservation() for getting the frames.
This sensor can be also used from within rawlog-grabber. |
|
- Method resolution order:
- CSwissRanger3DCamera
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CSwissRanger3DCamera::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> None
- close(...)
- close(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::close() --> void
- cols(...)
- cols(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> int
Get the col count in the camera images, loaded automatically upon camera
open().
C++: mrpt::hwdrivers::CSwissRanger3DCamera::cols() const --> size_t
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> None
To be called at a high rate (>XX Hz), this method populates the
internal buffer of received observations.
This method is mainly intended for usage within rawlog-grabber or
similar programs.
For an alternative, see getNextObservation()
This method must throw an exception with a descriptive
message if some critical error is found.
getNextObservation
C++: mrpt::hwdrivers::CSwissRanger3DCamera::doProcess() --> void
- enableConvGray(...)
- enableConvGray(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, enable: bool) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::enableConvGray(bool) --> void
- enableDenoiseANF(...)
- enableDenoiseANF(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, enable: bool) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::enableDenoiseANF(bool) --> void
- enableImageHistEqualization(...)
- enableImageHistEqualization(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, enable: bool) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::enableImageHistEqualization(bool) --> void
- enableMedianCrossFilter(...)
- enableMedianCrossFilter(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, enable: bool) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::enableMedianCrossFilter(bool) --> void
- enableMedianFilter(...)
- enableMedianFilter(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, enable: bool) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::enableMedianFilter(bool) --> void
- enablePreviewWindow(...)
- enablePreviewWindow(*args, **kwargs)
Overloaded function.
1. enablePreviewWindow(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> None
2. enablePreviewWindow(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, enable: bool) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::enablePreviewWindow(bool) --> void
- getCameraSerialNumber(...)
- getCameraSerialNumber(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> int
Get the camera serial number, loaded automatically upon camera open().
C++: mrpt::hwdrivers::CSwissRanger3DCamera::getCameraSerialNumber() const --> unsigned int
- getMaxRange(...)
- getMaxRange(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> float
Returns the maximum camera range, as deduced from its operating
frequency.
C++: mrpt::hwdrivers::CSwissRanger3DCamera::getMaxRange() const --> double
- getMesaLibVersion(...)
- getMesaLibVersion(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, out_version: str) -> bool
Get the version of the MESA library.
false on error
C++: mrpt::hwdrivers::CSwissRanger3DCamera::getMesaLibVersion(std::string &) const --> bool
- getNextObservation(...)
- getNextObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, out_obs: mrpt.pymrpt.mrpt.obs.CObservation3DRangeScan, there_is_obs: bool, hardware_error: bool) -> None
The main data retrieving function, to be called after calling
loadConfig() and initialize().
The output retrieved observation (only if
there_is_obs=true).
If set to false, there was no new observation.
True on hardware/comms error.
doProcess
C++: mrpt::hwdrivers::CSwissRanger3DCamera::getNextObservation(class mrpt::obs::CObservation3DRangeScan &, bool &, bool &) --> void
- getOpenFromUSBMode(...)
- getOpenFromUSBMode(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> bool
C++: mrpt::hwdrivers::CSwissRanger3DCamera::getOpenFromUSBMode() const --> bool
- getOpenIPAddress(...)
- getOpenIPAddress(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> str
C++: mrpt::hwdrivers::CSwissRanger3DCamera::getOpenIPAddress() const --> std::string
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> None
Initializes the 3D camera - should be invoked after calling loadConfig()
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CSwissRanger3DCamera::initialize() --> void
- isEnabledConvGray(...)
- isEnabledConvGray(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> bool
C++: mrpt::hwdrivers::CSwissRanger3DCamera::isEnabledConvGray() const --> bool
- isEnabledDenoiseANF(...)
- isEnabledDenoiseANF(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> bool
C++: mrpt::hwdrivers::CSwissRanger3DCamera::isEnabledDenoiseANF() const --> bool
- isEnabledImageHistEqualization(...)
- isEnabledImageHistEqualization(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> bool
C++: mrpt::hwdrivers::CSwissRanger3DCamera::isEnabledImageHistEqualization() const --> bool
- isEnabledMedianCrossFilter(...)
- isEnabledMedianCrossFilter(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> bool
C++: mrpt::hwdrivers::CSwissRanger3DCamera::isEnabledMedianCrossFilter() const --> bool
- isEnabledMedianFilter(...)
- isEnabledMedianFilter(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> bool
C++: mrpt::hwdrivers::CSwissRanger3DCamera::isEnabledMedianFilter() const --> bool
- isEnabledPreviewWindow(...)
- isEnabledPreviewWindow(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> bool
C++: mrpt::hwdrivers::CSwissRanger3DCamera::isEnabledPreviewWindow() const --> bool
- isOpen(...)
- isOpen(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> bool
whether the camera is open and comms work ok. To be called after
initialize()
C++: mrpt::hwdrivers::CSwissRanger3DCamera::isOpen() const --> bool
- open(...)
- open(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> bool
return false on error - Called automatically from initialize(), no need
normally for the user to call this.
C++: mrpt::hwdrivers::CSwissRanger3DCamera::open() --> bool
- rows(...)
- rows(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera) -> int
Get the row count in the camera images, loaded automatically upon camera
open().
C++: mrpt::hwdrivers::CSwissRanger3DCamera::rows() const --> size_t
- setOpenFromUSB(...)
- setOpenFromUSB(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, USB: bool) -> None
true: open from USB, false: open from ethernet.
C++: mrpt::hwdrivers::CSwissRanger3DCamera::setOpenFromUSB(bool) --> void
- setOpenIPAddress(...)
- setOpenIPAddress(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, IP: str) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::setOpenIPAddress(const std::string &) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, directory: str) -> None
Set the path where to save off-rawlog image files (this class DOES take
into account this path).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CSwissRanger3DCamera::setPathForExternalImages(const std::string &) --> void
- setSave3D(...)
- setSave3D(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, save: bool) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::setSave3D(bool) --> void
- setSaveConfidenceImage(...)
- setSaveConfidenceImage(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, save: bool) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::setSaveConfidenceImage(bool) --> void
- setSaveIntensityImage(...)
- setSaveIntensityImage(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, save: bool) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::setSaveIntensityImage(bool) --> void
- setSaveRangeImage(...)
- setSaveRangeImage(self: mrpt.pymrpt.mrpt.hwdrivers.CSwissRanger3DCamera, save: bool) -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::setSaveRangeImage(bool) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CSwissRanger3DCamera::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CSwissRanger3DCamera::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CTaoboticsIMU(CGenericSensor) |
|
A driver for Taobotics IMU.
Supported models: HFI-A9, HFI-B9, HFI-B6.
## Frame format
From analysis the provided [python scripts]()
we found that the sensor uses these data frames, documented here for
reference:
### Model: "hfi-a9"
Two frames:
Frame field : 0xAA 0x55 0x2c | (9 * 4[float]) D0-D8 | ?? ??
Byte index : 0 1 2 | 3 4 5 6 | ... | 48
Data:
- D{0,1,2}: wx,wy,wz
- D{3,4,5}: accx,accy,accz
- D{6,7,8}: magx,magy,magz
Frame field : 0xAA 0x55 0x14 | (5 * 4[float]) D0-D4 | ??
Byte index : 0 1 2 | 3 ... | ... | 24
### Model: "hfi-b6"
Frame field : 0x55 | TYPE | D0 | D1 | D2 | D3 | CHKSUM
Byte index : 0 | 1 | 2 3 | 4 5 | 6 7 | 8 9 | 10
Type:
0x51: acceleration, 0x52: angular velocity, 0x53: euler angles
### Configuration file block
If used programmatically, this class will be used as: |
|
- Method resolution order:
- CTaoboticsIMU
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CTaoboticsIMU) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CTaoboticsIMU::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CTaoboticsIMU) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CTaoboticsIMU) -> None
This method will be invoked at a minimum rate of "process_rate" (Hz)
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CTaoboticsIMU::doProcess() --> void
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CTaoboticsIMU) -> None
Opens the serial port and start streaming data.
You must have called loadConfig_sensorSpecific before
calling this function, or set the configuration via the provided methods,
e.g. setSerialPort(), etc.
C++: mrpt::hwdrivers::CTaoboticsIMU::initialize() --> void
- loadConfig_sensorSpecific(...)
- loadConfig_sensorSpecific(self: mrpt.pymrpt.mrpt.hwdrivers.CTaoboticsIMU, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, iniSection: str) -> None
See the class documentation at the top for expected parameters
C++: mrpt::hwdrivers::CTaoboticsIMU::loadConfig_sensorSpecific(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setSerialBaudRate(...)
- setSerialBaudRate(self: mrpt.pymrpt.mrpt.hwdrivers.CTaoboticsIMU, rate: int) -> None
Must be called before initialize(). If not called, the default 921600 is
used.
C++: mrpt::hwdrivers::CTaoboticsIMU::setSerialBaudRate(int) --> void
- setSerialPort(...)
- setSerialPort(self: mrpt.pymrpt.mrpt.hwdrivers.CTaoboticsIMU, serialPort: str) -> None
Must be called before initialize(). If not set, the default is
"/dev/ttyUSB0". Use "COM1", etc. for Windows.
C++: mrpt::hwdrivers::CTaoboticsIMU::setSerialPort(const std::string &) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CTaoboticsIMU::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CTaoboticsIMU::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CTuMicos(CPtuBase) |
|
This class implements initialization and communication methods to
control a Tilt Unit model DT-80, working in radians . |
|
- Method resolution order:
- CTuMicos
- CPtuBase
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> None
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, arg0: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> None
3. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, arg0: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> None
- aWait(...)
- aWait(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> bool
Wait the finish of the last position command to
continue accept commands
C++: mrpt::hwdrivers::CTuMicos::aWait() --> bool
- absPosQ(...)
- absPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, nRad: float) -> bool
Query position in absolute terms
C++: mrpt::hwdrivers::CTuMicos::absPosQ(char, double &) --> bool
- aceleration(...)
- aceleration(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, radSec2: float) -> bool
Specification (de/a)celeration in turn
C++: mrpt::hwdrivers::CTuMicos::aceleration(char, double) --> bool
- acelerationQ(...)
- acelerationQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, radSec2: float) -> bool
Query (de/a)celeration in turn
C++: mrpt::hwdrivers::CTuMicos::acelerationQ(char, double &) --> bool
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, : mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> mrpt.pymrpt.mrpt.hwdrivers.CTuMicos
C++: mrpt::hwdrivers::CTuMicos::operator=(const class mrpt::hwdrivers::CTuMicos &) --> class mrpt::hwdrivers::CTuMicos &
- baseSpeed(...)
- baseSpeed(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, radSec: float) -> bool
Specification of velocity to which start and finish
the (de/a)celeration
C++: mrpt::hwdrivers::CTuMicos::baseSpeed(char, double) --> bool
- baseSpeedQ(...)
- baseSpeedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, radSec: float) -> bool
Query velocity to which start and finish
the (de/a)celeration
C++: mrpt::hwdrivers::CTuMicos::baseSpeedQ(char, double &) --> bool
- changeMotionDir(...)
- changeMotionDir(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> bool
C++: mrpt::hwdrivers::CTuMicos::changeMotionDir() --> bool
- checkErrors(...)
- checkErrors(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> int
************************** State Queries *******************
C++: mrpt::hwdrivers::CTuMicos::checkErrors() --> int
- clear(...)
- clear(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> bool
Clear controller internal stack
C++: mrpt::hwdrivers::CTuMicos::clear() --> bool
- clearErrors(...)
- clearErrors(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> None
Clear errors *
C++: mrpt::hwdrivers::CTuMicos::clearErrors() --> void
- close(...)
- close(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> None
Close Connection with serial port
C++: mrpt::hwdrivers::CTuMicos::close() --> void
- echoMode(...)
- echoMode(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, mode: bool) -> bool
Enable/Disable echo response with command.
C++: mrpt::hwdrivers::CTuMicos::echoMode(bool) --> bool
- echoModeQ(...)
- echoModeQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, mode: bool) -> bool
Query echo mode
C++: mrpt::hwdrivers::CTuMicos::echoModeQ(bool &) --> bool
- enableLimits(...)
- enableLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, set: bool) -> bool
Enable/Disable movement limits
C++: mrpt::hwdrivers::CTuMicos::enableLimits(bool) --> bool
- enableLimitsQ(...)
- enableLimitsQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, enable: bool) -> bool
Query if exist movement limits
C++: mrpt::hwdrivers::CTuMicos::enableLimitsQ(bool &) --> bool
- halt(...)
- halt(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str) -> bool
Inmediately stop
C++: mrpt::hwdrivers::CTuMicos::halt(char) --> bool
- haltAll(...)
- haltAll(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> bool
Inmediately stop all
C++: mrpt::hwdrivers::CTuMicos::haltAll() --> bool
- init(...)
- init(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, port: str) -> bool
PTU and serial port initialization
C++: mrpt::hwdrivers::CTuMicos::init(const std::string &) --> bool
- inmediateExecution(...)
- inmediateExecution(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, set: bool) -> bool
With I mode (default) instructs pan-tilt unit to immediately
execute positional commands.
In S mode instructs pan-tilt unit to execute positional commands
only when an Await Position Command Completion command is executed
or when put into Immediate Execution Mode.
C++: mrpt::hwdrivers::CTuMicos::inmediateExecution(bool) --> bool
- lowerSpeed(...)
- lowerSpeed(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, radSec: float) -> bool
Specification of velocity lower limit
C++: mrpt::hwdrivers::CTuMicos::lowerSpeed(char, double) --> bool
- lowerSpeedQ(...)
- lowerSpeedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, radSec: float) -> bool
Query velocity lower limit
C++: mrpt::hwdrivers::CTuMicos::lowerSpeedQ(char, double &) --> bool
- maxPosQ(...)
- maxPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, nRad: float) -> bool
Query max movement limit of a axis in absolute terms
C++: mrpt::hwdrivers::CTuMicos::maxPosQ(char, double &) --> bool
- minPosQ(...)
- minPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, nRad: float) -> bool
Query min movement limit of a axis in absolute terms
C++: mrpt::hwdrivers::CTuMicos::minPosQ(char, double &) --> bool
- moveToAbsPos(...)
- moveToAbsPos(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, nRad: float) -> bool
Specification of positions in absolute terms
C++: mrpt::hwdrivers::CTuMicos::moveToAbsPos(char, double) --> bool
- moveToOffPos(...)
- moveToOffPos(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, nRad: float) -> bool
Specify desired axis position as an offset from the current position.
This method recives the number of radians to move.
C++: mrpt::hwdrivers::CTuMicos::moveToOffPos(char, double) --> bool
- nversion(...)
- nversion(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, nVersion: float) -> None
Number of version
C++: mrpt::hwdrivers::CTuMicos::nversion(double &) --> void
- offPosQ(...)
- offPosQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, nRad: float) -> bool
Query position in relative terms
C++: mrpt::hwdrivers::CTuMicos::offPosQ(char, double &) --> bool
- posToRad(...)
- posToRad(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, nPos: int) -> float
To obtain the number of radians for a discrete value
C++: mrpt::hwdrivers::CTuMicos::posToRad(char, long) --> double
- powerMode(...)
- powerMode(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, transit: bool, mode: str) -> bool
Specification of power mode
C++: mrpt::hwdrivers::CTuMicos::powerMode(bool, char) --> bool
- powerModeQ(...)
- powerModeQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, transit: bool, mode: str) -> bool
Query power mode
C++: mrpt::hwdrivers::CTuMicos::powerModeQ(bool, char &) --> bool
- radError(...)
- radError(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, nRadMoved: float) -> float
To obtains the mistake for use discrete values when the movement
is expressed in radians. Parameters are the absolute position in
radians and the axis desired
C++: mrpt::hwdrivers::CTuMicos::radError(char, double) --> double
- radToPos(...)
- radToPos(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, nRad: float) -> int
To obtain the discrete value for a number of radians
C++: mrpt::hwdrivers::CTuMicos::radToPos(char, double) --> long
- rangeMeasure(...)
- rangeMeasure(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> bool
Search limit forward
C++: mrpt::hwdrivers::CTuMicos::rangeMeasure() --> bool
- reset(...)
- reset(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> bool
Reset PTU to initial state
C++: mrpt::hwdrivers::CTuMicos::reset() --> bool
- resolution(...)
- resolution(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> bool
Query the pan and tilt resolution per position moved
and initialize local atributes
C++: mrpt::hwdrivers::CTuMicos::resolution() --> bool
- restoreDefaults(...)
- restoreDefaults(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> bool
Restore default values
C++: mrpt::hwdrivers::CTuMicos::restoreDefaults() --> bool
- restoreFactoryDefaults(...)
- restoreFactoryDefaults(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> bool
Restore factory default values
C++: mrpt::hwdrivers::CTuMicos::restoreFactoryDefaults() --> bool
- save(...)
- save(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos) -> bool
Save or restart default values
C++: mrpt::hwdrivers::CTuMicos::save() --> bool
- scan(...)
- scan(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, wait: int, initial: float, final: float, radPre: float) -> bool
Performs a scan in the axis indicated and whit the precision desired.
{Pan or Till}
{Wait time betwen commands}
{initial position}
{final position}
{radians precision for the scan}
C++: mrpt::hwdrivers::CTuMicos::scan(char, int, float, float, double) --> bool
- setLimits(...)
- setLimits(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, l: float, u: float) -> bool
Set limits of movement
C++: mrpt::hwdrivers::CTuMicos::setLimits(char, double &, double &) --> bool
- speed(...)
- speed(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, radSec: float) -> bool
Specification of turn speed
C++: mrpt::hwdrivers::CTuMicos::speed(char, double) --> bool
- speedQ(...)
- speedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, radSec: float) -> bool
Query turn speed
C++: mrpt::hwdrivers::CTuMicos::speedQ(char, double &) --> bool
- status(...)
- status(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, rad: float) -> float
Check if ptu is moving
C++: mrpt::hwdrivers::CTuMicos::status(double &) --> double
- upperSpeed(...)
- upperSpeed(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, radSec: float) -> bool
Specification of velocity upper limit
C++: mrpt::hwdrivers::CTuMicos::upperSpeed(char, double) --> bool
- upperSpeedQ(...)
- upperSpeedQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, axis: str, radSec: float) -> bool
Query velocity upper limit
C++: mrpt::hwdrivers::CTuMicos::upperSpeedQ(char, double &) --> bool
- verbose(...)
- verbose(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, set: bool) -> bool
Set verbose.
Example of response with FV (verbose) active:
FV *
PP * Current pan position is 0
Example of response with FT (terse) active:
FT *
PP * 0
C++: mrpt::hwdrivers::CTuMicos::verbose(bool) --> bool
- verboseQ(...)
- verboseQ(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, modo: bool) -> bool
Query verbose mode
C++: mrpt::hwdrivers::CTuMicos::verboseQ(bool &) --> bool
- version(...)
- version(self: mrpt.pymrpt.mrpt.hwdrivers.CTuMicos, nVersion: str) -> bool
Version and CopyRights
C++: mrpt::hwdrivers::CTuMicos::version(char *) --> bool
Data descriptors defined here:
- axis_index
Data descriptors inherited from CPtuBase:
- panResolution
- tiltResolution
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CVelodyneScanner(CGenericSensor) |
|
A C++ interface to Velodyne laser scanners (HDL-64, HDL-32, VLP-16), working
on Linux and Windows.
(Using this class requires WinPCap as a run-time dependency in Windows).
It can receive data from real devices via an Ethernet connection or parse a
WireShark PCAP file for offline processing.
The choice of online vs. offline operation is taken upon calling
if a PCAP input file has been defined,
offline operation takes place and network is not listened for incomming
packets.
Parsing dual return scans requires a VLP-16 with firmware version 3.0.23 or
newer. While converting the scan into a
point cloud in mrpt::obs::CObservationVelodyneScan you can select whether to
keep the strongest, the last or both laser returns.
XML calibration files are not mandatory for VLP-16 and HDL-32, but they are
for HDL-64.
Grabbing live data (as a user)
- Use the application
[velodyne-view](http://www.mrpt.org/list-of-mrpt-apps/application-velodyne-view/)
to visualize the LIDAR output in real-time (optionally saving to a PCAP file)
or to playback a PCAP file.
- Use
[rawlog-grabber](http://www.mrpt.org/list-of-mrpt-apps/application-rawlog-grabber/)
to record a dataset in MRPT's format together with any other set of sensors.
See example config file:
[MRPT_files-grabber.ini](https://github.com/MRPT/mrpt/blob/master/share/mrpt/config_files/rawlog-grabber/velodyne.ini)
Grabbing live data (programmatically)
- See CGenericSensor for a general overview of the sequence of methods to
be called: loadConfig(), initialize(), doProcess().
- Or use this class inside the application
[rawlog-grabber](http://www.mrpt.org/list-of-mrpt-apps/application-rawlog-grabber/).
See example config files:
[MRPT_files-grabber.ini](https://github.com/MRPT/mrpt/blob/master/share/mrpt/config_files/rawlog-grabber/velodyne.ini)
See the source code of the example application `[MRPT]/apps/velodyne-view`
([velodyne-view web
page](http://www.mrpt.org/list-of-mrpt-apps/application-velodyne-view/)) for
more details.
Playing back a PCAP file:
It is common to save Velodyne datasets as Wireshark's PCAP files.
These files can be played back with tools like
[bittwist](http://bittwist.sourceforge.net/), which emit all UDP packets in
the PCAP log.
Then, use this class to receive the packets as if they come from the real
sensor.
Alternatively, if MRPT is linked against libpcap, this class can directly
parse a PCAP file to simulate reading from a device offline.
See method setPCAPInputFile() and config file parameter ``
To compile with PCAP support: In Debian/Ubuntu, install libpcap-dev. In
Windows, install WinPCap developer packages + the regular WinPCap driver.
Configuration and usage:
Data is returned as observations of type:
- mrpt::obs::CObservationVelodyneScan for one or more "data packets" (refer
to Velodyne usage manual)
- mrpt::obs::CObservationGPS for GPS (GPRMC) packets, if available via the
synchronization interface of the device.
See those classes for documentation on their fields.
Configuration includes setting the device IP (optional) and sensor model
(mandatory only if a calibration file is not provided).
These parameters can be set programmatically (see methods of this class), or
via a configuration file with CGenericSensor::loadConfig() (see example
config file section below).
About timestamps:
Each gathered observation of type mrpt::obs::CObservationVelodyneScan is
populated with two timestamps, one for the local PC timestamp and,
if available, another one for the GPS-stamped timestamp. Refer to the
observation docs for details.
Format of parameters for loading from a .ini file
Copyright notice
Portions of this class are based on code from velodyne ROS node in
https://github.com/ros-drivers/velodyne
Copyright (C) 2007 Austin Robot Technology, Patrick Beeson
Copyright (C) 2009, 2010 Austin Robot Technology, Jack O'Quin
License: Modified BSD Software License Agreement
New in MRPT 1.4.0 |
|
- Method resolution order:
- CVelodyneScanner
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CVelodyneScanner::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> None
- close(...)
- close(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> None
Close the UDP sockets set-up in This is called
automatically upon destruction
C++: mrpt::hwdrivers::CVelodyneScanner::close() --> void
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> None
C++: mrpt::hwdrivers::CVelodyneScanner::doProcess() --> void
- getCalibration(...)
- getCalibration(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> mrpt.pymrpt.mrpt.obs.VelodyneCalibration
C++: mrpt::hwdrivers::CVelodyneScanner::getCalibration() const --> const struct mrpt::obs::VelodyneCalibration &
- getDeviceIP(...)
- getDeviceIP(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> str
C++: mrpt::hwdrivers::CVelodyneScanner::getDeviceIP() const --> const std::string &
- getModelName(...)
- getModelName(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner.model_t
C++: mrpt::hwdrivers::CVelodyneScanner::getModelName() const --> enum mrpt::hwdrivers::CVelodyneScanner::model_t
- getNextObservation(...)
- getNextObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, outScan: mrpt.pymrpt.mrpt.obs.CObservationVelodyneScan, outGPS: mrpt.pymrpt.mrpt.obs.CObservationGPS) -> bool
Polls the UDP port for incoming data packets. The user *must* call this
method in a timely fashion to grab data as it it generated by the device.
The minimum call rate should be the expected number of data
packets/second (!=scans/second). Checkout Velodyne user manual if in
doubt.
Upon return, an empty smart pointer will be found
here if no new data was available. Otherwise, a valid scan.
Upon return, an empty smart pointer will be found
here if no new GPS data was available. Otherwise, a valid GPS reading.
true if no error ocurred (even if there was no new observation).
false if any communication error occurred.
C++: mrpt::hwdrivers::CVelodyneScanner::getNextObservation(class std::shared_ptr<class mrpt::obs::CObservationVelodyneScan> &, class std::shared_ptr<class mrpt::obs::CObservationGPS> &) --> bool
- getPCAPInputFile(...)
- getPCAPInputFile(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> str
C++: mrpt::hwdrivers::CVelodyneScanner::getPCAPInputFile() const --> const std::string &
- getPCAPInputFileReadOnce(...)
- getPCAPInputFileReadOnce(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> bool
C++: mrpt::hwdrivers::CVelodyneScanner::getPCAPInputFileReadOnce() const --> bool
- getPCAPOutputFile(...)
- getPCAPOutputFile(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> str
C++: mrpt::hwdrivers::CVelodyneScanner::getPCAPOutputFile() const --> const std::string &
- getPosPacketsMinPeriod(...)
- getPosPacketsMinPeriod(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> float
C++: mrpt::hwdrivers::CVelodyneScanner::getPosPacketsMinPeriod() const --> double
- getPosPacketsTimingTimeout(...)
- getPosPacketsTimingTimeout(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> float
C++: mrpt::hwdrivers::CVelodyneScanner::getPosPacketsTimingTimeout() const --> double
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner) -> None
Tries to initialize the sensor driver, after setting all the parameters
with a call to loadConfig.
Velodyne specifics: this method sets up the UDP listening sockets, so
all relevant params MUST BE SET BEFORE calling this.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CVelodyneScanner::initialize() --> void
- loadCalibrationFile(...)
- loadCalibrationFile(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, velodyne_xml_calib_file_path: str) -> bool
Returns false on error.
mrpt::obs::VelodyneCalibration::loadFromXMLFile()
C++: mrpt::hwdrivers::CVelodyneScanner::loadCalibrationFile(const std::string &) --> bool
- receivePackets(...)
- receivePackets(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, data_pkt_timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, out_data_pkt: mrpt.pymrpt.mrpt.obs.CObservationVelodyneScan.TVelodyneRawPacket, pos_pkt_timestamp: mrpt.pymrpt.std.chrono.time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_t, out_pos_pkt: mrpt.pymrpt.mrpt.obs.CObservationVelodyneScan.TVelodynePositionPacket) -> bool
Users normally would prefer calling instead.
This method polls the UDP data port and returns one Velodyne DATA packet
(1206 bytes) and/or one POSITION packet. Refer to Velodyne users manual.
Approximate timestamps (based on this computer clock) are returned for
each kind of packets, or INVALID_TIMESTAMP if timeout ocurred waiting for
a packet.
true on all ok. false only for pcap reading EOF
C++: mrpt::hwdrivers::CVelodyneScanner::receivePackets(mrpt::Clock::time_point &, struct mrpt::obs::CObservationVelodyneScan::TVelodyneRawPacket &, mrpt::Clock::time_point &, struct mrpt::obs::CObservationVelodyneScan::TVelodynePositionPacket &) --> bool
- setCalibration(...)
- setCalibration(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, calib: mrpt.pymrpt.mrpt.obs.VelodyneCalibration) -> None
C++: mrpt::hwdrivers::CVelodyneScanner::setCalibration(const struct mrpt::obs::VelodyneCalibration &) --> void
- setDeviceIP(...)
- setDeviceIP(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, ip: str) -> None
UDP packets from other IPs will be ignored. Default: empty string, means
do not filter by IP
C++: mrpt::hwdrivers::CVelodyneScanner::setDeviceIP(const std::string &) --> void
- setFramePublishing(...)
- setFramePublishing(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, on: bool) -> None
Switches whole frame (points in a single revolution) on/off publication
to data packet publication. When on, getNextObservation() will return
true whenever a frame is avaliable, when off, getNextObservation() will
return true whenever a data packet is avaliable. The default is on. When
listening to data packets on a PCAP, pcap_read_fast is enforced.
C++: mrpt::hwdrivers::CVelodyneScanner::setFramePublishing(bool) --> void
- setLidarOnOff(...)
- setLidarOnOff(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, on: bool) -> bool
Switches the LASER on/off (saves energy when not measuring) (via HTTP
post interface).
Can be called at any instant, before or after initialize().
Requires setting a device IP address.
false on error
C++: mrpt::hwdrivers::CVelodyneScanner::setLidarOnOff(bool) --> bool
- setLidarRPM(...)
- setLidarRPM(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, rpm: int) -> bool
Changes Lidar RPM (valid range: 300-600) (via HTTP post interface).
Can be called at any instant, before or after initialize().
Requires setting a device IP address.
false on error
C++: mrpt::hwdrivers::CVelodyneScanner::setLidarRPM(int) --> bool
- setLidarReturnType(...)
- setLidarReturnType(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, ret_type: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner.return_type_t) -> bool
Changes among STRONGEST, LAST, DUAL return types (via HTTP post
interface).
Can be called at any instant, before or after initialize().
Requires setting a device IP address.
false on error
C++: mrpt::hwdrivers::CVelodyneScanner::setLidarReturnType(enum mrpt::hwdrivers::CVelodyneScanner::return_type_t) --> bool
- setModelName(...)
- setModelName(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, model: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner.model_t) -> None
see above for the list of parameters and their meaning
@{
See supported model names in the general discussion docs for
mrpt::hwdrivers::CVelodyneScanner
C++: mrpt::hwdrivers::CVelodyneScanner::setModelName(const enum mrpt::hwdrivers::CVelodyneScanner::model_t) --> void
- setPCAPInputFile(...)
- setPCAPInputFile(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, pcap_file: str) -> None
Enables reading from a PCAP file instead of live UDP packet listening
C++: mrpt::hwdrivers::CVelodyneScanner::setPCAPInputFile(const std::string &) --> void
- setPCAPInputFileReadOnce(...)
- setPCAPInputFileReadOnce(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, read_once: bool) -> None
C++: mrpt::hwdrivers::CVelodyneScanner::setPCAPInputFileReadOnce(bool) --> void
- setPCAPOutputFile(...)
- setPCAPOutputFile(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, out_pcap_file: str) -> None
Enables dumping to a PCAP file in parallel to returning regular MRPT
objects. Default="": no pcap log.
C++: mrpt::hwdrivers::CVelodyneScanner::setPCAPOutputFile(const std::string &) --> void
- setPCAPVerbosity(...)
- setPCAPVerbosity(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, verbose: bool) -> None
Enables/disables PCAP info messages to console (default: true)
C++: mrpt::hwdrivers::CVelodyneScanner::setPCAPVerbosity(const bool) --> void
- setPosPacketsMinPeriod(...)
- setPosPacketsMinPeriod(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, period_seconds: float) -> None
Set the minimum period between the generation of
mrpt::obs::CObservationGPS observations from Velodyne Position RMC GPS
packets
C++: mrpt::hwdrivers::CVelodyneScanner::setPosPacketsMinPeriod(double) --> void
- setPosPacketsTimingTimeout(...)
- setPosPacketsTimingTimeout(self: mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner, timeout: float) -> None
Set how long to wait, after loss of GPS signal, to report timestamps as
"not based on satellite time". 30 secs, with typical velodyne clock
drifts, means a ~1.7 ms typical drift.
C++: mrpt::hwdrivers::CVelodyneScanner::setPosPacketsTimingTimeout(double) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CVelodyneScanner::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CVelodyneScanner::doRegister() --> void
Data and other attributes defined here:
- DUAL = <return_type_t.DUAL: 3>
- HDL32 = <model_t.HDL32: 2>
- HDL64 = <model_t.HDL64: 3>
- LAST = <return_type_t.LAST: 2>
- STRONGEST = <return_type_t.STRONGEST: 1>
- TModelProperties = <class 'mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner.TModelProperties'>
- Hard-wired properties of LIDARs depending on the model
- TModelPropertiesFactory = <class 'mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner.TModelPropertiesFactory'>
- Access to default sets of parameters for Velodyne LIDARs
- UNCHANGED = <return_type_t.UNCHANGED: 0>
- VLP16 = <model_t.VLP16: 1>
- model_t = <class 'mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner.model_t'>
- return_type_t = <class 'mrpt.pymrpt.mrpt.hwdrivers.CVelodyneScanner.return_type_t'>
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class CWirelessPower(CGenericSensor) |
|
This class implements a wireless power probe.
mrpt::maps::CWirelessPowerGridMap2D,
mrpt::obs::CObservationWirelessPower |
|
- Method resolution order:
- CWirelessPower
- CGenericSensor
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- GetPower(...)
- GetPower(self: mrpt.pymrpt.mrpt.hwdrivers.CWirelessPower) -> int
Gets the power of a given network
std::exception In case there is a failure
Returns the power (0-100).
C++: mrpt::hwdrivers::CWirelessPower::GetPower() --> int
- GetRuntimeClass(...)
- GetRuntimeClass(self: mrpt.pymrpt.mrpt.hwdrivers.CWirelessPower) -> mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId
C++: mrpt::hwdrivers::CWirelessPower::GetRuntimeClass() const --> const struct mrpt::hwdrivers::TSensorClassId *
- ListInterfaces(...)
- ListInterfaces(self: mrpt.pymrpt.mrpt.hwdrivers.CWirelessPower) -> List[str]
Gets a list of the interfaces
std::exception In case there is a failure
std::vector returns the identifiers (GUID) of the available
interfaces
C++: mrpt::hwdrivers::CWirelessPower::ListInterfaces() --> class std::vector<std::string >
- ListNetworks(...)
- ListNetworks(self: mrpt.pymrpt.mrpt.hwdrivers.CWirelessPower) -> List[str]
Gets a list of the networks available for an interface
std::exception In case there is a failure
std::vector returns handles to the available networks of a given
interface
C++: mrpt::hwdrivers::CWirelessPower::ListNetworks() --> class std::vector<std::string >
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.CWirelessPower) -> None
- doProcess(...)
- doProcess(self: mrpt.pymrpt.mrpt.hwdrivers.CWirelessPower) -> None
C++: mrpt::hwdrivers::CWirelessPower::doProcess() --> void
- getObservation(...)
- getObservation(self: mrpt.pymrpt.mrpt.hwdrivers.CWirelessPower, outObservation: mrpt.pymrpt.mrpt.obs.CObservationWirelessPower) -> bool
Gets the power of a given network as a timestamped observation
NOTE: Deprecated, use getObservations instead. See CGenericSensor
documentation. This function is kept for internal use of the module
Returns true if the observation was correct, and false otherwise
mrpt::hwdrivers::CGenericSensor
C++: mrpt::hwdrivers::CWirelessPower::getObservation(class mrpt::obs::CObservationWirelessPower &) --> bool
- loadConfig_sensorSpecific(...)
- loadConfig_sensorSpecific(self: mrpt.pymrpt.mrpt.hwdrivers.CWirelessPower, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
C++: mrpt::hwdrivers::CWirelessPower::loadConfig_sensorSpecific(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setNet(...)
- setNet(self: mrpt.pymrpt.mrpt.hwdrivers.CWirelessPower, ssid: str, guid: str) -> None
Set the SSID and GUID of the target network.
std::exception In case there is a failure
SSID of the target network
GUID of the network interface
C++: mrpt::hwdrivers::CWirelessPower::setNet(std::string, std::string) --> void
Static methods defined here:
- CreateObject(...) from builtins.PyCapsule
- CreateObject() -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
C++: mrpt::hwdrivers::CWirelessPower::CreateObject() --> class mrpt::hwdrivers::CGenericSensor *
- doRegister(...) from builtins.PyCapsule
- doRegister() -> None
C++: mrpt::hwdrivers::CWirelessPower::doRegister() --> void
Methods inherited from CGenericSensor:
- enableVerbose(...)
- enableVerbose(*args, **kwargs)
Overloaded function.
1. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
2. enableVerbose(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, enabled: bool) -> None
Enable or disable extra debug info dumped to std::cout during sensor
operation.
Default: disabled unless the environment variable
"MRPT_HWDRIVERS_VERBOSE" is set to "1" during object creation.
C++: mrpt::hwdrivers::CGenericSensor::enableVerbose(bool) --> void
- getExternalImageJPEGQuality(...)
- getExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> int
C++: mrpt::hwdrivers::CGenericSensor::getExternalImageJPEGQuality() const --> unsigned int
- getObservations(...)
- getObservations(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.std.multimap_std_chrono_time_point_mrpt_Clock_std_chrono_duration_long_std_ratio_1_10000000_std_shared_ptr_mrpt_serialization_CSerializable_t
Returns a list of enqueued objects, emptying it (thread-safe).
C++: mrpt::hwdrivers::CGenericSensor::getObservations() --> class std::multimap<mrpt::Clock::time_point, class std::shared_ptr<class mrpt::serialization::CSerializable> >
- getProcessRate(...)
- getProcessRate(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> float
C++: mrpt::hwdrivers::CGenericSensor::getProcessRate() const --> double
- getSensorLabel(...)
- getSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> str
C++: mrpt::hwdrivers::CGenericSensor::getSensorLabel() const --> std::string
- getState(...)
- getState(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState
The current state of the sensor
C++: mrpt::hwdrivers::CGenericSensor::getState() const --> enum mrpt::hwdrivers::CGenericSensor::TSensorState
- initialize(...)
- initialize(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> None
This method can or cannot be implemented in the derived class, depending
on the need for it.
This method must throw an exception with a descriptive
message if some critical error is found.
C++: mrpt::hwdrivers::CGenericSensor::initialize() --> void
- isVerboseEnabled(...)
- isVerboseEnabled(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor) -> bool
C++: mrpt::hwdrivers::CGenericSensor::isVerboseEnabled() const --> bool
- loadConfig(...)
- loadConfig(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
Loads the generic settings common to any sensor (See CGenericSensor),
then call to "loadConfig_sensorSpecific"
This method throws an exception with a descriptive message
if some critical parameter is missing or has an invalid value.
C++: mrpt::hwdrivers::CGenericSensor::loadConfig(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
- setExternalImageFormat(...)
- setExternalImageFormat(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, ext: str) -> None
Set the extension ("jpg","gif","png",...) that determines the format of
images saved externally. Default: "png".
setPathForExternalImages, setExternalImageJPEGQuality
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageFormat(const std::string &) --> void
- setExternalImageJPEGQuality(...)
- setExternalImageJPEGQuality(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, quality: int) -> None
The quality of JPEG compression, when external images is enabled and the
format is "jpg".
setExternalImageFormat
C++: mrpt::hwdrivers::CGenericSensor::setExternalImageJPEGQuality(const unsigned int) --> void
- setPathForExternalImages(...)
- setPathForExternalImages(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, directory: str) -> None
Set the path where to save off-rawlog image files (will be ignored in
those sensors where this is not applicable).
An empty string (the default value at construction) means to save
images embedded in the rawlog, instead of on separate files.
std::exception If the directory doesn't exists and cannot be
created.
C++: mrpt::hwdrivers::CGenericSensor::setPathForExternalImages(const std::string &) --> void
- setSensorLabel(...)
- setSensorLabel(self: mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor, sensorLabel: str) -> None
C++: mrpt::hwdrivers::CGenericSensor::setSensorLabel(const std::string &) --> void
Static methods inherited from CGenericSensor:
- createSensor(...) from builtins.PyCapsule
- createSensor(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Creates a sensor by a name of the class.
Typically the user may want to create a smart pointer around the
returned pointer, whis is made with:
A pointer to a new class, or nullptr if class name is unknown.
C++: mrpt::hwdrivers::CGenericSensor::createSensor(const std::string &) --> class mrpt::hwdrivers::CGenericSensor *
- createSensorPtr(...) from builtins.PyCapsule
- createSensorPtr(className: str) -> mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor
Just like createSensor, but returning a smart pointer to the newly
created sensor object.
C++: mrpt::hwdrivers::CGenericSensor::createSensorPtr(const std::string &) --> class std::shared_ptr<class mrpt::hwdrivers::CGenericSensor>
- registerClass(...) from builtins.PyCapsule
- registerClass(pNewClass: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Register a class into the internal list of "CGenericSensor" descendents.
Used internally in the macros DEFINE_GENERIC_SENSOR, etc...
Can be used as "CGenericSensor::registerClass(
SENSOR_CLASS_ID(CMySensor) );" if
building custom sensors outside mrpt libraries in user code.
C++: mrpt::hwdrivers::CGenericSensor::registerClass(const struct mrpt::hwdrivers::TSensorClassId *) --> void
Data and other attributes inherited from CGenericSensor:
- TSensorState = <class 'mrpt.pymrpt.mrpt.hwdrivers.CGenericSensor.TSensorState'>
- ssError = <TSensorState.ssError: 2>
- ssInitializing = <TSensorState.ssInitializing: 0>
- ssUninitialized = <TSensorState.ssUninitialized: 3>
- ssWorking = <TSensorState.ssWorking: 1>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class GYRO_MODE(pybind11_builtins.pybind11_object) |
| |
- Method resolution order:
- GYRO_MODE
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __and__(...)
- __and__(self: object, other: object) -> object
- __eq__(...)
- __eq__(self: object, other: object) -> bool
- __ge__(...)
- __ge__(self: object, other: object) -> bool
- __getstate__(...)
- __getstate__(self: object) -> int
- __gt__(...)
- __gt__(self: object, other: object) -> bool
- __hash__(...)
- __hash__(self: object) -> int
- __index__(...)
- __index__(self: mrpt.pymrpt.mrpt.hwdrivers.GYRO_MODE) -> int
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.GYRO_MODE, value: int) -> None
- __int__(...)
- __int__(self: mrpt.pymrpt.mrpt.hwdrivers.GYRO_MODE) -> int
- __invert__(...)
- __invert__(self: object) -> object
- __le__(...)
- __le__(self: object, other: object) -> bool
- __lt__(...)
- __lt__(self: object, other: object) -> bool
- __ne__(...)
- __ne__(self: object, other: object) -> bool
- __or__(...)
- __or__(self: object, other: object) -> object
- __rand__(...)
- __rand__(self: object, other: object) -> object
- __repr__(...)
- __repr__(self: object) -> str
- __ror__(...)
- __ror__(self: object, other: object) -> object
- __rxor__(...)
- __rxor__(self: object, other: object) -> object
- __setstate__(...)
- __setstate__(self: mrpt.pymrpt.mrpt.hwdrivers.GYRO_MODE, state: int) -> None
- __str__ = name(...)
- name(self: handle) -> str
- __xor__(...)
- __xor__(self: object, other: object) -> object
Readonly properties defined here:
- __members__
- name
- name(self: handle) -> str
- value
Data and other attributes defined here:
- INCREMENTAL_ANGLE = <GYRO_MODE.INCREMENTAL_ANGLE: 1>
- INTEGRATED_ANGLE = <GYRO_MODE.INTEGRATED_ANGLE: 2>
- RATE = <GYRO_MODE.RATE: 0>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class SensorType(pybind11_builtins.pybind11_object) |
| |
- Method resolution order:
- SensorType
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __and__(...)
- __and__(self: object, other: object) -> object
- __eq__(...)
- __eq__(self: object, other: object) -> bool
- __ge__(...)
- __ge__(self: object, other: object) -> bool
- __getstate__(...)
- __getstate__(self: object) -> int
- __gt__(...)
- __gt__(self: object, other: object) -> bool
- __hash__(...)
- __hash__(self: object) -> int
- __index__(...)
- __index__(self: mrpt.pymrpt.mrpt.hwdrivers.SensorType) -> int
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.SensorType, value: int) -> None
- __int__(...)
- __int__(self: mrpt.pymrpt.mrpt.hwdrivers.SensorType) -> int
- __invert__(...)
- __invert__(self: object) -> object
- __le__(...)
- __le__(self: object, other: object) -> bool
- __lt__(...)
- __lt__(self: object, other: object) -> bool
- __ne__(...)
- __ne__(self: object, other: object) -> bool
- __or__(...)
- __or__(self: object, other: object) -> object
- __rand__(...)
- __rand__(self: object, other: object) -> object
- __repr__(...)
- __repr__(self: object) -> str
- __ror__(...)
- __ror__(self: object, other: object) -> object
- __rxor__(...)
- __rxor__(self: object, other: object) -> object
- __setstate__(...)
- __setstate__(self: mrpt.pymrpt.mrpt.hwdrivers.SensorType, state: int) -> None
- __str__ = name(...)
- name(self: handle) -> str
- __xor__(...)
- __xor__(self: object, other: object) -> object
Readonly properties defined here:
- __members__
- name
- name(self: handle) -> str
- value
Data and other attributes defined here:
- EZ1 = <SensorType.EZ1: 2>
- SHARP_30cm = <SensorType.SHARP_30cm: 0>
- SHARP_80cm = <SensorType.SHARP_80cm: 1>
- UNPLUGGED = <SensorType.UNPLUGGED: 3>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class TCameraType(pybind11_builtins.pybind11_object) |
| |
- Method resolution order:
- TCameraType
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __and__(...)
- __and__(self: object, other: object) -> object
- __eq__(...)
- __eq__(self: object, other: object) -> bool
- __ge__(...)
- __ge__(self: object, other: object) -> bool
- __getstate__(...)
- __getstate__(self: object) -> int
- __gt__(...)
- __gt__(self: object, other: object) -> bool
- __hash__(...)
- __hash__(self: object) -> int
- __index__(...)
- __index__(self: mrpt.pymrpt.mrpt.hwdrivers.TCameraType) -> int
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCameraType, value: int) -> None
- __int__(...)
- __int__(self: mrpt.pymrpt.mrpt.hwdrivers.TCameraType) -> int
- __invert__(...)
- __invert__(self: object) -> object
- __le__(...)
- __le__(self: object, other: object) -> bool
- __lt__(...)
- __lt__(self: object, other: object) -> bool
- __ne__(...)
- __ne__(self: object, other: object) -> bool
- __or__(...)
- __or__(self: object, other: object) -> object
- __rand__(...)
- __rand__(self: object, other: object) -> object
- __repr__(...)
- __repr__(self: object) -> str
- __ror__(...)
- __ror__(self: object, other: object) -> object
- __rxor__(...)
- __rxor__(self: object, other: object) -> object
- __setstate__(...)
- __setstate__(self: mrpt.pymrpt.mrpt.hwdrivers.TCameraType, state: int) -> None
- __str__ = name(...)
- name(self: handle) -> str
- __xor__(...)
- __xor__(self: object, other: object) -> object
Readonly properties defined here:
- __members__
- name
- name(self: handle) -> str
- value
Data and other attributes defined here:
- CAMERA_CV_AUTODETECT = <TCameraType.CAMERA_CV_AUTODETECT: 0>
- CAMERA_CV_DC1394 = <TCameraType.CAMERA_CV_DC1394: 1>
- CAMERA_CV_DSHOW = <TCameraType.CAMERA_CV_DSHOW: 5>
- CAMERA_CV_MIL = <TCameraType.CAMERA_CV_MIL: 4>
- CAMERA_CV_VFL = <TCameraType.CAMERA_CV_VFL: 2>
- CAMERA_CV_VFW = <TCameraType.CAMERA_CV_VFW: 3>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class TCaptureCVOptions(pybind11_builtins.pybind11_object) |
|
Options used when creating an OpenCV capture object
Some options apply to IEEE1394 cameras only.
CImageGrabber_OpenCV |
|
- Method resolution order:
- TCaptureCVOptions
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureCVOptions) -> None
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureCVOptions, arg0: mrpt.pymrpt.mrpt.hwdrivers.TCaptureCVOptions) -> None
Data descriptors defined here:
- frame_height
- frame_width
- gain
- ieee1394_fps
- ieee1394_grayscale
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class TCaptureOptions_DUO3D(pybind11_builtins.pybind11_object) |
|
Options used when creating a camera capture object of type
CImageGrabber_FlyCapture2 |
|
- Method resolution order:
- TCaptureOptions_DUO3D
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D) -> None
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D, arg0: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D, : mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D) -> mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D
C++: mrpt::hwdrivers::TCaptureOptions_DUO3D::operator=(const struct mrpt::hwdrivers::TCaptureOptions_DUO3D &) --> struct mrpt::hwdrivers::TCaptureOptions_DUO3D &
- loadOptionsFrom(...)
- loadOptionsFrom(*args, **kwargs)
Overloaded function.
1. loadOptionsFrom(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, sectionName: str) -> None
2. loadOptionsFrom(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, sectionName: str, prefix: str) -> None
Loads all the options from a config file.
Expected format:
All parameter names may have an optional prefix, set with the
"prefix" parameter.
For example, if prefix="LEFT_", the expected variable name
"camera_index" in the config section will be "LEFT_camera_index", and so
on.
C++: mrpt::hwdrivers::TCaptureOptions_DUO3D::loadOptionsFrom(const class mrpt::config::CConfigFileBase &, const std::string &, const std::string &) --> void
- m_camera_ext_params_from_yml(...)
- m_camera_ext_params_from_yml(*args, **kwargs)
Overloaded function.
1. m_camera_ext_params_from_yml(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D) -> mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D.TYMLReadResult
2. m_camera_ext_params_from_yml(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D, _file_name: str) -> mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D.TYMLReadResult
C++: mrpt::hwdrivers::TCaptureOptions_DUO3D::m_camera_ext_params_from_yml(const std::string &) --> enum mrpt::hwdrivers::TCaptureOptions_DUO3D::TYMLReadResult
- m_camera_int_params_from_yml(...)
- m_camera_int_params_from_yml(*args, **kwargs)
Overloaded function.
1. m_camera_int_params_from_yml(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D) -> mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D.TYMLReadResult
2. m_camera_int_params_from_yml(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D, _file_name: str) -> mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D.TYMLReadResult
C++: mrpt::hwdrivers::TCaptureOptions_DUO3D::m_camera_int_params_from_yml(const std::string &) --> enum mrpt::hwdrivers::TCaptureOptions_DUO3D::TYMLReadResult
- m_rectify_map_from_yml(...)
- m_rectify_map_from_yml(*args, **kwargs)
Overloaded function.
1. m_rectify_map_from_yml(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D) -> mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D.TYMLReadResult
2. m_rectify_map_from_yml(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D, _file_name: str) -> mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D.TYMLReadResult
C++: mrpt::hwdrivers::TCaptureOptions_DUO3D::m_rectify_map_from_yml(const std::string &) --> enum mrpt::hwdrivers::TCaptureOptions_DUO3D::TYMLReadResult
Data descriptors defined here:
- m_calibration_from_file
- m_capture_imu
- m_capture_rectified
- m_exposure
- m_extrinsic_filename
- m_fps
- m_gain
- m_img_height
- m_img_width
- m_intrinsic_filename
- m_led
- m_rectify_map_filename
- m_stereo_camera
Data and other attributes defined here:
- TYMLReadResult = <class 'mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_DUO3D.TYMLReadResult'>
- yrr_EMPTY = <TYMLReadResult.yrr_EMPTY: 1>
- yrr_NAME_NON_CONSISTENT = <TYMLReadResult.yrr_NAME_NON_CONSISTENT: 0>
- yrr_OK = <TYMLReadResult.yrr_OK: 2>
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class TCaptureOptions_FlyCapture2(pybind11_builtins.pybind11_object) |
|
Options used when creating a camera capture object of type
CImageGrabber_FlyCapture2 |
|
- Method resolution order:
- TCaptureOptions_FlyCapture2
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2) -> None
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2, arg0: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2, : mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2) -> mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2
C++: mrpt::hwdrivers::TCaptureOptions_FlyCapture2::operator=(const struct mrpt::hwdrivers::TCaptureOptions_FlyCapture2 &) --> struct mrpt::hwdrivers::TCaptureOptions_FlyCapture2 &
- loadOptionsFrom(...)
- loadOptionsFrom(*args, **kwargs)
Overloaded function.
1. loadOptionsFrom(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, sectionName: str) -> None
2. loadOptionsFrom(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_FlyCapture2, configSource: mrpt.pymrpt.mrpt.config.CConfigFileBase, sectionName: str, prefix: str) -> None
Loads all the options from a config file.
Expected format:
All parameter names may have an optional prefix, set with the
"prefix" parameter.
For example, if prefix="LEFT_", the expected variable name
"camera_index" in the config section will be "LEFT_camera_index", and so
on.
C++: mrpt::hwdrivers::TCaptureOptions_FlyCapture2::loadOptionsFrom(const class mrpt::config::CConfigFileBase &, const std::string &, const std::string &) --> void
Data descriptors defined here:
- autoexposure_EV
- autoexposure_abs
- autoexposure_auto
- autoexposure_onOff
- camera_index
- framerate
- gain_abs
- gain_auto
- gain_dB
- grabTimeout
- grabmode
- numBuffers
- open_by_guid
- rect_height
- rect_width
- shutter_abs
- shutter_auto
- shutter_time_ms
- stereo_mode
- strobe_delay
- strobe_duration
- strobe_enabled
- strobe_polarity
- strobe_source
- trigger_enabled
- trigger_mode
- trigger_polarity
- trigger_source
- videomode
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class TCaptureOptions_SVS(pybind11_builtins.pybind11_object) |
|
Options used when creating a STOC Videre Design camera capture object |
|
- Method resolution order:
- TCaptureOptions_SVS
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS) -> None
doc
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int) -> None
doc
3. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int, _frame_height: int) -> None
doc
4. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int, _frame_height: int, _framerate: float) -> None
doc
5. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int, _frame_height: int, _framerate: float, _NDisp: int) -> None
doc
6. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int, _frame_height: int, _framerate: float, _NDisp: int, _Corrsize: int) -> None
doc
7. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int, _frame_height: int, _framerate: float, _NDisp: int, _Corrsize: int, _LR: int) -> None
doc
8. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int, _frame_height: int, _framerate: float, _NDisp: int, _Corrsize: int, _LR: int, _Thresh: int) -> None
doc
9. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int, _frame_height: int, _framerate: float, _NDisp: int, _Corrsize: int, _LR: int, _Thresh: int, _Unique: int) -> None
doc
10. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int, _frame_height: int, _framerate: float, _NDisp: int, _Corrsize: int, _LR: int, _Thresh: int, _Unique: int, _Horopter: int) -> None
doc
11. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int, _frame_height: int, _framerate: float, _NDisp: int, _Corrsize: int, _LR: int, _Thresh: int, _Unique: int, _Horopter: int, _SpeckleSize: int) -> None
doc
12. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int, _frame_height: int, _framerate: float, _NDisp: int, _Corrsize: int, _LR: int, _Thresh: int, _Unique: int, _Horopter: int, _SpeckleSize: int, _procesOnChip: bool) -> None
doc
13. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, _frame_width: int, _frame_height: int, _framerate: float, _NDisp: int, _Corrsize: int, _LR: int, _Thresh: int, _Unique: int, _Horopter: int, _SpeckleSize: int, _procesOnChip: bool, _calDisparity: bool) -> None
14. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, arg0: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS, : mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS) -> mrpt.pymrpt.mrpt.hwdrivers.TCaptureOptions_SVS
C++: mrpt::hwdrivers::TCaptureOptions_SVS::operator=(const struct mrpt::hwdrivers::TCaptureOptions_SVS &) --> struct mrpt::hwdrivers::TCaptureOptions_SVS &
Data descriptors defined here:
- frame_height
- frame_width
- framerate
- getRectified
- m_Corrsize
- m_Horopter
- m_LR
- m_NDisp
- m_SpeckleSize
- m_Thresh
- m_Unique
- m_calDisparity
- m_procesOnChip
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class TMyntEyeCameraParameters(mrpt.pymrpt.mrpt.config.CLoadableOptions) |
|
Open parameters for CMyntEyeCamera
CMyntEyeCamera |
|
- Method resolution order:
- TMyntEyeCameraParameters
- mrpt.pymrpt.mrpt.config.CLoadableOptions
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(*args, **kwargs)
Overloaded function.
1. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TMyntEyeCameraParameters) -> None
2. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TMyntEyeCameraParameters, arg0: mrpt.pymrpt.mrpt.hwdrivers.TMyntEyeCameraParameters) -> None
3. __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TMyntEyeCameraParameters, arg0: mrpt.pymrpt.mrpt.hwdrivers.TMyntEyeCameraParameters) -> None
- assign(...)
- assign(self: mrpt.pymrpt.mrpt.hwdrivers.TMyntEyeCameraParameters, : mrpt.pymrpt.mrpt.hwdrivers.TMyntEyeCameraParameters) -> mrpt.pymrpt.mrpt.hwdrivers.TMyntEyeCameraParameters
C++: mrpt::hwdrivers::TMyntEyeCameraParameters::operator=(const struct mrpt::hwdrivers::TMyntEyeCameraParameters &) --> struct mrpt::hwdrivers::TMyntEyeCameraParameters &
- loadFromConfigFile(...)
- loadFromConfigFile(self: mrpt.pymrpt.mrpt.hwdrivers.TMyntEyeCameraParameters, source: mrpt.pymrpt.mrpt.config.CConfigFileBase, section: str) -> None
C++: mrpt::hwdrivers::TMyntEyeCameraParameters::loadFromConfigFile(const class mrpt::config::CConfigFileBase &, const std::string &) --> void
Data descriptors defined here:
- ir_intensity
Methods inherited from mrpt.pymrpt.mrpt.config.CLoadableOptions:
- dumpToConsole(...)
- dumpToConsole(self: mrpt.pymrpt.mrpt.config.CLoadableOptions) -> None
Just like but sending the text to the console
(std::cout)
C++: mrpt::config::CLoadableOptions::dumpToConsole() const --> void
- loadFromConfigFileName(...)
- loadFromConfigFileName(self: mrpt.pymrpt.mrpt.config.CLoadableOptions, config_file: str, section: str) -> None
Behaves like loadFromConfigFile, but you can pass directly a file name
and a temporary CConfigFile object will be created automatically to load
the file.
loadFromConfigFile
C++: mrpt::config::CLoadableOptions::loadFromConfigFileName(const std::string &, const std::string &) --> void
- saveToConfigFile(...)
- saveToConfigFile(self: mrpt.pymrpt.mrpt.config.CLoadableOptions, target: mrpt::config::CConfigFileBase, section: str) -> None
This method saves the options to a ".ini"-like file or memory-stored
string list.
loadFromConfigFile, saveToConfigFileName
C++: mrpt::config::CLoadableOptions::saveToConfigFile(class mrpt::config::CConfigFileBase &, const std::string &) const --> void
- saveToConfigFileName(...)
- saveToConfigFileName(self: mrpt.pymrpt.mrpt.config.CLoadableOptions, config_file: str, section: str) -> None
Behaves like saveToConfigFile, but you can pass directly a file name and
a temporary CConfigFile object will be created automatically to save the
file.
saveToConfigFile, loadFromConfigFileName
C++: mrpt::config::CLoadableOptions::saveToConfigFileName(const std::string &, const std::string &) const --> void
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
|
class TSensorClassId(pybind11_builtins.pybind11_object) |
|
A structure for runtime ID class type information in the context of
hwdrivers::CGenericSensor. |
|
- Method resolution order:
- TSensorClassId
- pybind11_builtins.pybind11_object
- builtins.object
Methods defined here:
- __init__(...)
- __init__(self: mrpt.pymrpt.mrpt.hwdrivers.TSensorClassId) -> None
Static methods inherited from pybind11_builtins.pybind11_object:
- __new__(*args, **kwargs) from pybind11_builtins.pybind11_type
- Create and return a new object. See help(type) for accurate signature.
| |