|
xorp
|
00001 /* 00002 * obj/i386-pc-mingw32/xrl/interfaces/cli_processor_xif.hh 00003 * vim:set sts=4 ts=8 ft=cpp: 00004 * 00005 * Copyright (c) 2001-2010 XORP, Inc and Others 00006 * See the XORP LICENSE.lgpl file for licensing, conditions, and warranties 00007 * on use. 00008 * 00009 * DO NOT EDIT THIS FILE - IT IS PROGRAMMATICALLY GENERATED 00010 * 00011 * Generated by 'clnt-gen'. 00012 */ 00013 00014 #ifndef __XRL_INTERFACES_CLI_PROCESSOR_XIF_HH__ 00015 #define __XRL_INTERFACES_CLI_PROCESSOR_XIF_HH__ 00016 00017 #undef XORP_LIBRARY_NAME 00018 #define XORP_LIBRARY_NAME "XifCliProcessor" 00019 00020 #include "libxorp/xlog.h" 00021 #include "libxorp/callback.hh" 00022 00023 #include "libxipc/xrl.hh" 00024 #include "libxipc/xrl_error.hh" 00025 #include "libxipc/xrl_sender.hh" 00026 00027 //#include <memory> 00028 00029 class XrlCliProcessorV0p1Client { 00030 public: 00031 XrlCliProcessorV0p1Client(XrlSender* s) : _sender(s) {} 00032 virtual ~XrlCliProcessorV0p1Client() {} 00033 00034 typedef XorpCallback5<void, const XrlError&, const string*, const string*, const uint32_t*, const string*>::RefPtr ProcessCommandCB; 00052 bool send_process_command( 00053 const char* dst_xrl_target_name, 00054 const string& processor_name, 00055 const string& cli_term_name, 00056 const uint32_t& cli_session_id, 00057 const string& command_name, 00058 const string& command_args, 00059 const ProcessCommandCB& cb 00060 ); 00061 00062 protected: 00063 XrlSender* _sender; 00064 00065 private: 00066 static void unmarshall_process_command( 00067 const XrlError& e, 00068 XrlArgs* a, 00069 ProcessCommandCB cb 00070 ); 00071 00072 private: 00073 /* Declare cached Xrl pointers */ 00074 auto_ptr<Xrl> ap_xrl_process_command; 00075 }; 00076 00077 #endif /* __XRL_INTERFACES_CLI_PROCESSOR_XIF_HH__ */