Visual Servoing Platform  version 3.5.0 under development (2022-02-15)
vpMatrixException Class Reference

#include <visp3/core/vpMatrixException.h>

+ Inheritance diagram for vpMatrixException:

Public Types

enum  errorCodeEnum {
  constructionError, notInitializedError, notImplementedError, outOfRangeError,
  convergencyError, incorrectMatrixSizeError, forbiddenOperatorError, subMatrixError,
  matrixError, rankDeficient
}
 
enum  generalExceptionEnum {
  memoryAllocationError, memoryFreeError, functionNotImplementedError, ioError,
  cannotUseConstructorError, notImplementedError, divideByZeroError, dimensionError,
  fatalError, badValue, notInitialized
}
 

Public Member Functions

 vpMatrixException (int id, const char *format,...)
 
 vpMatrixException (int id, const std::string &msg)
 
 vpMatrixException (int id)
 
const char * what () const throw ()
 
Inherited functionalities from vpException
int getCode () const
 
const std::string & getStringMessage () const
 
const char * getMessage () const
 

Protected Member Functions

void setMessage (const char *format, va_list args)
 

Protected Attributes

int code
 
std::string message
 

Detailed Description

error that can be emited by the vpMatrix class and its derivates

Definition at line 70 of file vpMatrixException.h.

Member Enumeration Documentation

◆ errorCodeEnum

Lists the possible error than can be emmited while calling vpMatrix member.

Enumerator
constructionError 

error returns by a constructor

notInitializedError 

something is not initialized

notImplementedError 

function not implemented

outOfRangeError 

index out of range

convergencyError 

iterative algorithm doesn't converge (ex SVD)

incorrectMatrixSizeError 
forbiddenOperatorError 
subMatrixError 
matrixError 
rankDeficient 

Definition at line 77 of file vpMatrixException.h.

◆ generalExceptionEnum

Enumerator
memoryAllocationError 

Memory allocation error.

memoryFreeError 

Memory free error.

functionNotImplementedError 

Function not implemented.

ioError 

I/O error.

cannotUseConstructorError 

Contructor error.

notImplementedError 

Not implemented.

divideByZeroError 

Division by zero.

dimensionError 

Bad dimension.

fatalError 

Fatal error.

badValue 

Used to indicate that a value is not in the allowed range.

notInitialized 

Used to indicate that a parameter is not initialized.

Definition at line 87 of file vpException.h.

Constructor & Destructor Documentation

◆ vpMatrixException() [1/3]

vpMatrixException::vpMatrixException ( int  id,
const char *  format,
  ... 
)
inline

Definition at line 96 of file vpMatrixException.h.

References vpException::setMessage().

◆ vpMatrixException() [2/3]

vpMatrixException::vpMatrixException ( int  id,
const std::string &  msg 
)
inline

Definition at line 104 of file vpMatrixException.h.

◆ vpMatrixException() [3/3]

vpMatrixException::vpMatrixException ( int  id)
inlineexplicit

Definition at line 105 of file vpMatrixException.h.

Member Function Documentation

◆ getCode()

int vpException::getCode ( ) const
inherited

Send the object code.

Examples:
parallelPort.cpp, and ringLight.cpp.

Definition at line 94 of file vpException.cpp.

References vpException::code.

◆ getMessage()

const char * vpException::getMessage ( ) const
inherited

send a pointer on the array of char related to the error string. Cannot be NULL.

Examples:
fernClassifier.cpp, mbot-apriltag-2D-half-vs.cpp, mbot-apriltag-ibvs.cpp, mbot-apriltag-pbvs.cpp, moveBiclops.cpp, parallelPort.cpp, servoBiclopsPoint2DArtVelocity.cpp, servoFlirPtuIBVS.cpp, servoViper650FourPoints2DArtVelocityLs_cur.cpp, servoViper650FourPoints2DCamVelocityLs_cur-SR300.cpp, servoViper650FourPoints2DCamVelocityLs_cur.cpp, servoViper650Point2DCamVelocity.cpp, servoViper850FourPoints2DArtVelocityLs_cur.cpp, servoViper850FourPoints2DArtVelocityLs_des.cpp, servoViper850FourPoints2DCamVelocityLs_cur.cpp, servoViper850FourPointsKinect.cpp, servoViper850Point2DArtVelocity-jointAvoidance-basic.cpp, servoViper850Point2DArtVelocity-jointAvoidance-gpa.cpp, servoViper850Point2DArtVelocity-jointAvoidance-large.cpp, servoViper850Point2DArtVelocity.cpp, servoViper850Point2DCamVelocity.cpp, servoViper850Point2DCamVelocityKalman.cpp, testConversion.cpp, testDisplays.cpp, testReadImage.cpp, testRobotFlirPtu.cpp, testRobotViper650-frames.cpp, testRobotViper850-frames.cpp, testTrackDot.cpp, trackMeNurbs.cpp, tutorial-apriltag-detector-live-rgbd-realsense.cpp, tutorial-apriltag-detector-live-rgbd-structure-core.cpp, tutorial-apriltag-detector-live-T265-realsense.cpp, tutorial-apriltag-detector-live.cpp, tutorial-apriltag-detector.cpp, tutorial-barcode-detector.cpp, tutorial-chessboard-pose.cpp, tutorial-draw-cross.cpp, tutorial-draw-line.cpp, tutorial-draw-point.cpp, tutorial-draw-rectangle.cpp, tutorial-draw-text.cpp, tutorial-face-detector-live.cpp, tutorial-face-detector.cpp, tutorial-flir-ptu-ibvs.cpp, tutorial-image-display-scaled-auto.cpp, tutorial-image-display-scaled-manu.cpp, tutorial-image-display.cpp, tutorial-image-reader.cpp, tutorial-mb-generic-tracker-apriltag-rs2.cpp, tutorial-mb-generic-tracker-apriltag-webcam.cpp, tutorial-pose-from-points-image.cpp, tutorial-pose-from-points-live.cpp, tutorial-pose-from-points-realsense-T265.cpp, tutorial-pose-from-qrcode-image.cpp, and tutorial-video-reader.cpp.

Definition at line 90 of file vpException.cpp.

References vpException::message.

Referenced by vpCalibration::addPoint(), and vpTemplateTracker::trackPyr().

◆ getStringMessage()

◆ setMessage()

◆ what()

const char * vpException::what ( ) const
throw (
)
inherited

Overloading of the what() method of std::exception to return the vpException message.

Returns
pointer on the array of char related to the error string.
Examples:
frankaGripper.cpp, frankaMoveToPosition.cpp, frankaSavePosition.cpp, getRealSense2Info.cpp, grabRealSense.cpp, grabRealSense2.cpp, grabRealSense2_T265.cpp, grabV4l2MultiCpp11Thread.cpp, servoFlirPtuIBVS.cpp, servoFrankaIBVS.cpp, servoFrankaPBVS.cpp, testAutoThreshold.cpp, testConnectedComponents.cpp, testContours.cpp, testFloodFill.cpp, testFrankaCartForceTorque-2.cpp, testFrankaCartForceTorque.cpp, testFrankaCartVelocity-2.cpp, testFrankaCartVelocity-3.cpp, testFrankaCartVelocity.cpp, testFrankaGetPose.cpp, testFrankaJointPosition.cpp, testFrankaJointTorque.cpp, testFrankaJointVelocity-2.cpp, testFrankaJointVelocity-3.cpp, testFrankaJointVelocity.cpp, testFrankaJointVelocityLimits.cpp, testHistogram.cpp, testImageFilter.cpp, testImgproc.cpp, testIoTools.cpp, testKeyPoint-2.cpp, testKeyPoint-3.cpp, testKeyPoint-4.cpp, testKeyPoint-5.cpp, testKeyPoint-6.cpp, testKeyPoint-7.cpp, testKeyPoint.cpp, testMatrixConvolution.cpp, testMatrixInitialization.cpp, testOccipitalStructure_Core_images.cpp, testOccipitalStructure_Core_imu.cpp, testOccipitalStructure_Core_pcl.cpp, testPerformanceLUT.cpp, testPylonGrabber.cpp, testRealSense2_T265_images.cpp, testRealSense2_T265_images_odometry.cpp, testRealSense2_T265_images_odometry_async.cpp, testRealSense2_T265_imu.cpp, testRealSense2_T265_odometry.cpp, testRealSense2_T265_undistort.cpp, testRealSense_R200.cpp, testRealSense_SR300.cpp, testUDPClient.cpp, testUDPServer.cpp, tutorial-dnn-object-detection-live.cpp, tutorial-franka-acquire-calib-data.cpp, tutorial-mb-generic-tracker-rgbd-realsense.cpp, tutorial-mb-generic-tracker-rgbd-structure-core.cpp, tutorial-mb-generic-tracker-stereo-mono.cpp, and tutorial-mb-generic-tracker-stereo.cpp.

Definition at line 102 of file vpException.cpp.

References vpException::message.

Referenced by vpKeyPoint::computePose(), vpMbDepthDenseTracker::loadConfigFile(), vpMbDepthNormalTracker::loadConfigFile(), and vpMbGenericTracker::track().

Member Data Documentation

◆ code

int vpException::code
protectedinherited

Contains the error code, see the errorCodeEnum table for details.

Definition at line 75 of file vpException.h.

Referenced by vpException::getCode(), and vpSimulatorException::vpSimulatorException().

◆ message

std::string vpException::message
protectedinherited

Contains an error message (can be empty)

Definition at line 78 of file vpException.h.

Referenced by vpException::getMessage(), vpException::getStringMessage(), vpException::setMessage(), and vpException::what().