|
xorp
|
00001 /* 00002 * obj/i386-pc-mingw32/xrl/interfaces/mfea_client_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_MFEA_CLIENT_XIF_HH__ 00015 #define __XRL_INTERFACES_MFEA_CLIENT_XIF_HH__ 00016 00017 #undef XORP_LIBRARY_NAME 00018 #define XORP_LIBRARY_NAME "XifMfeaClient" 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 XrlMfeaClientV0p1Client { 00030 public: 00031 XrlMfeaClientV0p1Client(XrlSender* s) : _sender(s) {} 00032 virtual ~XrlMfeaClientV0p1Client() {} 00033 00034 typedef XorpCallback1<void, const XrlError&>::RefPtr RecvKernelSignalMessage4CB; 00058 bool send_recv_kernel_signal_message4( 00059 const char* dst_xrl_target_name, 00060 const string& xrl_sender_name, 00061 const uint32_t& message_type, 00062 const string& vif_name, 00063 const uint32_t& vif_index, 00064 const IPv4& source_address, 00065 const IPv4& dest_address, 00066 const vector<uint8_t>& protocol_message, 00067 const RecvKernelSignalMessage4CB& cb 00068 ); 00069 00070 typedef XorpCallback1<void, const XrlError&>::RefPtr RecvDataflowSignal4CB; 00116 bool send_recv_dataflow_signal4( 00117 const char* dst_xrl_target_name, 00118 const string& xrl_sender_name, 00119 const IPv4& source_address, 00120 const IPv4& group_address, 00121 const uint32_t& threshold_interval_sec, 00122 const uint32_t& threshold_interval_usec, 00123 const uint32_t& measured_interval_sec, 00124 const uint32_t& measured_interval_usec, 00125 const uint32_t& threshold_packets, 00126 const uint32_t& threshold_bytes, 00127 const uint32_t& measured_packets, 00128 const uint32_t& measured_bytes, 00129 const bool& is_threshold_in_packets, 00130 const bool& is_threshold_in_bytes, 00131 const bool& is_geq_upcall, 00132 const bool& is_leq_upcall, 00133 const RecvDataflowSignal4CB& cb 00134 ); 00135 00136 typedef XorpCallback1<void, const XrlError&>::RefPtr RecvKernelSignalMessage6CB; 00137 00138 bool send_recv_kernel_signal_message6( 00139 const char* dst_xrl_target_name, 00140 const string& xrl_sender_name, 00141 const uint32_t& message_type, 00142 const string& vif_name, 00143 const uint32_t& vif_index, 00144 const IPv6& source_address, 00145 const IPv6& dest_address, 00146 const vector<uint8_t>& protocol_message, 00147 const RecvKernelSignalMessage6CB& cb 00148 ); 00149 00150 typedef XorpCallback1<void, const XrlError&>::RefPtr RecvDataflowSignal6CB; 00151 00152 bool send_recv_dataflow_signal6( 00153 const char* dst_xrl_target_name, 00154 const string& xrl_sender_name, 00155 const IPv6& source_address, 00156 const IPv6& group_address, 00157 const uint32_t& threshold_interval_sec, 00158 const uint32_t& threshold_interval_usec, 00159 const uint32_t& measured_interval_sec, 00160 const uint32_t& measured_interval_usec, 00161 const uint32_t& threshold_packets, 00162 const uint32_t& threshold_bytes, 00163 const uint32_t& measured_packets, 00164 const uint32_t& measured_bytes, 00165 const bool& is_threshold_in_packets, 00166 const bool& is_threshold_in_bytes, 00167 const bool& is_geq_upcall, 00168 const bool& is_leq_upcall, 00169 const RecvDataflowSignal6CB& cb 00170 ); 00171 00172 protected: 00173 XrlSender* _sender; 00174 00175 private: 00176 static void unmarshall_recv_kernel_signal_message4( 00177 const XrlError& e, 00178 XrlArgs* a, 00179 RecvKernelSignalMessage4CB cb 00180 ); 00181 00182 static void unmarshall_recv_dataflow_signal4( 00183 const XrlError& e, 00184 XrlArgs* a, 00185 RecvDataflowSignal4CB cb 00186 ); 00187 00188 static void unmarshall_recv_kernel_signal_message6( 00189 const XrlError& e, 00190 XrlArgs* a, 00191 RecvKernelSignalMessage6CB cb 00192 ); 00193 00194 static void unmarshall_recv_dataflow_signal6( 00195 const XrlError& e, 00196 XrlArgs* a, 00197 RecvDataflowSignal6CB cb 00198 ); 00199 00200 private: 00201 /* Declare cached Xrl pointers */ 00202 auto_ptr<Xrl> ap_xrl_recv_kernel_signal_message4; 00203 auto_ptr<Xrl> ap_xrl_recv_dataflow_signal4; 00204 auto_ptr<Xrl> ap_xrl_recv_kernel_signal_message6; 00205 auto_ptr<Xrl> ap_xrl_recv_dataflow_signal6; 00206 }; 00207 00208 #endif /* __XRL_INTERFACES_MFEA_CLIENT_XIF_HH__ */