Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025 #ifndef _svmsgd_alg_node_h_
00026 #define _svmsgd_alg_node_h_
00027
00028 #include <iri_base_algorithm/iri_base_algorithm.h>
00029 #include <iri_svmsgd/new_train_example_service.h>
00030 #include <iri_svmsgd/calibration_service.h>
00031 #include <iri_svmsgd/calibration.h>
00032 #include <iri_svmsgd/learn_example.h>
00033 #include <iri_svmsgd/linear_classifier.h>
00034 #include "svmsgd_alg.h"
00035 #include <vector>
00036 #include <string>
00037
00038
00039
00040
00041
00042
00043
00048 class SvmsgdAlgNode : public algorithm_base::IriBaseAlgorithm<SvmsgdAlgorithm>
00049 {
00050 private:
00051
00052
00053
00054
00055
00056 ros::ServiceServer learning_service_;
00057 bool new_example_callback(iri_svmsgd::new_train_example_service::Request &req, iri_svmsgd::new_train_example_service::Response &res);
00058
00059 ros::ServiceServer calibration_service_;
00060 bool calibration_callback(iri_svmsgd::calibration_service::Request &req, iri_svmsgd::calibration_service::Response &res);
00061
00062
00063
00064
00065
00066
00067
00068 public:
00075 SvmsgdAlgNode(void);
00076
00083 ~SvmsgdAlgNode(void);
00084
00085 protected:
00098 void mainNodeThread(void);
00099
00112 void node_config_update(Config &config, uint32_t level);
00113
00120 void addNodeDiagnostics(void);
00121
00122
00123
00124
00125 };
00126
00127 #endif