Main MRPT website > C++ reference for MRPT 1.9.9
Namespaces | Enumerations | Functions
OS and compiler abstraction (in #include

Detailed Description

<mrpt/system/os.h>)

Collaboration diagram for OS and compiler abstraction (in #include:

Namespaces

 mrpt::system::os
 This namespace provides a OS-independent interface to low-level functions.
 

Enumerations

enum  mrpt::system::TConsoleColor { mrpt::system::CONCOL_NORMAL = 0, mrpt::system::CONCOL_BLUE = 1, mrpt::system::CONCOL_GREEN = 2, mrpt::system::CONCOL_RED = 4 }
 For use in setConsoleColor. More...
 

Functions

int mrpt::system::os::sprintf (char *buf, size_t bufSize, const char *format,...) noexcept MRPT_printf_format_check(3
 An OS-independent version of sprintf (Notice the bufSize param, which may be ignored in some compilers) More...
 
int int mrpt::system::os::vsprintf (char *buf, size_t bufSize, const char *format, va_list args) noexcept
 An OS-independent version of vsprintf (Notice the bufSize param, which may be ignored in some compilers) More...
 
int mrpt::system::os::vsnprintf (char *buf, size_t bufSize, const char *format, va_list args) noexcept
 An OS-independent version of vsnprintf (Notice the bufSize param, which may be ignored in some compilers) More...
 
FILE * mrpt::system::os::fopen (const char *fileName, const char *mode) noexcept
 An OS-independent version of fopen. More...
 
FILE * mrpt::system::os::fopen (const std::string &fileName, const char *mode) noexcept
 An OS-independent version of fopen (std::string version) More...
 
int mrpt::system::os::fprintf (FILE *fil, const char *format,...) noexcept MRPT_printf_format_check(2
 An OS-independent version of fprintf. More...
 
int void mrpt::system::os::fclose (FILE *f)
 An OS-independent version of fclose. More...
 
char * mrpt::system::os::strcat (char *dest, size_t destSize, const char *source) noexcept
 An OS-independent version of strcat. More...
 
char * mrpt::system::os::strcpy (char *dest, size_t destSize, const char *source) noexcept
 An OS-independent version of strcpy. More...
 
int mrpt::system::os::_strcmp (const char *str1, const char *str2) noexcept
 An OS-independent version of strcmp. More...
 
int mrpt::system::os::_strcmpi (const char *str1, const char *str2) noexcept
 An OS-independent version of strcmpi. More...
 
int mrpt::system::os::_strncmp (const char *str, const char *subStr, size_t count) noexcept
 An OS-independent version of strncmp. More...
 
int mrpt::system::os::_strnicmp (const char *str, const char *subStr, size_t count) noexcept
 An OS-independent version of strnicmp. More...
 
int64_t mrpt::system::os::_strtoll (const char *nptr, char **endptr, int base)
 An OS-independent version of strtoll. More...
 
uint64_t mrpt::system::os::_strtoull (const char *nptr, char **endptr, int base)
 An OS-independent version of strtoull. More...
 
time_t mrpt::system::os::timegm (struct tm *tm)
 An OS-independent version of timegm (which is not present in all compilers): converts a time structure into an UTM time_t. More...
 
void mrpt::system::os::memcpy (void *dest, size_t destSize, const void *src, size_t copyCount) noexcept
 An OS and compiler independent version of "memcpy". More...
 
int mrpt::system::os::getch () noexcept
 An OS-independent version of getch, which waits until a key is pushed. More...
 
bool mrpt::system::os::kbhit () noexcept
 An OS-independent version of kbhit, which returns true if a key has been pushed. More...
 
void mrpt::system::pause (const std::string &msg=std::string("Press any key to continue...")) noexcept
 Shows the message "Press any key to continue" (or other custom message) to the current standard output and returns when a key is pressed. More...
 
void mrpt::system::clearConsole ()
 Clears the console window. More...
 
std::string mrpt::system::MRPT_getCompilationDate ()
 Returns the MRPT source code timestamp, according to the Reproducible-Builds specifications: https://reproducible-builds.org/specs/source-date-epoch/. More...
 
std::string mrpt::system::MRPT_getVersion ()
 Returns a string describing the MRPT version. More...
 
const std::stringmrpt::system::getMRPTLicense ()
 Returns a const ref to a text with the same text that appears at the beginning of each MRPT file (useful for displaying the License text in GUIs) More...
 
std::string mrpt::system::find_mrpt_shared_dir ()
 Finds the "[MRPT]/share/mrpt/" directory, if available in the system. More...
 
void mrpt::system::setConsoleColor (TConsoleColor color, bool changeStdErr=false)
 Changes the text color in the console for the text written from now on. More...
 
int mrpt::system::executeCommand (const std::string &command, std::string *output=NULL, const std::string &mode="r")
 Execute Generic Shell Command. More...
 
bool mrpt::system::launchProcess (const std::string &command)
 Executes the given command (which may contain a program + arguments), and waits until it finishes. More...
 

Enumeration Type Documentation

◆ TConsoleColor

For use in setConsoleColor.

Enumerator
CONCOL_NORMAL 
CONCOL_BLUE 
CONCOL_GREEN 
CONCOL_RED 

Definition at line 178 of file os.h.

Function Documentation

◆ _strcmp()

int mrpt::system::os::_strcmp ( const char *  str1,
const char *  str2 
)
noexcept

An OS-independent version of strcmp.

Returns
It will return 0 when both strings are equal, casi sensitive.

Definition at line 311 of file os.cpp.

Referenced by mrpt::utils::CStringList::find(), and mrpt::system::strCmp().

Here is the caller graph for this function:

◆ _strcmpi()

int mrpt::system::os::_strcmpi ( const char *  str1,
const char *  str2 
)
noexcept

◆ _strncmp()

int mrpt::system::os::_strncmp ( const char *  str1,
const char *  str2,
size_t  count 
)
noexcept

An OS-independent version of strncmp.

Returns
It will return 0 when both strings are equal, casi sensitive.

Definition at line 335 of file os.cpp.

Referenced by mrpt::system::strStarts().

Here is the caller graph for this function:

◆ _strnicmp()

int mrpt::system::os::_strnicmp ( const char *  str1,
const char *  str2,
size_t  count 
)
noexcept

An OS-independent version of strnicmp.

Returns
It will return 0 when both strings are equal, casi insensitive.

Definition at line 343 of file os.cpp.

Referenced by xsens::cmtScanPorts(), xsens::Cmt3::isLogFileOpen(), mrpt::system::strStartsI(), and xstrnicmp().

Here is the caller graph for this function:

◆ _strtoll()

int64_t mrpt::system::os::_strtoll ( const char *  nptr,
char **  endptr,
int  base 
)

An OS-independent version of strtoll.

Definition at line 451 of file os.cpp.

◆ _strtoull()

uint64_t mrpt::system::os::_strtoull ( const char *  nptr,
char **  endptr,
int  base 
)

An OS-independent version of strtoull.

Definition at line 463 of file os.cpp.

Referenced by mrpt::utils::CConfigFileBase::read_uint64_t().

Here is the caller graph for this function:

◆ clearConsole()

void mrpt::system::clearConsole ( )

Clears the console window.

Definition at line 436 of file os.cpp.

◆ executeCommand()

int mrpt::system::executeCommand ( const std::string command,
std::string output = NULL,
const std::string mode = "r" 
)

Execute Generic Shell Command.

Parameters
[in]commandCommand to execute
[out]outputPointer to string containing the shell output
[in]moderead/write access
Returns
0 for success, -1 otherwise.
Note
Original code snippet found in http://stackoverflow.com/a/30357710

Definition at line 661 of file os.cpp.

References MRPT_TODO, and THROW_EXCEPTION.

Referenced by mrpt::comms::net::Ping().

Here is the caller graph for this function:

◆ fclose()

void mrpt::system::os::fclose ( FILE *  f)

An OS-independent version of fclose.

Exceptions
std::exceptionOn trying to close a nullptr file descriptor.

Definition at line 272 of file os.cpp.

References THROW_EXCEPTION.

Referenced by mrpt::maps::CGasConcentrationGridMap2D::build_Gaussian_Wind_Grid(), xsens::Cmt1s::close(), xsens::Cmt1f::close(), IoInterfaceFile::closeAndDelete(), xsens::Cmt1f::closeAndDelete(), IoInterfaceFile::closeFile(), SerialInterface::closeLive(), UsbInterface::closeUsb(), mrpt::system::copyFile(), IoInterfaceFile::create(), xsens::Cmt1f::create(), doesFileExist(), mrpt::vision::CFeatureExtraction::extractFeaturesSIFT(), mrpt::maps::CLandmarksMap::fuseWith(), mrpt::hmtslam::CHMTSLAM::generateLogFiles(), mrpt::system::getMemoryUsage(), mrpt::vision::CFeatureExtraction::internal_computeSiftDescriptors(), mrpt::maps::CPointsMap::load2Dor3D_from_text_file(), mrpt::utils::simpleini::CSimpleIniTempl< SI_CHAR, SI_STRLESS, SI_CONVERTER >::LoadFile(), IoInterfaceFile::open(), xsens::Cmt1f::open(), XMLNode::openFileHelper(), XMLNode::parseFile(), ply_close(), mrpt::maps::CPointsMap::save2D_to_text_file(), mrpt::maps::CColouredPointsMap::save3D_and_colour_to_text_file(), mrpt::maps::CPointsMap::save3D_to_text_file(), mrpt::maps::CRandomFieldGridMap2D::saveAsMatlab3DGraph(), mrpt::utils::TMatchingPairList::saveAsMATLABScript(), mrpt::maps::CMultiMetricMapPDF::saveCurrentPathEstimationToTextFile(), mrpt::math::saveEigenSparseTripletsToFile(), mrpt::utils::simpleini::CSimpleIniTempl< SI_CHAR, SI_STRLESS, SI_CONVERTER >::SaveFile(), mrpt::slam::CRangeBearingKFSLAM2D::saveMapAndPath2DRepresentationAsMATLABFile(), mrpt::slam::CRangeBearingKFSLAM::saveMapAndPath2DRepresentationAsMATLABFile(), mrpt::maps::CBeaconMap::saveMetricMapRepresentationToFile(), mrpt::poses::CPosePDFParticles::saveParzenPDFToTextFile(), mrpt::vision::saveQTableToFile(), mrpt::maps::CLandmarksMap::saveToMATLABScript2D(), mrpt::maps::CBeaconMap::saveToMATLABScript3D(), mrpt::maps::CLandmarksMap::saveToMATLABScript3D(), mrpt::utils::internal::dynamic_grid_txt_saver::saveToTextFile(), mrpt::poses::CPoint2DPDFGaussian::saveToTextFile(), mrpt::poses::CPointPDFGaussian::saveToTextFile(), mrpt::poses::CPosePDFGrid::saveToTextFile(), mrpt::poses::CPose3DPDFParticles::saveToTextFile(), mrpt::poses::CPointPDFParticles::saveToTextFile(), mrpt::poses::CPosePDFGaussian::saveToTextFile(), mrpt::poses::CPose3DQuatPDFGaussianInf::saveToTextFile(), mrpt::poses::CPose3DQuatPDFGaussian::saveToTextFile(), mrpt::poses::CPosePDFGaussianInf::saveToTextFile(), mrpt::poses::CPosePDFParticles::saveToTextFile(), mrpt::poses::CPose3DPDFSOG::saveToTextFile(), mrpt::poses::CPose3DPDFGaussianInf::saveToTextFile(), mrpt::poses::CPose3DPDFGaussian::saveToTextFile(), mrpt::poses::CPointPDFSOG::saveToTextFile(), mrpt::poses::CPosePDFSOG::saveToTextFile(), mrpt::maps::CBeaconMap::saveToTextFile(), mrpt::maps::CLandmarksMap::saveToTextFile(), mrpt::vision::CMatchedFeatureList::saveToTextFile(), mrpt::math::CSparseMatrix::saveToTextFile_sparse(), mrpt::system::vectorToTextFile(), and XMLNode::writeToFile().

◆ find_mrpt_shared_dir()

std::string mrpt::system::find_mrpt_shared_dir ( )

Finds the "[MRPT]/share/mrpt/" directory, if available in the system.

This searches in (1) source code tree, (2) install target paths.

Definition at line 612 of file os.cpp.

References mrpt::system::directoryExists(), and mrpt::system::extractFileDirectory().

Referenced by run_rnav_test().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ fopen() [1/2]

FILE * mrpt::system::os::fopen ( const char *  fileName,
const char *  mode 
)
noexcept

An OS-independent version of fopen.

Returns
It will always return nullptr on any error.

Definition at line 254 of file os.cpp.

Referenced by mrpt::maps::CGasConcentrationGridMap2D::build_Gaussian_Wind_Grid(), mrpt::system::copyFile(), IoInterfaceFile::create(), xsens::Cmt1f::create(), doesFileExist(), mrpt::vision::CFeatureExtraction::extractFeaturesSIFT(), mrpt::system::os::fopen(), mrpt::maps::CLandmarksMap::fuseWith(), mrpt::hmtslam::CHMTSLAM::generateLogFiles(), mrpt::system::getMemoryUsage(), mrpt::vision::CFeatureExtraction::internal_computeSiftDescriptors(), mrpt::maps::CPointsMap::load2Dor3D_from_text_file(), mrpt::utils::simpleini::CSimpleIniTempl< SI_CHAR, SI_STRLESS, SI_CONVERTER >::LoadFile(), IoInterfaceFile::open(), xsens::Cmt1f::open(), ply_open_for_reading(), ply_open_for_writing(), UsbInterface::readData(), SerialInterface::readData(), xsens::Cmt1s::readData(), mrpt::maps::CPointsMap::save2D_to_text_file(), mrpt::maps::CColouredPointsMap::save3D_and_colour_to_text_file(), mrpt::maps::CPointsMap::save3D_to_text_file(), mrpt::maps::CRandomFieldGridMap2D::saveAsMatlab3DGraph(), mrpt::utils::TMatchingPairList::saveAsMATLABScript(), mrpt::maps::CMultiMetricMapPDF::saveCurrentPathEstimationToTextFile(), mrpt::math::saveEigenSparseTripletsToFile(), mrpt::utils::simpleini::CSimpleIniTempl< SI_CHAR, SI_STRLESS, SI_CONVERTER >::SaveFile(), mrpt::slam::CRangeBearingKFSLAM2D::saveMapAndPath2DRepresentationAsMATLABFile(), mrpt::slam::CRangeBearingKFSLAM::saveMapAndPath2DRepresentationAsMATLABFile(), mrpt::maps::CBeaconMap::saveMetricMapRepresentationToFile(), mrpt::poses::CPosePDFParticles::saveParzenPDFToTextFile(), mrpt::vision::saveQTableToFile(), mrpt::maps::CLandmarksMap::saveToMATLABScript2D(), mrpt::maps::CBeaconMap::saveToMATLABScript3D(), mrpt::maps::CLandmarksMap::saveToMATLABScript3D(), mrpt::utils::internal::dynamic_grid_txt_saver::saveToTextFile(), mrpt::poses::CPoint2DPDFGaussian::saveToTextFile(), mrpt::poses::CPointPDFGaussian::saveToTextFile(), mrpt::poses::CPosePDFGrid::saveToTextFile(), mrpt::poses::CPose3DPDFParticles::saveToTextFile(), mrpt::poses::CPointPDFParticles::saveToTextFile(), mrpt::poses::CPosePDFGaussian::saveToTextFile(), mrpt::poses::CPose3DQuatPDFGaussianInf::saveToTextFile(), mrpt::poses::CPose3DQuatPDFGaussian::saveToTextFile(), mrpt::poses::CPosePDFGaussianInf::saveToTextFile(), mrpt::poses::CPosePDFParticles::saveToTextFile(), mrpt::poses::CPose3DPDFSOG::saveToTextFile(), mrpt::poses::CPose3DPDFGaussianInf::saveToTextFile(), mrpt::poses::CPose3DPDFGaussian::saveToTextFile(), mrpt::poses::CPointPDFSOG::saveToTextFile(), mrpt::poses::CPosePDFSOG::saveToTextFile(), mrpt::maps::CBeaconMap::saveToTextFile(), mrpt::maps::CLandmarksMap::saveToTextFile(), mrpt::vision::CMatchedFeatureList::saveToTextFile(), mrpt::math::CSparseMatrix::saveToTextFile_sparse(), mrpt::system::vectorFromTextFile(), mrpt::system::vectorToTextFile(), UsbInterface::writeData(), SerialInterface::writeData(), xsens::Cmt1s::writeData(), and xfopen().

◆ fopen() [2/2]

FILE * mrpt::system::os::fopen ( const std::string fileName,
const char *  mode 
)
noexcept

An OS-independent version of fopen (std::string version)

Returns
It will always return nullptr on any error.

Definition at line 246 of file os.cpp.

References mrpt::system::os::fopen().

Here is the call graph for this function:

◆ fprintf()

int mrpt::system::os::fprintf ( FILE *  fil,
const char *  format,
  ... 
)
noexcept

An OS-independent version of fprintf.

Definition at line 405 of file os.cpp.

Referenced by mrpt::comms::CServerTCPSocket::accept(), binary_get_element(), mrpt::maps::CGasConcentrationGridMap2D::build_Gaussian_Wind_Grid(), mrpt::hwdrivers::CRoboPeakLidar::checkCOMMs(), error_exit(), mrpt::maps::CLandmarksMap::fuseWith(), mrpt::hmtslam::CHMTSLAM::generateLogFiles(), mrpt::hwdrivers::CRoboPeakLidar::getDeviceHealth(), mrpt::vision::CFeatureExtraction::internal_computeSiftDescriptors(), mrpt::hwdrivers::CVelodyneScanner::internal_read_PCAP_packet(), mrpt::utils::ObjectToOctetVector(), mrpt::utils::ObjectToRawString(), mrpt::utils::ObjectToString(), mrpt::utils::OctetVectorToObject(), output_message(), ply_describe_property(), ply_get_property(), ply_header_complete(), ply_put_element(), mrpt::utils::RawStringToObject(), mrpt::maps::CPointsMap::save2D_to_text_file(), mrpt::maps::CColouredPointsMap::save3D_and_colour_to_text_file(), mrpt::maps::CPointsMap::save3D_to_text_file(), mrpt::maps::CRandomFieldGridMap2D::saveAsMatlab3DGraph(), mrpt::utils::TMatchingPairList::saveAsMATLABScript(), mrpt::maps::CMultiMetricMapPDF::saveCurrentPathEstimationToTextFile(), mrpt::math::saveEigenSparseTripletsToFile(), mrpt::slam::CRangeBearingKFSLAM2D::saveMapAndPath2DRepresentationAsMATLABFile(), mrpt::slam::CRangeBearingKFSLAM::saveMapAndPath2DRepresentationAsMATLABFile(), mrpt::maps::CBeaconMap::saveMetricMapRepresentationToFile(), mrpt::poses::CPosePDFParticles::saveParzenPDFToTextFile(), mrpt::vision::saveQTableToFile(), mrpt::maps::CLandmarksMap::saveToMATLABScript2D(), mrpt::maps::CBeaconMap::saveToMATLABScript3D(), mrpt::maps::CLandmarksMap::saveToMATLABScript3D(), mrpt::utils::internal::dynamic_grid_txt_saver::saveToTextFile(), mrpt::poses::CPoint2DPDFGaussian::saveToTextFile(), mrpt::poses::CPointPDFGaussian::saveToTextFile(), mrpt::poses::CPosePDFGrid::saveToTextFile(), mrpt::poses::CPose3DPDFParticles::saveToTextFile(), mrpt::poses::CPointPDFParticles::saveToTextFile(), mrpt::poses::CPosePDFGaussian::saveToTextFile(), mrpt::poses::CPose3DQuatPDFGaussianInf::saveToTextFile(), mrpt::poses::CPose3DQuatPDFGaussian::saveToTextFile(), mrpt::poses::CPosePDFGaussianInf::saveToTextFile(), mrpt::poses::CPosePDFParticles::saveToTextFile(), mrpt::poses::CPose3DPDFSOG::saveToTextFile(), mrpt::poses::CPose3DPDFGaussianInf::saveToTextFile(), mrpt::poses::CPose3DPDFGaussian::saveToTextFile(), mrpt::poses::CPointPDFSOG::saveToTextFile(), mrpt::poses::CPosePDFSOG::saveToTextFile(), mrpt::maps::CBeaconMap::saveToTextFile(), mrpt::maps::CLandmarksMap::saveToTextFile(), mrpt::vision::CMatchedFeatureList::saveToTextFile(), mrpt::math::CSparseMatrix::saveToTextFile_sparse(), mrpt::system::setConsoleColor(), mrpt::system::vectorToTextFile(), write_ascii_item(), write_scalar_type(), and XMLNode::writeToFile().

◆ getch()

int mrpt::system::os::getch ( )
noexcept

An OS-independent version of getch, which waits until a key is pushed.

Returns
The pushed key code

Definition at line 369 of file os.cpp.

Referenced by mrpt::system::pause(), and mrpt::gui::CBaseGUIWindow::waitForKey().

Here is the caller graph for this function:

◆ getMRPTLicense()

const std::string & mrpt::system::getMRPTLicense ( )

Returns a const ref to a text with the same text that appears at the beginning of each MRPT file (useful for displaying the License text in GUIs)

Definition at line 531 of file os.cpp.

References sLicenseTextF.

Referenced by CAboutBoxBase::license().

Here is the caller graph for this function:

◆ kbhit()

bool mrpt::system::os::kbhit ( )
noexcept

An OS-independent version of kbhit, which returns true if a key has been pushed.

Definition at line 389 of file os.cpp.

References myKbhit().

Referenced by mrpt::gui::CBaseGUIWindow::waitForKey().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ launchProcess()

bool mrpt::system::launchProcess ( const std::string command)

Executes the given command (which may contain a program + arguments), and waits until it finishes.

Returns
false on any error, true otherwise

Definition at line 559 of file os.cpp.

Referenced by mrpt::vision::CFeatureExtraction::extractFeaturesSIFT(), and mrpt::vision::CFeatureExtraction::internal_computeSiftDescriptors().

Here is the caller graph for this function:

◆ memcpy()

void mrpt::system::os::memcpy ( void dest,
size_t  destSize,
const void src,
size_t  copyCount 
)
noexcept

An OS and compiler independent version of "memcpy".

Definition at line 355 of file os.cpp.

References MRPT_UNUSED_PARAM.

Referenced by rp::standalone::rplidar::RPlidarDriverSerialImpl::_cacheCapsuledScanData(), rp::standalone::rplidar::RPlidarDriverSerialImpl::_cacheScanData(), mrpt::vision::bundle_adj_full(), mrpt::utils::CMemoryStream::CMemoryStream(), mrpt::vision::computeMultiOrientations(), mrpt::vision::computeMultiResolutionDescriptors(), mrpt::math::CSparseMatrix::construct_from_mrpt_mat(), mrpt::utils::simpleini::SI_ConvertA< char >::ConvertFromStore(), mrpt::utils::simpleini::SI_ConvertA< char >::ConvertToStore(), mrpt::math::CSparseMatrix::copy(), mrpt::utils::simpleini::CSimpleIniTempl< SI_CHAR, SI_STRLESS, SI_CONVERTER >::CopyString(), mrpt::utils::CImage::cross_correlation(), XMLNode::deepCopy(), xsens::IntList::deserialize(), mrpt::hwdrivers::CHokuyoURG::displaySensorInfo(), mrpt::comms::net::DNS_resolve_async(), KmTree::DoKMeansStep(), mrpt::utils::CImage::extract_patch(), mrpt::vision::CFeatureExtraction::extractFeaturesSIFT(), mrpt::math::fft_real(), xsens::Cmt3::getAvailableScenarios(), mrpt::system::CFileSystemWatcher::getChanges(), xsens::Cmt3::getConfiguration(), mrpt::utils::CMessage::getContentAsString(), xsens::Cmt3::getEMtsData(), mrpt::bayes::CKalmanFilterCapable< 7, 3, 3, 7 >::getLandmarkMean(), mrpt::hwdrivers::CBoardSonars::getObservation(), mrpt::hwdrivers::CEnoseModular::getObservation(), mrpt::hwdrivers::CBoardENoses::getObservation(), mrpt::hwdrivers::CImageGrabber_FlyCapture2::getObservation(), xsens::Cmt3::getProductCode(), mrpt::utils::CStringList::getText(), rp::standalone::rplidar::RPlidarDriverSerialImpl::grabScanData(), XMLNode::guessCharEncoding(), mrpt::comms::net::http_get(), mrpt::comms::net::http_request(), mrpt::maps::CRandomFieldGridMap2D::insertObservation_KF(), mrpt::maps::CRandomFieldGridMap2D::internal_clear(), mrpt::hwdrivers::CVelodyneScanner::internal_read_PCAP_packet(), mrpt::gui::IplImage2wxImage(), mrpt::vision::pnp::p3p::jacobi_4x4(), mrpt::bayes::CKalmanFilterCapable< 7, 3, 3, 7 >::KF_aux_estimate_obs_Hx_jacobian(), mrpt::bayes::CKalmanFilterCapable< 7, 3, 3, 7 >::KF_aux_estimate_obs_Hy_jacobian(), xsens::List< uint32_t >::List(), mrpt::hwdrivers::CSickLaserSerial::LMS_sendMeasuringMode_cm_mm(), mrpt::utils::CImage::loadFromMemoryBuffer(), mrpt::utils::CImage::loadFromStreamAsJPEG(), xsens::Message::loadFromString(), XMLNode::maybeAddTxT(), xsens::Message::Message(), mrpt::gui::MRPTImage2wxBitmap(), mrpt::gui::MRPTImage2wxImage(), mrpt::utils::ObjectToOctetVector(), mrpt::utils::ObjectToRawString(), mrpt::utils::ObjectToString(), xsens::Message::operator=(), mrpt::graphslam::optimize_graph_spa_levmarq(), mrpt::gui::CWindowDialogPlots::plot(), PointCopy(), mrpt::hwdrivers::CNTRIPClient::private_ntrip_thread(), mrpt::utils::CMemoryStream::Read(), UsbInterface::readData(), xsens::Cmt1s::readData(), CmtDeviceConfiguration::readFromMessage(), xsens::Cmt2s::readMessage(), mrpt::utils::CStream::receiveMessage(), mrpt::hwdrivers::CVelodyneScanner::receivePackets(), mrpt::maps::CRandomFieldGridMap2D::resize(), mrpt::maps::COccupancyGridMap2D::resizeGrid(), reverseBytesInPlace_2b(), reverseBytesInPlace_4b(), reverseBytesInPlace_8b(), RunKMeans(), RunKMeansOnce(), mrpt::bayes::CKalmanFilterCapable< 7, 3, 3, 7 >::runOneKalmanIteration(), mrpt::utils::CImage::scaleHalf(), mrpt::utils::CImage::scaleHalfSmooth(), KmTree::SeedKMeansPlusPlus(), mrpt::hwdrivers::CNTRIPClient::sendBackToServer(), mrpt::hwdrivers::CCANBusReader::sendCommandToCANReader(), mrpt::hwdrivers::CSickLaserSerial::SendCommandToSICK(), mrpt::utils::CStream::sendMessage(), xsens::IntList::serialize(), mrpt::utils::CMessage::serializeObject(), mrpt::utils::CMessage::setContentFromString(), stringDup(), mrpt::math::detail::stub_kmeans(), mrpt::utils::CImage::update_patch(), xsens::Cmt2s::waitForMessage(), mrpt::utils::CMemoryStream::Write(), and xsens::Cmt2s::writeMessage().

◆ MRPT_getCompilationDate()

string mrpt::system::MRPT_getCompilationDate ( )

Returns the MRPT source code timestamp, according to the Reproducible-Builds specifications: https://reproducible-builds.org/specs/source-date-epoch/.

Definition at line 151 of file os.cpp.

References mrpt::mrpt::format(), and mrpt::system::now().

Referenced by CAboutBoxBase::information(), CAboutBoxBase::MRPTBuildVersion(), and CAboutBox::OnInit().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ MRPT_getVersion()

string mrpt::system::MRPT_getVersion ( )

Returns a string describing the MRPT version.

Definition at line 184 of file os.cpp.

Referenced by CAboutBoxBase::information(), CAboutBoxBase::MRPTBuildVersion(), and CAboutBox::OnInit().

Here is the caller graph for this function:

◆ pause()

void mrpt::system::pause ( const std::string msg = std::string("Press any key to continue..."))
noexcept

◆ setConsoleColor()

void mrpt::system::setConsoleColor ( TConsoleColor  color,
bool  changeStdErr = false 
)

Changes the text color in the console for the text written from now on.

The parameter "color" can be any value in TConsoleColor.

By default the color of "cout" is changed, unless changeStdErr=true, in which case "cerr" is changed.

The parameter "color" can be:

  • 0 : Normal text color
  • 1 : Blue text color
  • 2 : Green text color
  • 4 : Red text color

Definition at line 479 of file os.cpp.

References mrpt::system::os::fprintf().

Here is the call graph for this function:

◆ sprintf()

int mrpt::system::os::sprintf ( char *  buf,
size_t  bufSize,
const char *  format,
  ... 
)
noexcept

An OS-independent version of sprintf (Notice the bufSize param, which may be ignored in some compilers)

See also
utils::format

Definition at line 188 of file os.cpp.

References MRPT_UNUSED_PARAM, and mrpt::system::os::vsprintf().

Referenced by mrpt::hwdrivers::CTuMicos::changeMotionDir(), mrpt::hwdrivers::CTuMicos::clear(), xsens::cmtScanPorts(), cvFindChessboardCorners3(), mrpt::system::deleteFiles(), mrpt::hwdrivers::CHokuyoURG::displaySensorInfo(), mrpt::hwdrivers::CHokuyoURG::displayVersionInfo(), mrpt::nav::CAbstractPTGBasedReactive::enableLogFile(), format_message(), mrpt::maps::CBeacon::getAsMatlabDrawCommands(), mrpt::nav::CPTG_DiffDrive_CC::getDescription(), mrpt::nav::CPTG_DiffDrive_CCS::getDescription(), mrpt::nav::CPTG_DiffDrive_CS::getDescription(), mrpt::nav::CPTG_DiffDrive_alpha::getDescription(), xsens::Cmt1s::getPortName(), mrpt::hwdrivers::CTuMicos::halt(), MD5::hexdigest(), makeFilenameUnique(), mrpt::hwdrivers::CTuMicos::moveToAbsPos(), mrpt::hwdrivers::CTuMicos::moveToOffPos(), UsbInterface::open(), SerialInterface::open(), xsens::Cmt1s::open(), XMLNode::openFileHelper(), mrpt::utils::operator<<(), mrpt::hwdrivers::CTuMicos::radAsign(), mrpt::hwdrivers::CPtuDPerception::radAsign(), mrpt::hwdrivers::CTuMicos::radQuerry(), mrpt::hwdrivers::CTuMicos::rangeMeasure(), UsbInterface::readData(), SerialInterface::readData(), xsens::Cmt1s::readData(), mrpt::opengl::CAxis::render_dl(), mrpt::opengl::gl_utils::renderSetOfObjects(), mrpt::hwdrivers::CTuMicos::reset(), mrpt::obs::CObservationGasSensors::CMOSmodel::save_log_map(), mrpt::maps::COccupancyGridMap2D::saveAsEMFTwoMapsWithCorrespondences(), mrpt::vision::TMultiResDescOptions::saveToConfigFile(), mrpt::poses::CPosePDFGrid::saveToTextFile(), mrpt::hwdrivers::CHokuyoURG::setHighSensitivityMode(), mrpt::hwdrivers::CTuMicos::setLimits(), mrpt::hwdrivers::CHokuyoURG::setMotorSpeed(), mrpt::gui::CDisplayWindow::showImageAndPoints(), mrpt::gui::CDisplayWindow::showImagesAndMatchedPoints(), mrpt::hwdrivers::CHokuyoURG::startScanningMode(), mrpt::system::os::timegm(), mrpt::pbmap::PbMapMaker::viz_cb(), UsbInterface::writeData(), SerialInterface::writeData(), xsens::Cmt1s::writeData(), xsens::IntList::writeToString(), xsens::IntList::writeToStringHex(), and xsEnumerateUsbDevices().

Here is the call graph for this function:

◆ strcat()

char * mrpt::system::os::strcat ( char *  dest,
size_t  destSize,
const char *  source 
)
noexcept

An OS-independent version of strcat.

Returns
It will always return the "dest" pointer.

Definition at line 281 of file os.cpp.

References MRPT_UNUSED_PARAM.

Referenced by mrpt::system::deleteFiles(), mrpt::vision::CFeatureExtraction::extractFeaturesSIFT(), mrpt::vision::CFeatureExtraction::internal_computeSiftDescriptors(), mrpt::hwdrivers::CTuMicos::transmit(), and mrpt::hwdrivers::CPtuDPerception::transmit().

Here is the caller graph for this function:

◆ strcpy()

char * mrpt::system::os::strcpy ( char *  dest,
size_t  destSize,
const char *  source 
)
noexcept

◆ timegm()

time_t mrpt::system::os::timegm ( struct tm *  tm)

An OS-independent version of timegm (which is not present in all compilers): converts a time structure into an UTM time_t.

Definition at line 109 of file os.cpp.

References mrpt::system::os::sprintf(), and mrpt::system::os::strcpy().

Referenced by mrpt::system::buildTimestampFromParts().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ vsnprintf()

int mrpt::system::os::vsnprintf ( char *  buf,
size_t  bufSize,
const char *  format,
va_list  args 
)
noexcept

An OS-independent version of vsnprintf (Notice the bufSize param, which may be ignored in some compilers)

Definition at line 227 of file os.cpp.

References vsnprintf, and mrpt::system::os::vsprintf().

Referenced by mrpt::format().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ vsprintf()

int mrpt::system::os::vsprintf ( char *  buf,
size_t  bufSize,
const char *  format,
va_list  args 
)
noexcept

An OS-independent version of vsprintf (Notice the bufSize param, which may be ignored in some compilers)

Definition at line 211 of file os.cpp.

References MRPT_UNUSED_PARAM.

Referenced by mrpt::system::os::sprintf(), and mrpt::system::os::vsnprintf().

Here is the caller graph for this function:



Page generated by Doxygen 1.8.14 for MRPT 1.9.9 Git: ae4571287 Thu Nov 23 00:06:53 2017 +0100 at dom oct 27 23:51:55 CET 2019