00001 #ifndef _NLJ_DUMMY_LJ_DUMMY_H_ 00002 #define _NLJ_DUMMY_LJ_DUMMY_H_ 00003 00004 #include <cstdlib> 00005 #include <ctime> 00006 #include <math.h> // for lround() 00007 00008 #include <lama_msgs/DescriptorLink.h> 00009 #include <lama_jockeys/localizing_jockey.h> 00010 00011 #include <nlj_dummy/SetDummyDescriptor.h> 00012 00013 class LJDummy : public lama_jockeys::LocalizingJockey 00014 { 00015 public: 00016 00017 LJDummy(const std::string& name, 00018 const std::string& interface_name, 00019 const std::string& set_service_name); 00020 00021 void onGetVertexDescriptor(); 00022 void onGetEdgesDescriptors(); 00023 void onLocalizeInVertex(); 00024 void onLocalizeEdge(); 00025 void onGetDissimilarity(); 00026 00027 private: 00028 00029 // Name of the interface and setter service as interface to Lama. 00030 std::string interface_name_; 00031 std::string set_service_name_; 00032 00033 // Uniform distribution for the localizing time. 00034 const double mean_localizing_time_; 00035 const double max_localizing_delta_; 00036 00037 double random_duration(); 00038 int random_angle(); 00039 double completion(double current_time); 00040 }; 00041 00042 #endif // _NLJ_DUMMY_LJ_DUMMY_H_