#include <cstdio>
#include <cstdarg>
#include <getopt.h>
#include <execinfo.h>
#include <csignal>
#include <sys/mman.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <unistd.h>
#include <fcntl.h>
#include <pthread.h>
#include <numeric>
#include "ros_ethercat_model/ros_ethercat.hpp"
#include <std_msgs/Float64.h>
#include <diagnostic_updater/DiagnosticStatusWrapper.h>
Go to the source code of this file.
Classes |
| class | RTLoopHistory |
Defines |
| #define | CLOCK_PRIO 0 |
| #define | CONTROL_PRIO 0 |
Functions |
| static void | cleanupPidFile (const char *interface) |
| void * | controlLoop (void *) |
| void * | diagnosticLoop (void *args) |
| string | generatePIDFilename (const char *interface) |
| static int | lock_fd (int fd) |
| int | main (int argc, char *argv[]) |
| static double | now () |
| static void | publishDiagnostics (RealtimePublisher< diagnostic_msgs::DiagnosticArray > &publisher) |
| void | quitRequested (int sig) |
| static int | setupPidFile (const char *interface) |
| static void * | terminate_control (RealtimePublisher< diagnostic_msgs::DiagnosticArray > *publisher, RealtimePublisher< std_msgs::Float64 > *rtpublisher, const char *message, const char *data=NULL) |
| static void | timespecInc (struct timespec &tick, int nsec) |
| void | Usage (const string &msg="") |
Variables |
| static pthread_t | controlThread |
| static pthread_attr_t | controlThreadAttr |
| struct { |
| bool allow_unprogrammed_ |
| char * interface_ |
| double period |
| char * program_ |
| char * rosparam_ |
| bool stats_ |
| } | g_options |
| static int | g_quit = 0 |
| string | g_robot_desc |
| struct { |
accumulator_set< double, stats
< tag::max, tag::mean > > cm_acc |
accumulator_set< double, stats
< tag::max, tag::mean > > ec_acc |
| double halt_rt_loop_frequency |
accumulator_set< double, stats
< tag::max, tag::mean > > jitter_acc |
| int last_overrun |
| int last_severe_overrun |
accumulator_set< double, stats
< tag::max, tag::mean > > loop_acc |
| double overrun_cm |
| double overrun_ec |
| double overrun_loop_sec |
| int overruns |
| int recent_overruns |
| double rt_loop_frequency |
| bool rt_loop_not_making_timing |
| } | g_stats |
| static const char * | PIDDIR = "/var/tmp/run/" |
| static const int | SEC_2_NSEC = 1e+9 |
| static const int | SEC_2_USEC = 1e6 |
Define Documentation
Function Documentation
| static int lock_fd |
( |
int |
fd | ) |
[static] |
| int main |
( |
int |
argc, |
|
|
char * |
argv[] |
|
) |
| |
| static double now |
( |
| ) |
[inline, static] |
| static void timespecInc |
( |
struct timespec & |
tick, |
|
|
int |
nsec |
|
) |
| [static] |
| void Usage |
( |
const string & |
msg = "" | ) |
|
Variable Documentation
const char* PIDDIR = "/var/tmp/run/" [static] |