31 class NSMCallback :
public AbstractNSMCallback {
33 friend class NSMCommunicator;
34 friend class NSMNodeDaemon;
37 NSMCallback(
int timeout = 5);
38 virtual ~NSMCallback() {}
41 virtual void init(NSMCommunicator&) {}
42 virtual void term() {}
43 virtual void timeout(NSMCommunicator&) {}
44 bool perform(NSMCommunicator& com)
override;
45 virtual void ok(
const char* ,
const char* ) {}
46 virtual void fatal(
const char* ,
const char* ) {}
47 virtual void error(
const char* ,
const char* ) {}
49 virtual void vget(
const std::string& nodename,
50 const std::string& vname);
51 virtual void vset(NSMCommunicator& com,
const NSMVar& var);
52 virtual void vlistget(NSMCommunicator& com);
53 virtual void vlistset(NSMCommunicator& com);
54 virtual void vreply(NSMCommunicator&,
const std::string&,
bool) {}
58 void log(LogFile::Priority pri,
const char* format, ...);
59 void log(LogFile::Priority pri,
const std::string& msg);
63 NSMDataMap& getDataMap() {
return m_datas; }
64 NSMData& getData(
const std::string& name);
65 NSMData& getData() {
return m_data; }
66 void openData(
const std::string& name,
const std::string& format,
68 void allocData(
const std::string& name,
const std::string& format,
70 const std::string& getCategory()
const {
return m_category; }
71 void setCategory(
const std::string& category) { m_category = category; }
74 void notify(
const NSMVar& var)
override;
75 void reg(
const NSMCommand& cmd) { m_cmd_v.push_back(cmd); }
76 void addNode(
const NSMNode& node);
77 const NSMNodeMap& getNodes() {
return m_nodes; }
78 void setLogNode(
const NSMNode& node) { m_lognode = node; }
79 const NSMNode& getLogNode() {
return m_lognode; }
82 typedef std::vector<NSMCommand> NSMCommandList;
85 int addDefaultHandlers();
87 NSMCommandList& getCommandList() {
return m_cmd_v; }
88 void alloc_open(NSMCommunicator& com);
91 NSMCommandList m_cmd_v;
96 std::string m_category;
113 m_datas.insert(NSMDataMap::value_type(name, NSMData(name, format, revision)));