Namespaces | Classes | Typedefs | Functions
pal_statistics Namespace Reference

Namespaces

 statistics_registry
 

Classes

class  DataSignals
 
class  LockFreeQueue
 Simple wrapper around boost lockfree queue to keep track of the reserved memory Boost's implementation of reserve always increases the capacity by the specified size. More...
 
class  MyAlloc
 
class  PalStatisticsTest
 
class  Registration
 The Registration class is a handle to a registered variable, when out of scope unregisters the variable. More...
 
class  RegistrationList
 The RegistrationList class. More...
 
class  RegistrationsRAII
 The RegistrationsRAII class holds handles to registered variables and when it is destroyed, unregisters them automatically. More...
 
class  StatisticsRegistry
 The StatisticsRegistry class reads the value of registered variables and publishes them on the specified topic. More...
 
class  VariableHolder
 

Typedefs

typedef unsigned int IdType
 
typedef std::pair< ros::Time, double > TimeData
 

Functions

template<>
IdType customRegister (StatisticsRegistry &registry, const std::string &name, const boost::function< double()> &funct, RegistrationsRAII *bookkeeping, bool enabled)
 specialization for where the variable is double, to avoid going through a function More...
 
template<typename T >
IdType customRegister (StatisticsRegistry &registry, const std::string &name, const boost::function< T()> &funct, RegistrationsRAII *bookkeeping=NULL, bool enabled=true)
 Default implementation that accepts any function whose return value can be casted to a double. More...
 
template<>
IdType customRegister (StatisticsRegistry &registry, const std::string &name, const double *variable, RegistrationsRAII *bookkeeping, bool enabled)
 specialization for where the variable is double, to avoid going through a function More...
 
template<typename T >
IdType customRegister (StatisticsRegistry &registry, const std::string &name, const T *variable, RegistrationsRAII *bookkeeping=NULL, bool enabled=true)
 Default implementation that accepts anything variable that can be casted to a double. More...
 
boost::shared_ptr< StatisticsRegistrygetRegistry (const std::string &topic)
 
std::map< std::string, double > getVariableAndValues (const pal_statistics_msgs::Statistics &msg)
 
std::vector< std::string > getVariables (const pal_statistics_msgs::Statistics &msg)
 
template<class T1 , class T2 >
bool operator!= (const MyAlloc< T1 > &, const MyAlloc< T2 > &) throw ()
 
template<class T1 , class T2 >
bool operator== (const MyAlloc< T1 > &, const MyAlloc< T2 > &) throw ()
 
void publish (boost::shared_ptr< StatisticsRegistry > registry, size_t n_variables)
 
void publishAsync (boost::shared_ptr< StatisticsRegistry > registry, size_t n_variables)
 
void registerThread (boost::shared_ptr< StatisticsRegistry > registry, const std::string &prefix, size_t iterations, double *variable, RegistrationsRAII *bookkeeping=NULL)
 
 TEST (BufferTest, basicTest)
 
 TEST (BufferTest, buffer)
 
 TEST (BufferTest, circularBuffer)
 
 TEST (ExtractRosbagSignalsTest, correct_execution)
 
 TEST (ExtractRosbagSignalsTest, wrong_rosbag)
 
 TEST (ExtractRosbagSignalsTest, wrong_variables)
 
 TEST_F (PalStatisticsTest, asyncPublisher)
 
 TEST_F (PalStatisticsTest, automaticRegistration)
 
 TEST_F (PalStatisticsTest, automaticRegistrationDestruction)
 
 TEST_F (PalStatisticsTest, chaosTest)
 
 TEST_F (PalStatisticsTest, chaosTest2)
 
 TEST_F (PalStatisticsTest, chaosTest3)
 
 TEST_F (PalStatisticsTest, checkValues)
 
 TEST_F (PalStatisticsTest, concurrencyMixTest)
 
 TEST_F (PalStatisticsTest, concurrencyTest)
 
 TEST_F (PalStatisticsTest, macroTest)
 
 TEST_F (PalStatisticsTest, manualRegistration)
 
 TEST_F (PalStatisticsTest, misUse)
 
 TEST_F (PalStatisticsTest, singlePublish)
 
 TEST_F (PalStatisticsTest, splitMsgTest)
 
 TEST_F (PalStatisticsTest, stressAsync)
 
 TEST_F (PalStatisticsTest, typeTest)
 
void unregisterThread (boost::shared_ptr< StatisticsRegistry > registry, const std::string &prefix, size_t n_variables)
 

Detailed Description

MIT License

Copyright (c) 2019 PAL Robotics S.L.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

Typedef Documentation

◆ IdType

typedef unsigned int pal_statistics::IdType

Definition at line 46 of file pal_statistics_utils.h.

◆ TimeData

typedef std::pair<ros::Time, double> pal_statistics::TimeData

Definition at line 15 of file extract_rosbag_signals.h.

Function Documentation

◆ customRegister() [1/4]

template<>
IdType pal_statistics::customRegister ( StatisticsRegistry registry,
const std::string &  name,
const boost::function< double()> &  funct,
RegistrationsRAII bookkeeping,
bool  enabled 
)
inline

specialization for where the variable is double, to avoid going through a function

Definition at line 77 of file registration_utils.h.

◆ customRegister() [2/4]

template<typename T >
IdType pal_statistics::customRegister ( StatisticsRegistry registry,
const std::string &  name,
const boost::function< T()> &  funct,
RegistrationsRAII bookkeeping = NULL,
bool  enabled = true 
)
inline

Default implementation that accepts any function whose return value can be casted to a double.

Definition at line 63 of file registration_utils.h.

◆ customRegister() [3/4]

template<>
IdType pal_statistics::customRegister ( StatisticsRegistry registry,
const std::string &  name,
const double *  variable,
RegistrationsRAII bookkeeping,
bool  enabled 
)
inline

specialization for where the variable is double, to avoid going through a function

Definition at line 50 of file registration_utils.h.

◆ customRegister() [4/4]

template<typename T >
IdType pal_statistics::customRegister ( StatisticsRegistry registry,
const std::string &  name,
const T *  variable,
RegistrationsRAII bookkeeping = NULL,
bool  enabled = true 
)
inline

Default implementation that accepts anything variable that can be casted to a double.

Definition at line 38 of file registration_utils.h.

◆ getRegistry()

boost::shared_ptr< StatisticsRegistry > pal_statistics::getRegistry ( const std::string &  topic)

Definition at line 12 of file pal_statistics_macros.cpp.

◆ getVariableAndValues()

std::map<std::string, double> pal_statistics::getVariableAndValues ( const pal_statistics_msgs::Statistics &  msg)

Definition at line 94 of file gtest_pal_statistics.cpp.

◆ getVariables()

std::vector<std::string> pal_statistics::getVariables ( const pal_statistics_msgs::Statistics &  msg)

Definition at line 84 of file gtest_pal_statistics.cpp.

◆ operator!=()

template<class T1 , class T2 >
bool pal_statistics::operator!= ( const MyAlloc< T1 > &  ,
const MyAlloc< T2 > &   
)
throw (
)

Definition at line 115 of file gtest_buffer.cpp.

◆ operator==()

template<class T1 , class T2 >
bool pal_statistics::operator== ( const MyAlloc< T1 > &  ,
const MyAlloc< T2 > &   
)
throw (
)

Definition at line 110 of file gtest_buffer.cpp.

◆ publish()

void pal_statistics::publish ( boost::shared_ptr< StatisticsRegistry registry,
size_t  n_variables 
)

Definition at line 437 of file gtest_pal_statistics.cpp.

◆ publishAsync()

void pal_statistics::publishAsync ( boost::shared_ptr< StatisticsRegistry registry,
size_t  n_variables 
)

Definition at line 446 of file gtest_pal_statistics.cpp.

◆ registerThread()

void pal_statistics::registerThread ( boost::shared_ptr< StatisticsRegistry registry,
const std::string &  prefix,
size_t  iterations,
double *  variable,
RegistrationsRAII bookkeeping = NULL 
)

Definition at line 416 of file gtest_pal_statistics.cpp.

◆ TEST() [1/6]

pal_statistics::TEST ( BufferTest  ,
basicTest   
)

Definition at line 122 of file gtest_buffer.cpp.

◆ TEST() [2/6]

pal_statistics::TEST ( BufferTest  ,
buffer   
)

Definition at line 141 of file gtest_buffer.cpp.

◆ TEST() [3/6]

pal_statistics::TEST ( BufferTest  ,
circularBuffer   
)

Definition at line 233 of file gtest_buffer.cpp.

◆ TEST() [4/6]

pal_statistics::TEST ( ExtractRosbagSignalsTest  ,
correct_execution   
)

Definition at line 49 of file extract_rosbag_signals_test.cpp.

◆ TEST() [5/6]

pal_statistics::TEST ( ExtractRosbagSignalsTest  ,
wrong_rosbag   
)

Definition at line 18 of file extract_rosbag_signals_test.cpp.

◆ TEST() [6/6]

pal_statistics::TEST ( ExtractRosbagSignalsTest  ,
wrong_variables   
)

Definition at line 27 of file extract_rosbag_signals_test.cpp.

◆ TEST_F() [1/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
asyncPublisher   
)

Definition at line 323 of file gtest_pal_statistics.cpp.

◆ TEST_F() [2/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
automaticRegistration   
)

Definition at line 257 of file gtest_pal_statistics.cpp.

◆ TEST_F() [3/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
automaticRegistrationDestruction   
)

Definition at line 306 of file gtest_pal_statistics.cpp.

◆ TEST_F() [4/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
chaosTest   
)

Definition at line 616 of file gtest_pal_statistics.cpp.

◆ TEST_F() [5/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
chaosTest2   
)

Definition at line 629 of file gtest_pal_statistics.cpp.

◆ TEST_F() [6/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
chaosTest3   
)

Definition at line 651 of file gtest_pal_statistics.cpp.

◆ TEST_F() [7/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
checkValues   
)

Definition at line 115 of file gtest_pal_statistics.cpp.

◆ TEST_F() [8/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
concurrencyMixTest   
)

Definition at line 560 of file gtest_pal_statistics.cpp.

◆ TEST_F() [9/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
concurrencyTest   
)

Definition at line 492 of file gtest_pal_statistics.cpp.

◆ TEST_F() [10/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
macroTest   
)

Definition at line 365 of file gtest_pal_statistics.cpp.

◆ TEST_F() [11/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
manualRegistration   
)

Definition at line 207 of file gtest_pal_statistics.cpp.

◆ TEST_F() [12/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
misUse   
)

Definition at line 104 of file gtest_pal_statistics.cpp.

◆ TEST_F() [13/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
singlePublish   
)

Definition at line 600 of file gtest_pal_statistics.cpp.

◆ TEST_F() [14/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
splitMsgTest   
)

Definition at line 674 of file gtest_pal_statistics.cpp.

◆ TEST_F() [15/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
stressAsync   
)

Definition at line 454 of file gtest_pal_statistics.cpp.

◆ TEST_F() [16/16]

pal_statistics::TEST_F ( PalStatisticsTest  ,
typeTest   
)

Definition at line 140 of file gtest_pal_statistics.cpp.

◆ unregisterThread()

void pal_statistics::unregisterThread ( boost::shared_ptr< StatisticsRegistry registry,
const std::string &  prefix,
size_t  n_variables 
)

Definition at line 426 of file gtest_pal_statistics.cpp.



pal_statistics
Author(s):
autogenerated on Fri Aug 2 2024 08:29:35