xorp

mld6igmp_base.hh

00001 /*
00002  * obj/i386-pc-mingw32/xrl/targets/mld6igmp_base.hh
00003  * vim:set sts=4 ts=8 ft=cpp:
00004  *
00005  * Copyright (c) 2001-2011 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 'tgt-gen'.
00012  */
00013 
00014 
00015 #ifndef __XRL_TARGETS_MLD6IGMP_BASE_HH__
00016 #define __XRL_TARGETS_MLD6IGMP_BASE_HH__
00017 
00018 #undef XORP_LIBRARY_NAME
00019 #define XORP_LIBRARY_NAME "XrlMld6igmpTarget"
00020 
00021 #include "libxorp/xlog.h"
00022 #include "libxipc/xrl_cmd_map.hh"
00023 
00024 class XrlMld6igmpTargetBase {
00025 protected:
00026     XrlCmdMap* _cmds;
00027 
00028 public:
00036     XrlMld6igmpTargetBase(XrlCmdMap* cmds = 0);
00037 
00043     virtual ~XrlMld6igmpTargetBase();
00044 
00055     bool set_command_map(XrlCmdMap* cmds);
00056 
00060     const string& get_name() const { return _cmds->name(); }
00061 
00065     const char* version() const { return "mld6igmp/0.0"; }
00066 
00067 protected:
00068 
00074     virtual XrlCmdError common_0_1_get_target_name(
00075     // Output values,
00076     string& name) = 0;
00077 #ifdef XORP_ENABLE_ASYNC_SERVER
00078     typedef
00079     XorpCallback2<void, const XrlCmdError &,
00080     const string*>::RefPtr
00081     Common01GetTargetNameRF;
00082 
00083     class Common01GetTargetNameCB {
00084         Common01GetTargetNameRF cb;
00085 
00086     public:
00087         operator const Common01GetTargetNameRF& () const { return cb; }
00088         const Common01GetTargetNameRF& operator ->() const { return cb; }
00089         Common01GetTargetNameCB(const Common01GetTargetNameRF& cb)
00090           : cb(cb) { }
00091 
00092         void fail(const XrlCmdError &e) const { cb->dispatch(e, NULL); }
00093 
00094         void respond(const string& arg_name) const {
00095             cb->dispatch(XrlCmdError::OKAY(),
00096                          &arg_name);
00097         }
00098     };
00099 
00100     struct Common01GetTargetNameRsp :
00101       public Common01GetTargetNameCB {
00102         struct args_str {
00103             string name;
00104         };
00105 
00106     private:
00107         args_str args;
00108 
00109     public:
00110         Common01GetTargetNameRsp(const Common01GetTargetNameRF& cb)
00111           : Common01GetTargetNameCB(cb) { }
00112 
00113         void respond() const {
00114             Common01GetTargetNameCB::
00115             respond(args.name);
00116         }
00117 
00118         args_str* operator ->() {
00119             return &args;
00120         }
00121     };
00122 
00123     virtual void async_common_0_1_get_target_name
00124        (
00125     Common01GetTargetNameCB);
00126 #endif
00127 
00133     virtual XrlCmdError common_0_1_get_version(
00134     // Output values,
00135     string& version) = 0;
00136 #ifdef XORP_ENABLE_ASYNC_SERVER
00137     typedef
00138     XorpCallback2<void, const XrlCmdError &,
00139     const string*>::RefPtr
00140     Common01GetVersionRF;
00141 
00142     class Common01GetVersionCB {
00143         Common01GetVersionRF cb;
00144 
00145     public:
00146         operator const Common01GetVersionRF& () const { return cb; }
00147         const Common01GetVersionRF& operator ->() const { return cb; }
00148         Common01GetVersionCB(const Common01GetVersionRF& cb)
00149           : cb(cb) { }
00150 
00151         void fail(const XrlCmdError &e) const { cb->dispatch(e, NULL); }
00152 
00153         void respond(const string& arg_version) const {
00154             cb->dispatch(XrlCmdError::OKAY(),
00155                          &arg_version);
00156         }
00157     };
00158 
00159     struct Common01GetVersionRsp :
00160       public Common01GetVersionCB {
00161         struct args_str {
00162             string version;
00163         };
00164 
00165     private:
00166         args_str args;
00167 
00168     public:
00169         Common01GetVersionRsp(const Common01GetVersionRF& cb)
00170           : Common01GetVersionCB(cb) { }
00171 
00172         void respond() const {
00173             Common01GetVersionCB::
00174             respond(args.version);
00175         }
00176 
00177         args_str* operator ->() {
00178             return &args;
00179         }
00180     };
00181 
00182     virtual void async_common_0_1_get_version
00183        (
00184     Common01GetVersionCB);
00185 #endif
00186 
00192     virtual XrlCmdError common_0_1_get_status(
00193     // Output values,
00194     uint32_t&   status,
00195     string& reason) = 0;
00196 #ifdef XORP_ENABLE_ASYNC_SERVER
00197     typedef
00198     XorpCallback3<void, const XrlCmdError &,
00199     const uint32_t*,
00200     const string*>::RefPtr
00201     Common01GetStatusRF;
00202 
00203     class Common01GetStatusCB {
00204         Common01GetStatusRF cb;
00205 
00206     public:
00207         operator const Common01GetStatusRF& () const { return cb; }
00208         const Common01GetStatusRF& operator ->() const { return cb; }
00209         Common01GetStatusCB(const Common01GetStatusRF& cb)
00210           : cb(cb) { }
00211 
00212         void fail(const XrlCmdError &e) const { cb->dispatch(e, NULL, NULL); }
00213 
00214         void respond(const uint32_t& arg_status,
00215                      const string& arg_reason) const {
00216             cb->dispatch(XrlCmdError::OKAY(),
00217                          &arg_status,
00218                          &arg_reason);
00219         }
00220     };
00221 
00222     struct Common01GetStatusRsp :
00223       public Common01GetStatusCB {
00224         struct args_str {
00225             uint32_t status;
00226             string reason;
00227         };
00228 
00229     private:
00230         args_str args;
00231 
00232     public:
00233         Common01GetStatusRsp(const Common01GetStatusRF& cb)
00234           : Common01GetStatusCB(cb) { }
00235 
00236         void respond() const {
00237             Common01GetStatusCB::
00238             respond(args.status,
00239                         args.reason);
00240         }
00241 
00242         args_str* operator ->() {
00243             return &args;
00244         }
00245     };
00246 
00247     virtual void async_common_0_1_get_status
00248        (
00249     Common01GetStatusCB);
00250 #endif
00251 
00257     virtual XrlCmdError common_0_1_shutdown() = 0;
00258 #ifdef XORP_ENABLE_ASYNC_SERVER
00259     typedef
00260     XorpCallback1<void, const XrlCmdError &>::RefPtr
00261     Common01ShutdownRF;
00262 
00263     class Common01ShutdownCB {
00264         Common01ShutdownRF cb;
00265 
00266     public:
00267         operator const Common01ShutdownRF& () const { return cb; }
00268         const Common01ShutdownRF& operator ->() const { return cb; }
00269         Common01ShutdownCB(const Common01ShutdownRF& cb)
00270           : cb(cb) { }
00271 
00272         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00273 
00274         void respond() const {
00275             cb->dispatch(XrlCmdError::OKAY());
00276         }
00277     };
00278 
00279     struct Common01ShutdownRsp :
00280       public Common01ShutdownCB {
00281         Common01ShutdownRsp(const Common01ShutdownRF& cb)
00282           : Common01ShutdownCB(cb) { }
00283 
00284     };
00285 
00286     virtual void async_common_0_1_shutdown
00287        (
00288     Common01ShutdownCB);
00289 #endif
00290 
00296     virtual XrlCmdError common_0_1_startup() = 0;
00297 #ifdef XORP_ENABLE_ASYNC_SERVER
00298     typedef
00299     XorpCallback1<void, const XrlCmdError &>::RefPtr
00300     Common01StartupRF;
00301 
00302     class Common01StartupCB {
00303         Common01StartupRF cb;
00304 
00305     public:
00306         operator const Common01StartupRF& () const { return cb; }
00307         const Common01StartupRF& operator ->() const { return cb; }
00308         Common01StartupCB(const Common01StartupRF& cb)
00309           : cb(cb) { }
00310 
00311         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00312 
00313         void respond() const {
00314             cb->dispatch(XrlCmdError::OKAY());
00315         }
00316     };
00317 
00318     struct Common01StartupRsp :
00319       public Common01StartupCB {
00320         Common01StartupRsp(const Common01StartupRF& cb)
00321           : Common01StartupCB(cb) { }
00322 
00323     };
00324 
00325     virtual void async_common_0_1_startup
00326        (
00327     Common01StartupCB);
00328 #endif
00329 
00353     virtual XrlCmdError cli_processor_0_1_process_command(
00354     // Input values,
00355     const string&   processor_name,
00356     const string&   cli_term_name,
00357     const uint32_t& cli_session_id,
00358     const string&   command_name,
00359     const string&   command_args,
00360     // Output values,
00361     string& ret_processor_name,
00362     string& ret_cli_term_name,
00363     uint32_t&   ret_cli_session_id,
00364     string& ret_command_output) = 0;
00365 #ifdef XORP_ENABLE_ASYNC_SERVER
00366     typedef
00367     XorpCallback5<void, const XrlCmdError &,
00368     const string*,
00369     const string*,
00370     const uint32_t*,
00371     const string*>::RefPtr
00372     CliProcessor01ProcessCommandRF;
00373 
00374     class CliProcessor01ProcessCommandCB {
00375         CliProcessor01ProcessCommandRF cb;
00376 
00377     public:
00378         operator const CliProcessor01ProcessCommandRF& () const { return cb; }
00379         const CliProcessor01ProcessCommandRF& operator ->() const { return cb; }
00380         CliProcessor01ProcessCommandCB(const CliProcessor01ProcessCommandRF& cb)
00381           : cb(cb) { }
00382 
00383         void fail(const XrlCmdError &e) const { cb->dispatch(e, NULL, NULL, NULL, NULL); }
00384 
00385         void respond(const string& arg_ret_processor_name,
00386                      const string& arg_ret_cli_term_name,
00387                      const uint32_t& arg_ret_cli_session_id,
00388                      const string& arg_ret_command_output) const {
00389             cb->dispatch(XrlCmdError::OKAY(),
00390                          &arg_ret_processor_name,
00391                          &arg_ret_cli_term_name,
00392                          &arg_ret_cli_session_id,
00393                          &arg_ret_command_output);
00394         }
00395     };
00396 
00397     struct CliProcessor01ProcessCommandRsp :
00398       public CliProcessor01ProcessCommandCB {
00399         struct args_str {
00400             string ret_processor_name;
00401             string ret_cli_term_name;
00402             uint32_t ret_cli_session_id;
00403             string ret_command_output;
00404         };
00405 
00406     private:
00407         args_str args;
00408 
00409     public:
00410         CliProcessor01ProcessCommandRsp(const CliProcessor01ProcessCommandRF& cb)
00411           : CliProcessor01ProcessCommandCB(cb) { }
00412 
00413         void respond() const {
00414             CliProcessor01ProcessCommandCB::
00415             respond(args.ret_processor_name,
00416                         args.ret_cli_term_name,
00417                         args.ret_cli_session_id,
00418                         args.ret_command_output);
00419         }
00420 
00421         args_str* operator ->() {
00422             return &args;
00423         }
00424     };
00425 
00426     virtual void async_cli_processor_0_1_process_command
00427        (
00428     const string&   processor_name,
00429     const string&   cli_term_name,
00430     const uint32_t& cli_session_id,
00431     const string&   command_name,
00432     const string&   command_args,
00433     CliProcessor01ProcessCommandCB);
00434 #endif
00435 
00445     virtual XrlCmdError finder_event_observer_0_1_xrl_target_birth(
00446     // Input values,
00447     const string&   target_class,
00448     const string&   target_instance) = 0;
00449 #ifdef XORP_ENABLE_ASYNC_SERVER
00450     typedef
00451     XorpCallback1<void, const XrlCmdError &>::RefPtr
00452     FinderEventObserver01XrlTargetBirthRF;
00453 
00454     class FinderEventObserver01XrlTargetBirthCB {
00455         FinderEventObserver01XrlTargetBirthRF cb;
00456 
00457     public:
00458         operator const FinderEventObserver01XrlTargetBirthRF& () const { return cb; }
00459         const FinderEventObserver01XrlTargetBirthRF& operator ->() const { return cb; }
00460         FinderEventObserver01XrlTargetBirthCB(const FinderEventObserver01XrlTargetBirthRF& cb)
00461           : cb(cb) { }
00462 
00463         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00464 
00465         void respond() const {
00466             cb->dispatch(XrlCmdError::OKAY());
00467         }
00468     };
00469 
00470     struct FinderEventObserver01XrlTargetBirthRsp :
00471       public FinderEventObserver01XrlTargetBirthCB {
00472         FinderEventObserver01XrlTargetBirthRsp(const FinderEventObserver01XrlTargetBirthRF& cb)
00473           : FinderEventObserver01XrlTargetBirthCB(cb) { }
00474 
00475     };
00476 
00477     virtual void async_finder_event_observer_0_1_xrl_target_birth
00478        (
00479     const string&   target_class,
00480     const string&   target_instance,
00481     FinderEventObserver01XrlTargetBirthCB);
00482 #endif
00483 
00493     virtual XrlCmdError finder_event_observer_0_1_xrl_target_death(
00494     // Input values,
00495     const string&   target_class,
00496     const string&   target_instance) = 0;
00497 #ifdef XORP_ENABLE_ASYNC_SERVER
00498     typedef
00499     XorpCallback1<void, const XrlCmdError &>::RefPtr
00500     FinderEventObserver01XrlTargetDeathRF;
00501 
00502     class FinderEventObserver01XrlTargetDeathCB {
00503         FinderEventObserver01XrlTargetDeathRF cb;
00504 
00505     public:
00506         operator const FinderEventObserver01XrlTargetDeathRF& () const { return cb; }
00507         const FinderEventObserver01XrlTargetDeathRF& operator ->() const { return cb; }
00508         FinderEventObserver01XrlTargetDeathCB(const FinderEventObserver01XrlTargetDeathRF& cb)
00509           : cb(cb) { }
00510 
00511         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00512 
00513         void respond() const {
00514             cb->dispatch(XrlCmdError::OKAY());
00515         }
00516     };
00517 
00518     struct FinderEventObserver01XrlTargetDeathRsp :
00519       public FinderEventObserver01XrlTargetDeathCB {
00520         FinderEventObserver01XrlTargetDeathRsp(const FinderEventObserver01XrlTargetDeathRF& cb)
00521           : FinderEventObserver01XrlTargetDeathCB(cb) { }
00522 
00523     };
00524 
00525     virtual void async_finder_event_observer_0_1_xrl_target_death
00526        (
00527     const string&   target_class,
00528     const string&   target_instance,
00529     FinderEventObserver01XrlTargetDeathCB);
00530 #endif
00531 
00560     virtual XrlCmdError raw_packet4_client_0_1_recv(
00561     // Input values,
00562     const string&   if_name,
00563     const string&   vif_name,
00564     const IPv4& src_address,
00565     const IPv4& dst_address,
00566     const uint32_t& ip_protocol,
00567     const int32_t&  ip_ttl,
00568     const int32_t&  ip_tos,
00569     const bool& ip_router_alert,
00570     const bool& ip_internet_control,
00571     const vector<uint8_t>&  payload) = 0;
00572 #ifdef XORP_ENABLE_ASYNC_SERVER
00573     typedef
00574     XorpCallback1<void, const XrlCmdError &>::RefPtr
00575     RawPacket4Client01RecvRF;
00576 
00577     class RawPacket4Client01RecvCB {
00578         RawPacket4Client01RecvRF cb;
00579 
00580     public:
00581         operator const RawPacket4Client01RecvRF& () const { return cb; }
00582         const RawPacket4Client01RecvRF& operator ->() const { return cb; }
00583         RawPacket4Client01RecvCB(const RawPacket4Client01RecvRF& cb)
00584           : cb(cb) { }
00585 
00586         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00587 
00588         void respond() const {
00589             cb->dispatch(XrlCmdError::OKAY());
00590         }
00591     };
00592 
00593     struct RawPacket4Client01RecvRsp :
00594       public RawPacket4Client01RecvCB {
00595         RawPacket4Client01RecvRsp(const RawPacket4Client01RecvRF& cb)
00596           : RawPacket4Client01RecvCB(cb) { }
00597 
00598     };
00599 
00600     virtual void async_raw_packet4_client_0_1_recv
00601        (
00602     const string&   if_name,
00603     const string&   vif_name,
00604     const IPv4& src_address,
00605     const IPv4& dst_address,
00606     const uint32_t& ip_protocol,
00607     const int32_t&  ip_ttl,
00608     const int32_t&  ip_tos,
00609     const bool& ip_router_alert,
00610     const bool& ip_internet_control,
00611     const vector<uint8_t>&  payload,
00612     RawPacket4Client01RecvCB);
00613 #endif
00614 
00650     virtual XrlCmdError raw_packet6_client_0_1_recv(
00651     // Input values,
00652     const string&   if_name,
00653     const string&   vif_name,
00654     const IPv6& src_address,
00655     const IPv6& dst_address,
00656     const uint32_t& ip_protocol,
00657     const int32_t&  ip_ttl,
00658     const int32_t&  ip_tos,
00659     const bool& ip_router_alert,
00660     const bool& ip_internet_control,
00661     const XrlAtomList&  ext_headers_type,
00662     const XrlAtomList&  ext_headers_payload,
00663     const vector<uint8_t>&  payload) = 0;
00664 #ifdef XORP_ENABLE_ASYNC_SERVER
00665     typedef
00666     XorpCallback1<void, const XrlCmdError &>::RefPtr
00667     RawPacket6Client01RecvRF;
00668 
00669     class RawPacket6Client01RecvCB {
00670         RawPacket6Client01RecvRF cb;
00671 
00672     public:
00673         operator const RawPacket6Client01RecvRF& () const { return cb; }
00674         const RawPacket6Client01RecvRF& operator ->() const { return cb; }
00675         RawPacket6Client01RecvCB(const RawPacket6Client01RecvRF& cb)
00676           : cb(cb) { }
00677 
00678         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00679 
00680         void respond() const {
00681             cb->dispatch(XrlCmdError::OKAY());
00682         }
00683     };
00684 
00685     struct RawPacket6Client01RecvRsp :
00686       public RawPacket6Client01RecvCB {
00687         RawPacket6Client01RecvRsp(const RawPacket6Client01RecvRF& cb)
00688           : RawPacket6Client01RecvCB(cb) { }
00689 
00690     };
00691 
00692     virtual void async_raw_packet6_client_0_1_recv
00693        (
00694     const string&   if_name,
00695     const string&   vif_name,
00696     const IPv6& src_address,
00697     const IPv6& dst_address,
00698     const uint32_t& ip_protocol,
00699     const int32_t&  ip_ttl,
00700     const int32_t&  ip_tos,
00701     const bool& ip_router_alert,
00702     const bool& ip_internet_control,
00703     const XrlAtomList&  ext_headers_type,
00704     const XrlAtomList&  ext_headers_payload,
00705     const vector<uint8_t>&  payload,
00706     RawPacket6Client01RecvCB);
00707 #endif
00708 
00718     virtual XrlCmdError mld6igmp_0_1_enable_vif(
00719     // Input values,
00720     const string&   vif_name,
00721     const bool& enable) = 0;
00722 #ifdef XORP_ENABLE_ASYNC_SERVER
00723     typedef
00724     XorpCallback1<void, const XrlCmdError &>::RefPtr
00725     Mld6Igmp01EnableVifRF;
00726 
00727     class Mld6Igmp01EnableVifCB {
00728         Mld6Igmp01EnableVifRF cb;
00729 
00730     public:
00731         operator const Mld6Igmp01EnableVifRF& () const { return cb; }
00732         const Mld6Igmp01EnableVifRF& operator ->() const { return cb; }
00733         Mld6Igmp01EnableVifCB(const Mld6Igmp01EnableVifRF& cb)
00734           : cb(cb) { }
00735 
00736         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00737 
00738         void respond() const {
00739             cb->dispatch(XrlCmdError::OKAY());
00740         }
00741     };
00742 
00743     struct Mld6Igmp01EnableVifRsp :
00744       public Mld6Igmp01EnableVifCB {
00745         Mld6Igmp01EnableVifRsp(const Mld6Igmp01EnableVifRF& cb)
00746           : Mld6Igmp01EnableVifCB(cb) { }
00747 
00748     };
00749 
00750     virtual void async_mld6igmp_0_1_enable_vif
00751        (
00752     const string&   vif_name,
00753     const bool& enable,
00754     Mld6Igmp01EnableVifCB);
00755 #endif
00756 
00757     virtual XrlCmdError mld6igmp_0_1_start_vif(
00758     // Input values,
00759     const string&   vif_name) = 0;
00760 #ifdef XORP_ENABLE_ASYNC_SERVER
00761     typedef
00762     XorpCallback1<void, const XrlCmdError &>::RefPtr
00763     Mld6Igmp01StartVifRF;
00764 
00765     class Mld6Igmp01StartVifCB {
00766         Mld6Igmp01StartVifRF cb;
00767 
00768     public:
00769         operator const Mld6Igmp01StartVifRF& () const { return cb; }
00770         const Mld6Igmp01StartVifRF& operator ->() const { return cb; }
00771         Mld6Igmp01StartVifCB(const Mld6Igmp01StartVifRF& cb)
00772           : cb(cb) { }
00773 
00774         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00775 
00776         void respond() const {
00777             cb->dispatch(XrlCmdError::OKAY());
00778         }
00779     };
00780 
00781     struct Mld6Igmp01StartVifRsp :
00782       public Mld6Igmp01StartVifCB {
00783         Mld6Igmp01StartVifRsp(const Mld6Igmp01StartVifRF& cb)
00784           : Mld6Igmp01StartVifCB(cb) { }
00785 
00786     };
00787 
00788     virtual void async_mld6igmp_0_1_start_vif
00789        (
00790     const string&   vif_name,
00791     Mld6Igmp01StartVifCB);
00792 #endif
00793 
00794     virtual XrlCmdError mld6igmp_0_1_stop_vif(
00795     // Input values,
00796     const string&   vif_name) = 0;
00797 #ifdef XORP_ENABLE_ASYNC_SERVER
00798     typedef
00799     XorpCallback1<void, const XrlCmdError &>::RefPtr
00800     Mld6Igmp01StopVifRF;
00801 
00802     class Mld6Igmp01StopVifCB {
00803         Mld6Igmp01StopVifRF cb;
00804 
00805     public:
00806         operator const Mld6Igmp01StopVifRF& () const { return cb; }
00807         const Mld6Igmp01StopVifRF& operator ->() const { return cb; }
00808         Mld6Igmp01StopVifCB(const Mld6Igmp01StopVifRF& cb)
00809           : cb(cb) { }
00810 
00811         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00812 
00813         void respond() const {
00814             cb->dispatch(XrlCmdError::OKAY());
00815         }
00816     };
00817 
00818     struct Mld6Igmp01StopVifRsp :
00819       public Mld6Igmp01StopVifCB {
00820         Mld6Igmp01StopVifRsp(const Mld6Igmp01StopVifRF& cb)
00821           : Mld6Igmp01StopVifCB(cb) { }
00822 
00823     };
00824 
00825     virtual void async_mld6igmp_0_1_stop_vif
00826        (
00827     const string&   vif_name,
00828     Mld6Igmp01StopVifCB);
00829 #endif
00830 
00838     virtual XrlCmdError mld6igmp_0_1_enable_all_vifs(
00839     // Input values,
00840     const bool& enable) = 0;
00841 #ifdef XORP_ENABLE_ASYNC_SERVER
00842     typedef
00843     XorpCallback1<void, const XrlCmdError &>::RefPtr
00844     Mld6Igmp01EnableAllVifsRF;
00845 
00846     class Mld6Igmp01EnableAllVifsCB {
00847         Mld6Igmp01EnableAllVifsRF cb;
00848 
00849     public:
00850         operator const Mld6Igmp01EnableAllVifsRF& () const { return cb; }
00851         const Mld6Igmp01EnableAllVifsRF& operator ->() const { return cb; }
00852         Mld6Igmp01EnableAllVifsCB(const Mld6Igmp01EnableAllVifsRF& cb)
00853           : cb(cb) { }
00854 
00855         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00856 
00857         void respond() const {
00858             cb->dispatch(XrlCmdError::OKAY());
00859         }
00860     };
00861 
00862     struct Mld6Igmp01EnableAllVifsRsp :
00863       public Mld6Igmp01EnableAllVifsCB {
00864         Mld6Igmp01EnableAllVifsRsp(const Mld6Igmp01EnableAllVifsRF& cb)
00865           : Mld6Igmp01EnableAllVifsCB(cb) { }
00866 
00867     };
00868 
00869     virtual void async_mld6igmp_0_1_enable_all_vifs
00870        (
00871     const bool& enable,
00872     Mld6Igmp01EnableAllVifsCB);
00873 #endif
00874 
00875     virtual XrlCmdError mld6igmp_0_1_start_all_vifs() = 0;
00876 #ifdef XORP_ENABLE_ASYNC_SERVER
00877     typedef
00878     XorpCallback1<void, const XrlCmdError &>::RefPtr
00879     Mld6Igmp01StartAllVifsRF;
00880 
00881     class Mld6Igmp01StartAllVifsCB {
00882         Mld6Igmp01StartAllVifsRF cb;
00883 
00884     public:
00885         operator const Mld6Igmp01StartAllVifsRF& () const { return cb; }
00886         const Mld6Igmp01StartAllVifsRF& operator ->() const { return cb; }
00887         Mld6Igmp01StartAllVifsCB(const Mld6Igmp01StartAllVifsRF& cb)
00888           : cb(cb) { }
00889 
00890         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00891 
00892         void respond() const {
00893             cb->dispatch(XrlCmdError::OKAY());
00894         }
00895     };
00896 
00897     struct Mld6Igmp01StartAllVifsRsp :
00898       public Mld6Igmp01StartAllVifsCB {
00899         Mld6Igmp01StartAllVifsRsp(const Mld6Igmp01StartAllVifsRF& cb)
00900           : Mld6Igmp01StartAllVifsCB(cb) { }
00901 
00902     };
00903 
00904     virtual void async_mld6igmp_0_1_start_all_vifs
00905        (
00906     Mld6Igmp01StartAllVifsCB);
00907 #endif
00908 
00909     virtual XrlCmdError mld6igmp_0_1_stop_all_vifs() = 0;
00910 #ifdef XORP_ENABLE_ASYNC_SERVER
00911     typedef
00912     XorpCallback1<void, const XrlCmdError &>::RefPtr
00913     Mld6Igmp01StopAllVifsRF;
00914 
00915     class Mld6Igmp01StopAllVifsCB {
00916         Mld6Igmp01StopAllVifsRF cb;
00917 
00918     public:
00919         operator const Mld6Igmp01StopAllVifsRF& () const { return cb; }
00920         const Mld6Igmp01StopAllVifsRF& operator ->() const { return cb; }
00921         Mld6Igmp01StopAllVifsCB(const Mld6Igmp01StopAllVifsRF& cb)
00922           : cb(cb) { }
00923 
00924         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00925 
00926         void respond() const {
00927             cb->dispatch(XrlCmdError::OKAY());
00928         }
00929     };
00930 
00931     struct Mld6Igmp01StopAllVifsRsp :
00932       public Mld6Igmp01StopAllVifsCB {
00933         Mld6Igmp01StopAllVifsRsp(const Mld6Igmp01StopAllVifsRF& cb)
00934           : Mld6Igmp01StopAllVifsCB(cb) { }
00935 
00936     };
00937 
00938     virtual void async_mld6igmp_0_1_stop_all_vifs
00939        (
00940     Mld6Igmp01StopAllVifsCB);
00941 #endif
00942 
00951     virtual XrlCmdError mld6igmp_0_1_enable_mld6igmp(
00952     // Input values,
00953     const bool& enable) = 0;
00954 #ifdef XORP_ENABLE_ASYNC_SERVER
00955     typedef
00956     XorpCallback1<void, const XrlCmdError &>::RefPtr
00957     Mld6Igmp01EnableMld6IgmpRF;
00958 
00959     class Mld6Igmp01EnableMld6IgmpCB {
00960         Mld6Igmp01EnableMld6IgmpRF cb;
00961 
00962     public:
00963         operator const Mld6Igmp01EnableMld6IgmpRF& () const { return cb; }
00964         const Mld6Igmp01EnableMld6IgmpRF& operator ->() const { return cb; }
00965         Mld6Igmp01EnableMld6IgmpCB(const Mld6Igmp01EnableMld6IgmpRF& cb)
00966           : cb(cb) { }
00967 
00968         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
00969 
00970         void respond() const {
00971             cb->dispatch(XrlCmdError::OKAY());
00972         }
00973     };
00974 
00975     struct Mld6Igmp01EnableMld6IgmpRsp :
00976       public Mld6Igmp01EnableMld6IgmpCB {
00977         Mld6Igmp01EnableMld6IgmpRsp(const Mld6Igmp01EnableMld6IgmpRF& cb)
00978           : Mld6Igmp01EnableMld6IgmpCB(cb) { }
00979 
00980     };
00981 
00982     virtual void async_mld6igmp_0_1_enable_mld6igmp
00983        (
00984     const bool& enable,
00985     Mld6Igmp01EnableMld6IgmpCB);
00986 #endif
00987 
00988     virtual XrlCmdError mld6igmp_0_1_start_mld6igmp() = 0;
00989 #ifdef XORP_ENABLE_ASYNC_SERVER
00990     typedef
00991     XorpCallback1<void, const XrlCmdError &>::RefPtr
00992     Mld6Igmp01StartMld6IgmpRF;
00993 
00994     class Mld6Igmp01StartMld6IgmpCB {
00995         Mld6Igmp01StartMld6IgmpRF cb;
00996 
00997     public:
00998         operator const Mld6Igmp01StartMld6IgmpRF& () const { return cb; }
00999         const Mld6Igmp01StartMld6IgmpRF& operator ->() const { return cb; }
01000         Mld6Igmp01StartMld6IgmpCB(const Mld6Igmp01StartMld6IgmpRF& cb)
01001           : cb(cb) { }
01002 
01003         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01004 
01005         void respond() const {
01006             cb->dispatch(XrlCmdError::OKAY());
01007         }
01008     };
01009 
01010     struct Mld6Igmp01StartMld6IgmpRsp :
01011       public Mld6Igmp01StartMld6IgmpCB {
01012         Mld6Igmp01StartMld6IgmpRsp(const Mld6Igmp01StartMld6IgmpRF& cb)
01013           : Mld6Igmp01StartMld6IgmpCB(cb) { }
01014 
01015     };
01016 
01017     virtual void async_mld6igmp_0_1_start_mld6igmp
01018        (
01019     Mld6Igmp01StartMld6IgmpCB);
01020 #endif
01021 
01022     virtual XrlCmdError mld6igmp_0_1_stop_mld6igmp() = 0;
01023 #ifdef XORP_ENABLE_ASYNC_SERVER
01024     typedef
01025     XorpCallback1<void, const XrlCmdError &>::RefPtr
01026     Mld6Igmp01StopMld6IgmpRF;
01027 
01028     class Mld6Igmp01StopMld6IgmpCB {
01029         Mld6Igmp01StopMld6IgmpRF cb;
01030 
01031     public:
01032         operator const Mld6Igmp01StopMld6IgmpRF& () const { return cb; }
01033         const Mld6Igmp01StopMld6IgmpRF& operator ->() const { return cb; }
01034         Mld6Igmp01StopMld6IgmpCB(const Mld6Igmp01StopMld6IgmpRF& cb)
01035           : cb(cb) { }
01036 
01037         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01038 
01039         void respond() const {
01040             cb->dispatch(XrlCmdError::OKAY());
01041         }
01042     };
01043 
01044     struct Mld6Igmp01StopMld6IgmpRsp :
01045       public Mld6Igmp01StopMld6IgmpCB {
01046         Mld6Igmp01StopMld6IgmpRsp(const Mld6Igmp01StopMld6IgmpRF& cb)
01047           : Mld6Igmp01StopMld6IgmpCB(cb) { }
01048 
01049     };
01050 
01051     virtual void async_mld6igmp_0_1_stop_mld6igmp
01052        (
01053     Mld6Igmp01StopMld6IgmpCB);
01054 #endif
01055 
01064     virtual XrlCmdError mld6igmp_0_1_enable_cli(
01065     // Input values,
01066     const bool& enable) = 0;
01067 #ifdef XORP_ENABLE_ASYNC_SERVER
01068     typedef
01069     XorpCallback1<void, const XrlCmdError &>::RefPtr
01070     Mld6Igmp01EnableCliRF;
01071 
01072     class Mld6Igmp01EnableCliCB {
01073         Mld6Igmp01EnableCliRF cb;
01074 
01075     public:
01076         operator const Mld6Igmp01EnableCliRF& () const { return cb; }
01077         const Mld6Igmp01EnableCliRF& operator ->() const { return cb; }
01078         Mld6Igmp01EnableCliCB(const Mld6Igmp01EnableCliRF& cb)
01079           : cb(cb) { }
01080 
01081         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01082 
01083         void respond() const {
01084             cb->dispatch(XrlCmdError::OKAY());
01085         }
01086     };
01087 
01088     struct Mld6Igmp01EnableCliRsp :
01089       public Mld6Igmp01EnableCliCB {
01090         Mld6Igmp01EnableCliRsp(const Mld6Igmp01EnableCliRF& cb)
01091           : Mld6Igmp01EnableCliCB(cb) { }
01092 
01093     };
01094 
01095     virtual void async_mld6igmp_0_1_enable_cli
01096        (
01097     const bool& enable,
01098     Mld6Igmp01EnableCliCB);
01099 #endif
01100 
01101     virtual XrlCmdError mld6igmp_0_1_start_cli() = 0;
01102 #ifdef XORP_ENABLE_ASYNC_SERVER
01103     typedef
01104     XorpCallback1<void, const XrlCmdError &>::RefPtr
01105     Mld6Igmp01StartCliRF;
01106 
01107     class Mld6Igmp01StartCliCB {
01108         Mld6Igmp01StartCliRF cb;
01109 
01110     public:
01111         operator const Mld6Igmp01StartCliRF& () const { return cb; }
01112         const Mld6Igmp01StartCliRF& operator ->() const { return cb; }
01113         Mld6Igmp01StartCliCB(const Mld6Igmp01StartCliRF& cb)
01114           : cb(cb) { }
01115 
01116         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01117 
01118         void respond() const {
01119             cb->dispatch(XrlCmdError::OKAY());
01120         }
01121     };
01122 
01123     struct Mld6Igmp01StartCliRsp :
01124       public Mld6Igmp01StartCliCB {
01125         Mld6Igmp01StartCliRsp(const Mld6Igmp01StartCliRF& cb)
01126           : Mld6Igmp01StartCliCB(cb) { }
01127 
01128     };
01129 
01130     virtual void async_mld6igmp_0_1_start_cli
01131        (
01132     Mld6Igmp01StartCliCB);
01133 #endif
01134 
01135     virtual XrlCmdError mld6igmp_0_1_stop_cli() = 0;
01136 #ifdef XORP_ENABLE_ASYNC_SERVER
01137     typedef
01138     XorpCallback1<void, const XrlCmdError &>::RefPtr
01139     Mld6Igmp01StopCliRF;
01140 
01141     class Mld6Igmp01StopCliCB {
01142         Mld6Igmp01StopCliRF cb;
01143 
01144     public:
01145         operator const Mld6Igmp01StopCliRF& () const { return cb; }
01146         const Mld6Igmp01StopCliRF& operator ->() const { return cb; }
01147         Mld6Igmp01StopCliCB(const Mld6Igmp01StopCliRF& cb)
01148           : cb(cb) { }
01149 
01150         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01151 
01152         void respond() const {
01153             cb->dispatch(XrlCmdError::OKAY());
01154         }
01155     };
01156 
01157     struct Mld6Igmp01StopCliRsp :
01158       public Mld6Igmp01StopCliCB {
01159         Mld6Igmp01StopCliRsp(const Mld6Igmp01StopCliRF& cb)
01160           : Mld6Igmp01StopCliCB(cb) { }
01161 
01162     };
01163 
01164     virtual void async_mld6igmp_0_1_stop_cli
01165        (
01166     Mld6Igmp01StopCliCB);
01167 #endif
01168 
01178     virtual XrlCmdError mld6igmp_0_1_get_vif_proto_version(
01179     // Input values,
01180     const string&   vif_name,
01181     // Output values,
01182     uint32_t&   proto_version) = 0;
01183 #ifdef XORP_ENABLE_ASYNC_SERVER
01184     typedef
01185     XorpCallback2<void, const XrlCmdError &,
01186     const uint32_t*>::RefPtr
01187     Mld6Igmp01GetVifProtoVersionRF;
01188 
01189     class Mld6Igmp01GetVifProtoVersionCB {
01190         Mld6Igmp01GetVifProtoVersionRF cb;
01191 
01192     public:
01193         operator const Mld6Igmp01GetVifProtoVersionRF& () const { return cb; }
01194         const Mld6Igmp01GetVifProtoVersionRF& operator ->() const { return cb; }
01195         Mld6Igmp01GetVifProtoVersionCB(const Mld6Igmp01GetVifProtoVersionRF& cb)
01196           : cb(cb) { }
01197 
01198         void fail(const XrlCmdError &e) const { cb->dispatch(e, NULL); }
01199 
01200         void respond(const uint32_t& arg_proto_version) const {
01201             cb->dispatch(XrlCmdError::OKAY(),
01202                          &arg_proto_version);
01203         }
01204     };
01205 
01206     struct Mld6Igmp01GetVifProtoVersionRsp :
01207       public Mld6Igmp01GetVifProtoVersionCB {
01208         struct args_str {
01209             uint32_t proto_version;
01210         };
01211 
01212     private:
01213         args_str args;
01214 
01215     public:
01216         Mld6Igmp01GetVifProtoVersionRsp(const Mld6Igmp01GetVifProtoVersionRF& cb)
01217           : Mld6Igmp01GetVifProtoVersionCB(cb) { }
01218 
01219         void respond() const {
01220             Mld6Igmp01GetVifProtoVersionCB::
01221             respond(args.proto_version);
01222         }
01223 
01224         args_str* operator ->() {
01225             return &args;
01226         }
01227     };
01228 
01229     virtual void async_mld6igmp_0_1_get_vif_proto_version
01230        (
01231     const string&   vif_name,
01232     Mld6Igmp01GetVifProtoVersionCB);
01233 #endif
01234 
01244     virtual XrlCmdError mld6igmp_0_1_set_vif_proto_version(
01245     // Input values,
01246     const string&   vif_name,
01247     const uint32_t& proto_version) = 0;
01248 #ifdef XORP_ENABLE_ASYNC_SERVER
01249     typedef
01250     XorpCallback1<void, const XrlCmdError &>::RefPtr
01251     Mld6Igmp01SetVifProtoVersionRF;
01252 
01253     class Mld6Igmp01SetVifProtoVersionCB {
01254         Mld6Igmp01SetVifProtoVersionRF cb;
01255 
01256     public:
01257         operator const Mld6Igmp01SetVifProtoVersionRF& () const { return cb; }
01258         const Mld6Igmp01SetVifProtoVersionRF& operator ->() const { return cb; }
01259         Mld6Igmp01SetVifProtoVersionCB(const Mld6Igmp01SetVifProtoVersionRF& cb)
01260           : cb(cb) { }
01261 
01262         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01263 
01264         void respond() const {
01265             cb->dispatch(XrlCmdError::OKAY());
01266         }
01267     };
01268 
01269     struct Mld6Igmp01SetVifProtoVersionRsp :
01270       public Mld6Igmp01SetVifProtoVersionCB {
01271         Mld6Igmp01SetVifProtoVersionRsp(const Mld6Igmp01SetVifProtoVersionRF& cb)
01272           : Mld6Igmp01SetVifProtoVersionCB(cb) { }
01273 
01274     };
01275 
01276     virtual void async_mld6igmp_0_1_set_vif_proto_version
01277        (
01278     const string&   vif_name,
01279     const uint32_t& proto_version,
01280     Mld6Igmp01SetVifProtoVersionCB);
01281 #endif
01282 
01290     virtual XrlCmdError mld6igmp_0_1_reset_vif_proto_version(
01291     // Input values,
01292     const string&   vif_name) = 0;
01293 #ifdef XORP_ENABLE_ASYNC_SERVER
01294     typedef
01295     XorpCallback1<void, const XrlCmdError &>::RefPtr
01296     Mld6Igmp01ResetVifProtoVersionRF;
01297 
01298     class Mld6Igmp01ResetVifProtoVersionCB {
01299         Mld6Igmp01ResetVifProtoVersionRF cb;
01300 
01301     public:
01302         operator const Mld6Igmp01ResetVifProtoVersionRF& () const { return cb; }
01303         const Mld6Igmp01ResetVifProtoVersionRF& operator ->() const { return cb; }
01304         Mld6Igmp01ResetVifProtoVersionCB(const Mld6Igmp01ResetVifProtoVersionRF& cb)
01305           : cb(cb) { }
01306 
01307         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01308 
01309         void respond() const {
01310             cb->dispatch(XrlCmdError::OKAY());
01311         }
01312     };
01313 
01314     struct Mld6Igmp01ResetVifProtoVersionRsp :
01315       public Mld6Igmp01ResetVifProtoVersionCB {
01316         Mld6Igmp01ResetVifProtoVersionRsp(const Mld6Igmp01ResetVifProtoVersionRF& cb)
01317           : Mld6Igmp01ResetVifProtoVersionCB(cb) { }
01318 
01319     };
01320 
01321     virtual void async_mld6igmp_0_1_reset_vif_proto_version
01322        (
01323     const string&   vif_name,
01324     Mld6Igmp01ResetVifProtoVersionCB);
01325 #endif
01326 
01338     virtual XrlCmdError mld6igmp_0_1_get_vif_ip_router_alert_option_check(
01339     // Input values,
01340     const string&   vif_name,
01341     // Output values,
01342     bool&   enabled) = 0;
01343 #ifdef XORP_ENABLE_ASYNC_SERVER
01344     typedef
01345     XorpCallback2<void, const XrlCmdError &,
01346     const bool*>::RefPtr
01347     Mld6Igmp01GetVifIpRouterAlertOptionCheckRF;
01348 
01349     class Mld6Igmp01GetVifIpRouterAlertOptionCheckCB {
01350         Mld6Igmp01GetVifIpRouterAlertOptionCheckRF cb;
01351 
01352     public:
01353         operator const Mld6Igmp01GetVifIpRouterAlertOptionCheckRF& () const { return cb; }
01354         const Mld6Igmp01GetVifIpRouterAlertOptionCheckRF& operator ->() const { return cb; }
01355         Mld6Igmp01GetVifIpRouterAlertOptionCheckCB(const Mld6Igmp01GetVifIpRouterAlertOptionCheckRF& cb)
01356           : cb(cb) { }
01357 
01358         void fail(const XrlCmdError &e) const { cb->dispatch(e, NULL); }
01359 
01360         void respond(const bool& arg_enabled) const {
01361             cb->dispatch(XrlCmdError::OKAY(),
01362                          &arg_enabled);
01363         }
01364     };
01365 
01366     struct Mld6Igmp01GetVifIpRouterAlertOptionCheckRsp :
01367       public Mld6Igmp01GetVifIpRouterAlertOptionCheckCB {
01368         struct args_str {
01369             bool enabled;
01370         };
01371 
01372     private:
01373         args_str args;
01374 
01375     public:
01376         Mld6Igmp01GetVifIpRouterAlertOptionCheckRsp(const Mld6Igmp01GetVifIpRouterAlertOptionCheckRF& cb)
01377           : Mld6Igmp01GetVifIpRouterAlertOptionCheckCB(cb) { }
01378 
01379         void respond() const {
01380             Mld6Igmp01GetVifIpRouterAlertOptionCheckCB::
01381             respond(args.enabled);
01382         }
01383 
01384         args_str* operator ->() {
01385             return &args;
01386         }
01387     };
01388 
01389     virtual void async_mld6igmp_0_1_get_vif_ip_router_alert_option_check
01390        (
01391     const string&   vif_name,
01392     Mld6Igmp01GetVifIpRouterAlertOptionCheckCB);
01393 #endif
01394 
01406     virtual XrlCmdError mld6igmp_0_1_set_vif_ip_router_alert_option_check(
01407     // Input values,
01408     const string&   vif_name,
01409     const bool& enable) = 0;
01410 #ifdef XORP_ENABLE_ASYNC_SERVER
01411     typedef
01412     XorpCallback1<void, const XrlCmdError &>::RefPtr
01413     Mld6Igmp01SetVifIpRouterAlertOptionCheckRF;
01414 
01415     class Mld6Igmp01SetVifIpRouterAlertOptionCheckCB {
01416         Mld6Igmp01SetVifIpRouterAlertOptionCheckRF cb;
01417 
01418     public:
01419         operator const Mld6Igmp01SetVifIpRouterAlertOptionCheckRF& () const { return cb; }
01420         const Mld6Igmp01SetVifIpRouterAlertOptionCheckRF& operator ->() const { return cb; }
01421         Mld6Igmp01SetVifIpRouterAlertOptionCheckCB(const Mld6Igmp01SetVifIpRouterAlertOptionCheckRF& cb)
01422           : cb(cb) { }
01423 
01424         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01425 
01426         void respond() const {
01427             cb->dispatch(XrlCmdError::OKAY());
01428         }
01429     };
01430 
01431     struct Mld6Igmp01SetVifIpRouterAlertOptionCheckRsp :
01432       public Mld6Igmp01SetVifIpRouterAlertOptionCheckCB {
01433         Mld6Igmp01SetVifIpRouterAlertOptionCheckRsp(const Mld6Igmp01SetVifIpRouterAlertOptionCheckRF& cb)
01434           : Mld6Igmp01SetVifIpRouterAlertOptionCheckCB(cb) { }
01435 
01436     };
01437 
01438     virtual void async_mld6igmp_0_1_set_vif_ip_router_alert_option_check
01439        (
01440     const string&   vif_name,
01441     const bool& enable,
01442     Mld6Igmp01SetVifIpRouterAlertOptionCheckCB);
01443 #endif
01444 
01453     virtual XrlCmdError mld6igmp_0_1_reset_vif_ip_router_alert_option_check(
01454     // Input values,
01455     const string&   vif_name) = 0;
01456 #ifdef XORP_ENABLE_ASYNC_SERVER
01457     typedef
01458     XorpCallback1<void, const XrlCmdError &>::RefPtr
01459     Mld6Igmp01ResetVifIpRouterAlertOptionCheckRF;
01460 
01461     class Mld6Igmp01ResetVifIpRouterAlertOptionCheckCB {
01462         Mld6Igmp01ResetVifIpRouterAlertOptionCheckRF cb;
01463 
01464     public:
01465         operator const Mld6Igmp01ResetVifIpRouterAlertOptionCheckRF& () const { return cb; }
01466         const Mld6Igmp01ResetVifIpRouterAlertOptionCheckRF& operator ->() const { return cb; }
01467         Mld6Igmp01ResetVifIpRouterAlertOptionCheckCB(const Mld6Igmp01ResetVifIpRouterAlertOptionCheckRF& cb)
01468           : cb(cb) { }
01469 
01470         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01471 
01472         void respond() const {
01473             cb->dispatch(XrlCmdError::OKAY());
01474         }
01475     };
01476 
01477     struct Mld6Igmp01ResetVifIpRouterAlertOptionCheckRsp :
01478       public Mld6Igmp01ResetVifIpRouterAlertOptionCheckCB {
01479         Mld6Igmp01ResetVifIpRouterAlertOptionCheckRsp(const Mld6Igmp01ResetVifIpRouterAlertOptionCheckRF& cb)
01480           : Mld6Igmp01ResetVifIpRouterAlertOptionCheckCB(cb) { }
01481 
01482     };
01483 
01484     virtual void async_mld6igmp_0_1_reset_vif_ip_router_alert_option_check
01485        (
01486     const string&   vif_name,
01487     Mld6Igmp01ResetVifIpRouterAlertOptionCheckCB);
01488 #endif
01489 
01502     virtual XrlCmdError mld6igmp_0_1_get_vif_query_interval(
01503     // Input values,
01504     const string&   vif_name,
01505     // Output values,
01506     uint32_t&   interval_sec,
01507     uint32_t&   interval_usec) = 0;
01508 #ifdef XORP_ENABLE_ASYNC_SERVER
01509     typedef
01510     XorpCallback3<void, const XrlCmdError &,
01511     const uint32_t*,
01512     const uint32_t*>::RefPtr
01513     Mld6Igmp01GetVifQueryIntervalRF;
01514 
01515     class Mld6Igmp01GetVifQueryIntervalCB {
01516         Mld6Igmp01GetVifQueryIntervalRF cb;
01517 
01518     public:
01519         operator const Mld6Igmp01GetVifQueryIntervalRF& () const { return cb; }
01520         const Mld6Igmp01GetVifQueryIntervalRF& operator ->() const { return cb; }
01521         Mld6Igmp01GetVifQueryIntervalCB(const Mld6Igmp01GetVifQueryIntervalRF& cb)
01522           : cb(cb) { }
01523 
01524         void fail(const XrlCmdError &e) const { cb->dispatch(e, NULL, NULL); }
01525 
01526         void respond(const uint32_t& arg_interval_sec,
01527                      const uint32_t& arg_interval_usec) const {
01528             cb->dispatch(XrlCmdError::OKAY(),
01529                          &arg_interval_sec,
01530                          &arg_interval_usec);
01531         }
01532     };
01533 
01534     struct Mld6Igmp01GetVifQueryIntervalRsp :
01535       public Mld6Igmp01GetVifQueryIntervalCB {
01536         struct args_str {
01537             uint32_t interval_sec;
01538             uint32_t interval_usec;
01539         };
01540 
01541     private:
01542         args_str args;
01543 
01544     public:
01545         Mld6Igmp01GetVifQueryIntervalRsp(const Mld6Igmp01GetVifQueryIntervalRF& cb)
01546           : Mld6Igmp01GetVifQueryIntervalCB(cb) { }
01547 
01548         void respond() const {
01549             Mld6Igmp01GetVifQueryIntervalCB::
01550             respond(args.interval_sec,
01551                         args.interval_usec);
01552         }
01553 
01554         args_str* operator ->() {
01555             return &args;
01556         }
01557     };
01558 
01559     virtual void async_mld6igmp_0_1_get_vif_query_interval
01560        (
01561     const string&   vif_name,
01562     Mld6Igmp01GetVifQueryIntervalCB);
01563 #endif
01564 
01577     virtual XrlCmdError mld6igmp_0_1_set_vif_query_interval(
01578     // Input values,
01579     const string&   vif_name,
01580     const uint32_t& interval_sec,
01581     const uint32_t& interval_usec) = 0;
01582 #ifdef XORP_ENABLE_ASYNC_SERVER
01583     typedef
01584     XorpCallback1<void, const XrlCmdError &>::RefPtr
01585     Mld6Igmp01SetVifQueryIntervalRF;
01586 
01587     class Mld6Igmp01SetVifQueryIntervalCB {
01588         Mld6Igmp01SetVifQueryIntervalRF cb;
01589 
01590     public:
01591         operator const Mld6Igmp01SetVifQueryIntervalRF& () const { return cb; }
01592         const Mld6Igmp01SetVifQueryIntervalRF& operator ->() const { return cb; }
01593         Mld6Igmp01SetVifQueryIntervalCB(const Mld6Igmp01SetVifQueryIntervalRF& cb)
01594           : cb(cb) { }
01595 
01596         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01597 
01598         void respond() const {
01599             cb->dispatch(XrlCmdError::OKAY());
01600         }
01601     };
01602 
01603     struct Mld6Igmp01SetVifQueryIntervalRsp :
01604       public Mld6Igmp01SetVifQueryIntervalCB {
01605         Mld6Igmp01SetVifQueryIntervalRsp(const Mld6Igmp01SetVifQueryIntervalRF& cb)
01606           : Mld6Igmp01SetVifQueryIntervalCB(cb) { }
01607 
01608     };
01609 
01610     virtual void async_mld6igmp_0_1_set_vif_query_interval
01611        (
01612     const string&   vif_name,
01613     const uint32_t& interval_sec,
01614     const uint32_t& interval_usec,
01615     Mld6Igmp01SetVifQueryIntervalCB);
01616 #endif
01617 
01625     virtual XrlCmdError mld6igmp_0_1_reset_vif_query_interval(
01626     // Input values,
01627     const string&   vif_name) = 0;
01628 #ifdef XORP_ENABLE_ASYNC_SERVER
01629     typedef
01630     XorpCallback1<void, const XrlCmdError &>::RefPtr
01631     Mld6Igmp01ResetVifQueryIntervalRF;
01632 
01633     class Mld6Igmp01ResetVifQueryIntervalCB {
01634         Mld6Igmp01ResetVifQueryIntervalRF cb;
01635 
01636     public:
01637         operator const Mld6Igmp01ResetVifQueryIntervalRF& () const { return cb; }
01638         const Mld6Igmp01ResetVifQueryIntervalRF& operator ->() const { return cb; }
01639         Mld6Igmp01ResetVifQueryIntervalCB(const Mld6Igmp01ResetVifQueryIntervalRF& cb)
01640           : cb(cb) { }
01641 
01642         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01643 
01644         void respond() const {
01645             cb->dispatch(XrlCmdError::OKAY());
01646         }
01647     };
01648 
01649     struct Mld6Igmp01ResetVifQueryIntervalRsp :
01650       public Mld6Igmp01ResetVifQueryIntervalCB {
01651         Mld6Igmp01ResetVifQueryIntervalRsp(const Mld6Igmp01ResetVifQueryIntervalRF& cb)
01652           : Mld6Igmp01ResetVifQueryIntervalCB(cb) { }
01653 
01654     };
01655 
01656     virtual void async_mld6igmp_0_1_reset_vif_query_interval
01657        (
01658     const string&   vif_name,
01659     Mld6Igmp01ResetVifQueryIntervalCB);
01660 #endif
01661 
01674     virtual XrlCmdError mld6igmp_0_1_get_vif_query_last_member_interval(
01675     // Input values,
01676     const string&   vif_name,
01677     // Output values,
01678     uint32_t&   interval_sec,
01679     uint32_t&   interval_usec) = 0;
01680 #ifdef XORP_ENABLE_ASYNC_SERVER
01681     typedef
01682     XorpCallback3<void, const XrlCmdError &,
01683     const uint32_t*,
01684     const uint32_t*>::RefPtr
01685     Mld6Igmp01GetVifQueryLastMemberIntervalRF;
01686 
01687     class Mld6Igmp01GetVifQueryLastMemberIntervalCB {
01688         Mld6Igmp01GetVifQueryLastMemberIntervalRF cb;
01689 
01690     public:
01691         operator const Mld6Igmp01GetVifQueryLastMemberIntervalRF& () const { return cb; }
01692         const Mld6Igmp01GetVifQueryLastMemberIntervalRF& operator ->() const { return cb; }
01693         Mld6Igmp01GetVifQueryLastMemberIntervalCB(const Mld6Igmp01GetVifQueryLastMemberIntervalRF& cb)
01694           : cb(cb) { }
01695 
01696         void fail(const XrlCmdError &e) const { cb->dispatch(e, NULL, NULL); }
01697 
01698         void respond(const uint32_t& arg_interval_sec,
01699                      const uint32_t& arg_interval_usec) const {
01700             cb->dispatch(XrlCmdError::OKAY(),
01701                          &arg_interval_sec,
01702                          &arg_interval_usec);
01703         }
01704     };
01705 
01706     struct Mld6Igmp01GetVifQueryLastMemberIntervalRsp :
01707       public Mld6Igmp01GetVifQueryLastMemberIntervalCB {
01708         struct args_str {
01709             uint32_t interval_sec;
01710             uint32_t interval_usec;
01711         };
01712 
01713     private:
01714         args_str args;
01715 
01716     public:
01717         Mld6Igmp01GetVifQueryLastMemberIntervalRsp(const Mld6Igmp01GetVifQueryLastMemberIntervalRF& cb)
01718           : Mld6Igmp01GetVifQueryLastMemberIntervalCB(cb) { }
01719 
01720         void respond() const {
01721             Mld6Igmp01GetVifQueryLastMemberIntervalCB::
01722             respond(args.interval_sec,
01723                         args.interval_usec);
01724         }
01725 
01726         args_str* operator ->() {
01727             return &args;
01728         }
01729     };
01730 
01731     virtual void async_mld6igmp_0_1_get_vif_query_last_member_interval
01732        (
01733     const string&   vif_name,
01734     Mld6Igmp01GetVifQueryLastMemberIntervalCB);
01735 #endif
01736 
01749     virtual XrlCmdError mld6igmp_0_1_set_vif_query_last_member_interval(
01750     // Input values,
01751     const string&   vif_name,
01752     const uint32_t& interval_sec,
01753     const uint32_t& interval_usec) = 0;
01754 #ifdef XORP_ENABLE_ASYNC_SERVER
01755     typedef
01756     XorpCallback1<void, const XrlCmdError &>::RefPtr
01757     Mld6Igmp01SetVifQueryLastMemberIntervalRF;
01758 
01759     class Mld6Igmp01SetVifQueryLastMemberIntervalCB {
01760         Mld6Igmp01SetVifQueryLastMemberIntervalRF cb;
01761 
01762     public:
01763         operator const Mld6Igmp01SetVifQueryLastMemberIntervalRF& () const { return cb; }
01764         const Mld6Igmp01SetVifQueryLastMemberIntervalRF& operator ->() const { return cb; }
01765         Mld6Igmp01SetVifQueryLastMemberIntervalCB(const Mld6Igmp01SetVifQueryLastMemberIntervalRF& cb)
01766           : cb(cb) { }
01767 
01768         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01769 
01770         void respond() const {
01771             cb->dispatch(XrlCmdError::OKAY());
01772         }
01773     };
01774 
01775     struct Mld6Igmp01SetVifQueryLastMemberIntervalRsp :
01776       public Mld6Igmp01SetVifQueryLastMemberIntervalCB {
01777         Mld6Igmp01SetVifQueryLastMemberIntervalRsp(const Mld6Igmp01SetVifQueryLastMemberIntervalRF& cb)
01778           : Mld6Igmp01SetVifQueryLastMemberIntervalCB(cb) { }
01779 
01780     };
01781 
01782     virtual void async_mld6igmp_0_1_set_vif_query_last_member_interval
01783        (
01784     const string&   vif_name,
01785     const uint32_t& interval_sec,
01786     const uint32_t& interval_usec,
01787     Mld6Igmp01SetVifQueryLastMemberIntervalCB);
01788 #endif
01789 
01798     virtual XrlCmdError mld6igmp_0_1_reset_vif_query_last_member_interval(
01799     // Input values,
01800     const string&   vif_name) = 0;
01801 #ifdef XORP_ENABLE_ASYNC_SERVER
01802     typedef
01803     XorpCallback1<void, const XrlCmdError &>::RefPtr
01804     Mld6Igmp01ResetVifQueryLastMemberIntervalRF;
01805 
01806     class Mld6Igmp01ResetVifQueryLastMemberIntervalCB {
01807         Mld6Igmp01ResetVifQueryLastMemberIntervalRF cb;
01808 
01809     public:
01810         operator const Mld6Igmp01ResetVifQueryLastMemberIntervalRF& () const { return cb; }
01811         const Mld6Igmp01ResetVifQueryLastMemberIntervalRF& operator ->() const { return cb; }
01812         Mld6Igmp01ResetVifQueryLastMemberIntervalCB(const Mld6Igmp01ResetVifQueryLastMemberIntervalRF& cb)
01813           : cb(cb) { }
01814 
01815         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01816 
01817         void respond() const {
01818             cb->dispatch(XrlCmdError::OKAY());
01819         }
01820     };
01821 
01822     struct Mld6Igmp01ResetVifQueryLastMemberIntervalRsp :
01823       public Mld6Igmp01ResetVifQueryLastMemberIntervalCB {
01824         Mld6Igmp01ResetVifQueryLastMemberIntervalRsp(const Mld6Igmp01ResetVifQueryLastMemberIntervalRF& cb)
01825           : Mld6Igmp01ResetVifQueryLastMemberIntervalCB(cb) { }
01826 
01827     };
01828 
01829     virtual void async_mld6igmp_0_1_reset_vif_query_last_member_interval
01830        (
01831     const string&   vif_name,
01832     Mld6Igmp01ResetVifQueryLastMemberIntervalCB);
01833 #endif
01834 
01847     virtual XrlCmdError mld6igmp_0_1_get_vif_query_response_interval(
01848     // Input values,
01849     const string&   vif_name,
01850     // Output values,
01851     uint32_t&   interval_sec,
01852     uint32_t&   interval_usec) = 0;
01853 #ifdef XORP_ENABLE_ASYNC_SERVER
01854     typedef
01855     XorpCallback3<void, const XrlCmdError &,
01856     const uint32_t*,
01857     const uint32_t*>::RefPtr
01858     Mld6Igmp01GetVifQueryResponseIntervalRF;
01859 
01860     class Mld6Igmp01GetVifQueryResponseIntervalCB {
01861         Mld6Igmp01GetVifQueryResponseIntervalRF cb;
01862 
01863     public:
01864         operator const Mld6Igmp01GetVifQueryResponseIntervalRF& () const { return cb; }
01865         const Mld6Igmp01GetVifQueryResponseIntervalRF& operator ->() const { return cb; }
01866         Mld6Igmp01GetVifQueryResponseIntervalCB(const Mld6Igmp01GetVifQueryResponseIntervalRF& cb)
01867           : cb(cb) { }
01868 
01869         void fail(const XrlCmdError &e) const { cb->dispatch(e, NULL, NULL); }
01870 
01871         void respond(const uint32_t& arg_interval_sec,
01872                      const uint32_t& arg_interval_usec) const {
01873             cb->dispatch(XrlCmdError::OKAY(),
01874                          &arg_interval_sec,
01875                          &arg_interval_usec);
01876         }
01877     };
01878 
01879     struct Mld6Igmp01GetVifQueryResponseIntervalRsp :
01880       public Mld6Igmp01GetVifQueryResponseIntervalCB {
01881         struct args_str {
01882             uint32_t interval_sec;
01883             uint32_t interval_usec;
01884         };
01885 
01886     private:
01887         args_str args;
01888 
01889     public:
01890         Mld6Igmp01GetVifQueryResponseIntervalRsp(const Mld6Igmp01GetVifQueryResponseIntervalRF& cb)
01891           : Mld6Igmp01GetVifQueryResponseIntervalCB(cb) { }
01892 
01893         void respond() const {
01894             Mld6Igmp01GetVifQueryResponseIntervalCB::
01895             respond(args.interval_sec,
01896                         args.interval_usec);
01897         }
01898 
01899         args_str* operator ->() {
01900             return &args;
01901         }
01902     };
01903 
01904     virtual void async_mld6igmp_0_1_get_vif_query_response_interval
01905        (
01906     const string&   vif_name,
01907     Mld6Igmp01GetVifQueryResponseIntervalCB);
01908 #endif
01909 
01922     virtual XrlCmdError mld6igmp_0_1_set_vif_query_response_interval(
01923     // Input values,
01924     const string&   vif_name,
01925     const uint32_t& interval_sec,
01926     const uint32_t& interval_usec) = 0;
01927 #ifdef XORP_ENABLE_ASYNC_SERVER
01928     typedef
01929     XorpCallback1<void, const XrlCmdError &>::RefPtr
01930     Mld6Igmp01SetVifQueryResponseIntervalRF;
01931 
01932     class Mld6Igmp01SetVifQueryResponseIntervalCB {
01933         Mld6Igmp01SetVifQueryResponseIntervalRF cb;
01934 
01935     public:
01936         operator const Mld6Igmp01SetVifQueryResponseIntervalRF& () const { return cb; }
01937         const Mld6Igmp01SetVifQueryResponseIntervalRF& operator ->() const { return cb; }
01938         Mld6Igmp01SetVifQueryResponseIntervalCB(const Mld6Igmp01SetVifQueryResponseIntervalRF& cb)
01939           : cb(cb) { }
01940 
01941         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01942 
01943         void respond() const {
01944             cb->dispatch(XrlCmdError::OKAY());
01945         }
01946     };
01947 
01948     struct Mld6Igmp01SetVifQueryResponseIntervalRsp :
01949       public Mld6Igmp01SetVifQueryResponseIntervalCB {
01950         Mld6Igmp01SetVifQueryResponseIntervalRsp(const Mld6Igmp01SetVifQueryResponseIntervalRF& cb)
01951           : Mld6Igmp01SetVifQueryResponseIntervalCB(cb) { }
01952 
01953     };
01954 
01955     virtual void async_mld6igmp_0_1_set_vif_query_response_interval
01956        (
01957     const string&   vif_name,
01958     const uint32_t& interval_sec,
01959     const uint32_t& interval_usec,
01960     Mld6Igmp01SetVifQueryResponseIntervalCB);
01961 #endif
01962 
01970     virtual XrlCmdError mld6igmp_0_1_reset_vif_query_response_interval(
01971     // Input values,
01972     const string&   vif_name) = 0;
01973 #ifdef XORP_ENABLE_ASYNC_SERVER
01974     typedef
01975     XorpCallback1<void, const XrlCmdError &>::RefPtr
01976     Mld6Igmp01ResetVifQueryResponseIntervalRF;
01977 
01978     class Mld6Igmp01ResetVifQueryResponseIntervalCB {
01979         Mld6Igmp01ResetVifQueryResponseIntervalRF cb;
01980 
01981     public:
01982         operator const Mld6Igmp01ResetVifQueryResponseIntervalRF& () const { return cb; }
01983         const Mld6Igmp01ResetVifQueryResponseIntervalRF& operator ->() const { return cb; }
01984         Mld6Igmp01ResetVifQueryResponseIntervalCB(const Mld6Igmp01ResetVifQueryResponseIntervalRF& cb)
01985           : cb(cb) { }
01986 
01987         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
01988 
01989         void respond() const {
01990             cb->dispatch(XrlCmdError::OKAY());
01991         }
01992     };
01993 
01994     struct Mld6Igmp01ResetVifQueryResponseIntervalRsp :
01995       public Mld6Igmp01ResetVifQueryResponseIntervalCB {
01996         Mld6Igmp01ResetVifQueryResponseIntervalRsp(const Mld6Igmp01ResetVifQueryResponseIntervalRF& cb)
01997           : Mld6Igmp01ResetVifQueryResponseIntervalCB(cb) { }
01998 
01999     };
02000 
02001     virtual void async_mld6igmp_0_1_reset_vif_query_response_interval
02002        (
02003     const string&   vif_name,
02004     Mld6Igmp01ResetVifQueryResponseIntervalCB);
02005 #endif
02006 
02016     virtual XrlCmdError mld6igmp_0_1_get_vif_robust_count(
02017     // Input values,
02018     const string&   vif_name,
02019     // Output values,
02020     uint32_t&   robust_count) = 0;
02021 #ifdef XORP_ENABLE_ASYNC_SERVER
02022     typedef
02023     XorpCallback2<void, const XrlCmdError &,
02024     const uint32_t*>::RefPtr
02025     Mld6Igmp01GetVifRobustCountRF;
02026 
02027     class Mld6Igmp01GetVifRobustCountCB {
02028         Mld6Igmp01GetVifRobustCountRF cb;
02029 
02030     public:
02031         operator const Mld6Igmp01GetVifRobustCountRF& () const { return cb; }
02032         const Mld6Igmp01GetVifRobustCountRF& operator ->() const { return cb; }
02033         Mld6Igmp01GetVifRobustCountCB(const Mld6Igmp01GetVifRobustCountRF& cb)
02034           : cb(cb) { }
02035 
02036         void fail(const XrlCmdError &e) const { cb->dispatch(e, NULL); }
02037 
02038         void respond(const uint32_t& arg_robust_count) const {
02039             cb->dispatch(XrlCmdError::OKAY(),
02040                          &arg_robust_count);
02041         }
02042     };
02043 
02044     struct Mld6Igmp01GetVifRobustCountRsp :
02045       public Mld6Igmp01GetVifRobustCountCB {
02046         struct args_str {
02047             uint32_t robust_count;
02048         };
02049 
02050     private:
02051         args_str args;
02052 
02053     public:
02054         Mld6Igmp01GetVifRobustCountRsp(const Mld6Igmp01GetVifRobustCountRF& cb)
02055           : Mld6Igmp01GetVifRobustCountCB(cb) { }
02056 
02057         void respond() const {
02058             Mld6Igmp01GetVifRobustCountCB::
02059             respond(args.robust_count);
02060         }
02061 
02062         args_str* operator ->() {
02063             return &args;
02064         }
02065     };
02066 
02067     virtual void async_mld6igmp_0_1_get_vif_robust_count
02068        (
02069     const string&   vif_name,
02070     Mld6Igmp01GetVifRobustCountCB);
02071 #endif
02072 
02082     virtual XrlCmdError mld6igmp_0_1_set_vif_robust_count(
02083     // Input values,
02084     const string&   vif_name,
02085     const uint32_t& robust_count) = 0;
02086 #ifdef XORP_ENABLE_ASYNC_SERVER
02087     typedef
02088     XorpCallback1<void, const XrlCmdError &>::RefPtr
02089     Mld6Igmp01SetVifRobustCountRF;
02090 
02091     class Mld6Igmp01SetVifRobustCountCB {
02092         Mld6Igmp01SetVifRobustCountRF cb;
02093 
02094     public:
02095         operator const Mld6Igmp01SetVifRobustCountRF& () const { return cb; }
02096         const Mld6Igmp01SetVifRobustCountRF& operator ->() const { return cb; }
02097         Mld6Igmp01SetVifRobustCountCB(const Mld6Igmp01SetVifRobustCountRF& cb)
02098           : cb(cb) { }
02099 
02100         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
02101 
02102         void respond() const {
02103             cb->dispatch(XrlCmdError::OKAY());
02104         }
02105     };
02106 
02107     struct Mld6Igmp01SetVifRobustCountRsp :
02108       public Mld6Igmp01SetVifRobustCountCB {
02109         Mld6Igmp01SetVifRobustCountRsp(const Mld6Igmp01SetVifRobustCountRF& cb)
02110           : Mld6Igmp01SetVifRobustCountCB(cb) { }
02111 
02112     };
02113 
02114     virtual void async_mld6igmp_0_1_set_vif_robust_count
02115        (
02116     const string&   vif_name,
02117     const uint32_t& robust_count,
02118     Mld6Igmp01SetVifRobustCountCB);
02119 #endif
02120 
02128     virtual XrlCmdError mld6igmp_0_1_reset_vif_robust_count(
02129     // Input values,
02130     const string&   vif_name) = 0;
02131 #ifdef XORP_ENABLE_ASYNC_SERVER
02132     typedef
02133     XorpCallback1<void, const XrlCmdError &>::RefPtr
02134     Mld6Igmp01ResetVifRobustCountRF;
02135 
02136     class Mld6Igmp01ResetVifRobustCountCB {
02137         Mld6Igmp01ResetVifRobustCountRF cb;
02138 
02139     public:
02140         operator const Mld6Igmp01ResetVifRobustCountRF& () const { return cb; }
02141         const Mld6Igmp01ResetVifRobustCountRF& operator ->() const { return cb; }
02142         Mld6Igmp01ResetVifRobustCountCB(const Mld6Igmp01ResetVifRobustCountRF& cb)
02143           : cb(cb) { }
02144 
02145         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
02146 
02147         void respond() const {
02148             cb->dispatch(XrlCmdError::OKAY());
02149         }
02150     };
02151 
02152     struct Mld6Igmp01ResetVifRobustCountRsp :
02153       public Mld6Igmp01ResetVifRobustCountCB {
02154         Mld6Igmp01ResetVifRobustCountRsp(const Mld6Igmp01ResetVifRobustCountRF& cb)
02155           : Mld6Igmp01ResetVifRobustCountCB(cb) { }
02156 
02157     };
02158 
02159     virtual void async_mld6igmp_0_1_reset_vif_robust_count
02160        (
02161     const string&   vif_name,
02162     Mld6Igmp01ResetVifRobustCountCB);
02163 #endif
02164 
02172     virtual XrlCmdError mld6igmp_0_1_log_trace_all(
02173     // Input values,
02174     const bool& enable) = 0;
02175 #ifdef XORP_ENABLE_ASYNC_SERVER
02176     typedef
02177     XorpCallback1<void, const XrlCmdError &>::RefPtr
02178     Mld6Igmp01LogTraceAllRF;
02179 
02180     class Mld6Igmp01LogTraceAllCB {
02181         Mld6Igmp01LogTraceAllRF cb;
02182 
02183     public:
02184         operator const Mld6Igmp01LogTraceAllRF& () const { return cb; }
02185         const Mld6Igmp01LogTraceAllRF& operator ->() const { return cb; }
02186         Mld6Igmp01LogTraceAllCB(const Mld6Igmp01LogTraceAllRF& cb)
02187           : cb(cb) { }
02188 
02189         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
02190 
02191         void respond() const {
02192             cb->dispatch(XrlCmdError::OKAY());
02193         }
02194     };
02195 
02196     struct Mld6Igmp01LogTraceAllRsp :
02197       public Mld6Igmp01LogTraceAllCB {
02198         Mld6Igmp01LogTraceAllRsp(const Mld6Igmp01LogTraceAllRF& cb)
02199           : Mld6Igmp01LogTraceAllCB(cb) { }
02200 
02201     };
02202 
02203     virtual void async_mld6igmp_0_1_log_trace_all
02204        (
02205     const bool& enable,
02206     Mld6Igmp01LogTraceAllCB);
02207 #endif
02208 
02228     virtual XrlCmdError mld6igmp_0_1_add_protocol4(
02229     // Input values,
02230     const string&   xrl_sender_name,
02231     const string&   protocol_name,
02232     const uint32_t& protocol_id,
02233     const string&   vif_name,
02234     const uint32_t& vif_index) = 0;
02235 #ifdef XORP_ENABLE_ASYNC_SERVER
02236     typedef
02237     XorpCallback1<void, const XrlCmdError &>::RefPtr
02238     Mld6Igmp01AddProtocol4RF;
02239 
02240     class Mld6Igmp01AddProtocol4CB {
02241         Mld6Igmp01AddProtocol4RF cb;
02242 
02243     public:
02244         operator const Mld6Igmp01AddProtocol4RF& () const { return cb; }
02245         const Mld6Igmp01AddProtocol4RF& operator ->() const { return cb; }
02246         Mld6Igmp01AddProtocol4CB(const Mld6Igmp01AddProtocol4RF& cb)
02247           : cb(cb) { }
02248 
02249         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
02250 
02251         void respond() const {
02252             cb->dispatch(XrlCmdError::OKAY());
02253         }
02254     };
02255 
02256     struct Mld6Igmp01AddProtocol4Rsp :
02257       public Mld6Igmp01AddProtocol4CB {
02258         Mld6Igmp01AddProtocol4Rsp(const Mld6Igmp01AddProtocol4RF& cb)
02259           : Mld6Igmp01AddProtocol4CB(cb) { }
02260 
02261     };
02262 
02263     virtual void async_mld6igmp_0_1_add_protocol4
02264        (
02265     const string&   xrl_sender_name,
02266     const string&   protocol_name,
02267     const uint32_t& protocol_id,
02268     const string&   vif_name,
02269     const uint32_t& vif_index,
02270     Mld6Igmp01AddProtocol4CB);
02271 #endif
02272 
02273     virtual XrlCmdError mld6igmp_0_1_add_protocol6(
02274     // Input values,
02275     const string&   xrl_sender_name,
02276     const string&   protocol_name,
02277     const uint32_t& protocol_id,
02278     const string&   vif_name,
02279     const uint32_t& vif_index) = 0;
02280 #ifdef XORP_ENABLE_ASYNC_SERVER
02281     typedef
02282     XorpCallback1<void, const XrlCmdError &>::RefPtr
02283     Mld6Igmp01AddProtocol6RF;
02284 
02285     class Mld6Igmp01AddProtocol6CB {
02286         Mld6Igmp01AddProtocol6RF cb;
02287 
02288     public:
02289         operator const Mld6Igmp01AddProtocol6RF& () const { return cb; }
02290         const Mld6Igmp01AddProtocol6RF& operator ->() const { return cb; }
02291         Mld6Igmp01AddProtocol6CB(const Mld6Igmp01AddProtocol6RF& cb)
02292           : cb(cb) { }
02293 
02294         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
02295 
02296         void respond() const {
02297             cb->dispatch(XrlCmdError::OKAY());
02298         }
02299     };
02300 
02301     struct Mld6Igmp01AddProtocol6Rsp :
02302       public Mld6Igmp01AddProtocol6CB {
02303         Mld6Igmp01AddProtocol6Rsp(const Mld6Igmp01AddProtocol6RF& cb)
02304           : Mld6Igmp01AddProtocol6CB(cb) { }
02305 
02306     };
02307 
02308     virtual void async_mld6igmp_0_1_add_protocol6
02309        (
02310     const string&   xrl_sender_name,
02311     const string&   protocol_name,
02312     const uint32_t& protocol_id,
02313     const string&   vif_name,
02314     const uint32_t& vif_index,
02315     Mld6Igmp01AddProtocol6CB);
02316 #endif
02317 
02318     virtual XrlCmdError mld6igmp_0_1_delete_protocol4(
02319     // Input values,
02320     const string&   xrl_sender_name,
02321     const string&   protocol_name,
02322     const uint32_t& protocol_id,
02323     const string&   vif_name,
02324     const uint32_t& vif_index) = 0;
02325 #ifdef XORP_ENABLE_ASYNC_SERVER
02326     typedef
02327     XorpCallback1<void, const XrlCmdError &>::RefPtr
02328     Mld6Igmp01DeleteProtocol4RF;
02329 
02330     class Mld6Igmp01DeleteProtocol4CB {
02331         Mld6Igmp01DeleteProtocol4RF cb;
02332 
02333     public:
02334         operator const Mld6Igmp01DeleteProtocol4RF& () const { return cb; }
02335         const Mld6Igmp01DeleteProtocol4RF& operator ->() const { return cb; }
02336         Mld6Igmp01DeleteProtocol4CB(const Mld6Igmp01DeleteProtocol4RF& cb)
02337           : cb(cb) { }
02338 
02339         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
02340 
02341         void respond() const {
02342             cb->dispatch(XrlCmdError::OKAY());
02343         }
02344     };
02345 
02346     struct Mld6Igmp01DeleteProtocol4Rsp :
02347       public Mld6Igmp01DeleteProtocol4CB {
02348         Mld6Igmp01DeleteProtocol4Rsp(const Mld6Igmp01DeleteProtocol4RF& cb)
02349           : Mld6Igmp01DeleteProtocol4CB(cb) { }
02350 
02351     };
02352 
02353     virtual void async_mld6igmp_0_1_delete_protocol4
02354        (
02355     const string&   xrl_sender_name,
02356     const string&   protocol_name,
02357     const uint32_t& protocol_id,
02358     const string&   vif_name,
02359     const uint32_t& vif_index,
02360     Mld6Igmp01DeleteProtocol4CB);
02361 #endif
02362 
02363     virtual XrlCmdError mld6igmp_0_1_delete_protocol6(
02364     // Input values,
02365     const string&   xrl_sender_name,
02366     const string&   protocol_name,
02367     const uint32_t& protocol_id,
02368     const string&   vif_name,
02369     const uint32_t& vif_index) = 0;
02370 #ifdef XORP_ENABLE_ASYNC_SERVER
02371     typedef
02372     XorpCallback1<void, const XrlCmdError &>::RefPtr
02373     Mld6Igmp01DeleteProtocol6RF;
02374 
02375     class Mld6Igmp01DeleteProtocol6CB {
02376         Mld6Igmp01DeleteProtocol6RF cb;
02377 
02378     public:
02379         operator const Mld6Igmp01DeleteProtocol6RF& () const { return cb; }
02380         const Mld6Igmp01DeleteProtocol6RF& operator ->() const { return cb; }
02381         Mld6Igmp01DeleteProtocol6CB(const Mld6Igmp01DeleteProtocol6RF& cb)
02382           : cb(cb) { }
02383 
02384         void fail(const XrlCmdError &e) const { cb->dispatch(e); }
02385 
02386         void respond() const {
02387             cb->dispatch(XrlCmdError::OKAY());
02388         }
02389     };
02390 
02391     struct Mld6Igmp01DeleteProtocol6Rsp :
02392       public Mld6Igmp01DeleteProtocol6CB {
02393         Mld6Igmp01DeleteProtocol6Rsp(const Mld6Igmp01DeleteProtocol6RF& cb)
02394           : Mld6Igmp01DeleteProtocol6CB(cb) { }
02395 
02396     };
02397 
02398     virtual void async_mld6igmp_0_1_delete_protocol6
02399        (
02400     const string&   xrl_sender_name,
02401     const string&   protocol_name,
02402     const uint32_t& protocol_id,
02403     const string&   vif_name,
02404     const uint32_t& vif_index,
02405     Mld6Igmp01DeleteProtocol6CB);
02406 #endif
02407 
02408 private:
02409     XrlCmdRT handle_common_0_1_get_target_name(const XrlArgs& in, XrlCmdOT out);
02410 #ifdef XORP_ENABLE_ASYNC_SERVER
02411     void callback_common_0_1_get_target_name
02412        (const XrlCmdError &e,
02413     const string* arg_name,
02414         XrlRespCallback);
02415 #endif
02416 
02417     XrlCmdRT handle_common_0_1_get_version(const XrlArgs& in, XrlCmdOT out);
02418 #ifdef XORP_ENABLE_ASYNC_SERVER
02419     void callback_common_0_1_get_version
02420        (const XrlCmdError &e,
02421     const string* arg_version,
02422         XrlRespCallback);
02423 #endif
02424 
02425     XrlCmdRT handle_common_0_1_get_status(const XrlArgs& in, XrlCmdOT out);
02426 #ifdef XORP_ENABLE_ASYNC_SERVER
02427     void callback_common_0_1_get_status
02428        (const XrlCmdError &e,
02429     const uint32_t* arg_status,
02430     const string* arg_reason,
02431         XrlRespCallback);
02432 #endif
02433 
02434     XrlCmdRT handle_common_0_1_shutdown(const XrlArgs& in, XrlCmdOT out);
02435 #ifdef XORP_ENABLE_ASYNC_SERVER
02436     void callback_common_0_1_shutdown
02437        (const XrlCmdError &e,
02438         XrlRespCallback);
02439 #endif
02440 
02441     XrlCmdRT handle_common_0_1_startup(const XrlArgs& in, XrlCmdOT out);
02442 #ifdef XORP_ENABLE_ASYNC_SERVER
02443     void callback_common_0_1_startup
02444        (const XrlCmdError &e,
02445         XrlRespCallback);
02446 #endif
02447 
02448     XrlCmdRT handle_cli_processor_0_1_process_command(const XrlArgs& in, XrlCmdOT out);
02449 #ifdef XORP_ENABLE_ASYNC_SERVER
02450     void callback_cli_processor_0_1_process_command
02451        (const XrlCmdError &e,
02452     const string* arg_ret_processor_name,
02453     const string* arg_ret_cli_term_name,
02454     const uint32_t* arg_ret_cli_session_id,
02455     const string* arg_ret_command_output,
02456         XrlRespCallback);
02457 #endif
02458 
02459     XrlCmdRT handle_finder_event_observer_0_1_xrl_target_birth(const XrlArgs& in, XrlCmdOT out);
02460 #ifdef XORP_ENABLE_ASYNC_SERVER
02461     void callback_finder_event_observer_0_1_xrl_target_birth
02462        (const XrlCmdError &e,
02463         XrlRespCallback);
02464 #endif
02465 
02466     XrlCmdRT handle_finder_event_observer_0_1_xrl_target_death(const XrlArgs& in, XrlCmdOT out);
02467 #ifdef XORP_ENABLE_ASYNC_SERVER
02468     void callback_finder_event_observer_0_1_xrl_target_death
02469        (const XrlCmdError &e,
02470         XrlRespCallback);
02471 #endif
02472 
02473     XrlCmdRT handle_raw_packet4_client_0_1_recv(const XrlArgs& in, XrlCmdOT out);
02474 #ifdef XORP_ENABLE_ASYNC_SERVER
02475     void callback_raw_packet4_client_0_1_recv
02476        (const XrlCmdError &e,
02477         XrlRespCallback);
02478 #endif
02479 
02480     XrlCmdRT handle_raw_packet6_client_0_1_recv(const XrlArgs& in, XrlCmdOT out);
02481 #ifdef XORP_ENABLE_ASYNC_SERVER
02482     void callback_raw_packet6_client_0_1_recv
02483        (const XrlCmdError &e,
02484         XrlRespCallback);
02485 #endif
02486 
02487     XrlCmdRT handle_mld6igmp_0_1_enable_vif(const XrlArgs& in, XrlCmdOT out);
02488 #ifdef XORP_ENABLE_ASYNC_SERVER
02489     void callback_mld6igmp_0_1_enable_vif
02490        (const XrlCmdError &e,
02491         XrlRespCallback);
02492 #endif
02493 
02494     XrlCmdRT handle_mld6igmp_0_1_start_vif(const XrlArgs& in, XrlCmdOT out);
02495 #ifdef XORP_ENABLE_ASYNC_SERVER
02496     void callback_mld6igmp_0_1_start_vif
02497        (const XrlCmdError &e,
02498         XrlRespCallback);
02499 #endif
02500 
02501     XrlCmdRT handle_mld6igmp_0_1_stop_vif(const XrlArgs& in, XrlCmdOT out);
02502 #ifdef XORP_ENABLE_ASYNC_SERVER
02503     void callback_mld6igmp_0_1_stop_vif
02504        (const XrlCmdError &e,
02505         XrlRespCallback);
02506 #endif
02507 
02508     XrlCmdRT handle_mld6igmp_0_1_enable_all_vifs(const XrlArgs& in, XrlCmdOT out);
02509 #ifdef XORP_ENABLE_ASYNC_SERVER
02510     void callback_mld6igmp_0_1_enable_all_vifs
02511        (const XrlCmdError &e,
02512         XrlRespCallback);
02513 #endif
02514 
02515     XrlCmdRT handle_mld6igmp_0_1_start_all_vifs(const XrlArgs& in, XrlCmdOT out);
02516 #ifdef XORP_ENABLE_ASYNC_SERVER
02517     void callback_mld6igmp_0_1_start_all_vifs
02518        (const XrlCmdError &e,
02519         XrlRespCallback);
02520 #endif
02521 
02522     XrlCmdRT handle_mld6igmp_0_1_stop_all_vifs(const XrlArgs& in, XrlCmdOT out);
02523 #ifdef XORP_ENABLE_ASYNC_SERVER
02524     void callback_mld6igmp_0_1_stop_all_vifs
02525        (const XrlCmdError &e,
02526         XrlRespCallback);
02527 #endif
02528 
02529     XrlCmdRT handle_mld6igmp_0_1_enable_mld6igmp(const XrlArgs& in, XrlCmdOT out);
02530 #ifdef XORP_ENABLE_ASYNC_SERVER
02531     void callback_mld6igmp_0_1_enable_mld6igmp
02532        (const XrlCmdError &e,
02533         XrlRespCallback);
02534 #endif
02535 
02536     XrlCmdRT handle_mld6igmp_0_1_start_mld6igmp(const XrlArgs& in, XrlCmdOT out);
02537 #ifdef XORP_ENABLE_ASYNC_SERVER
02538     void callback_mld6igmp_0_1_start_mld6igmp
02539        (const XrlCmdError &e,
02540         XrlRespCallback);
02541 #endif
02542 
02543     XrlCmdRT handle_mld6igmp_0_1_stop_mld6igmp(const XrlArgs& in, XrlCmdOT out);
02544 #ifdef XORP_ENABLE_ASYNC_SERVER
02545     void callback_mld6igmp_0_1_stop_mld6igmp
02546        (const XrlCmdError &e,
02547         XrlRespCallback);
02548 #endif
02549 
02550     XrlCmdRT handle_mld6igmp_0_1_enable_cli(const XrlArgs& in, XrlCmdOT out);
02551 #ifdef XORP_ENABLE_ASYNC_SERVER
02552     void callback_mld6igmp_0_1_enable_cli
02553        (const XrlCmdError &e,
02554         XrlRespCallback);
02555 #endif
02556 
02557     XrlCmdRT handle_mld6igmp_0_1_start_cli(const XrlArgs& in, XrlCmdOT out);
02558 #ifdef XORP_ENABLE_ASYNC_SERVER
02559     void callback_mld6igmp_0_1_start_cli
02560        (const XrlCmdError &e,
02561         XrlRespCallback);
02562 #endif
02563 
02564     XrlCmdRT handle_mld6igmp_0_1_stop_cli(const XrlArgs& in, XrlCmdOT out);
02565 #ifdef XORP_ENABLE_ASYNC_SERVER
02566     void callback_mld6igmp_0_1_stop_cli
02567        (const XrlCmdError &e,
02568         XrlRespCallback);
02569 #endif
02570 
02571     XrlCmdRT handle_mld6igmp_0_1_get_vif_proto_version(const XrlArgs& in, XrlCmdOT out);
02572 #ifdef XORP_ENABLE_ASYNC_SERVER
02573     void callback_mld6igmp_0_1_get_vif_proto_version
02574        (const XrlCmdError &e,
02575     const uint32_t* arg_proto_version,
02576         XrlRespCallback);
02577 #endif
02578 
02579     XrlCmdRT handle_mld6igmp_0_1_set_vif_proto_version(const XrlArgs& in, XrlCmdOT out);
02580 #ifdef XORP_ENABLE_ASYNC_SERVER
02581     void callback_mld6igmp_0_1_set_vif_proto_version
02582        (const XrlCmdError &e,
02583         XrlRespCallback);
02584 #endif
02585 
02586     XrlCmdRT handle_mld6igmp_0_1_reset_vif_proto_version(const XrlArgs& in, XrlCmdOT out);
02587 #ifdef XORP_ENABLE_ASYNC_SERVER
02588     void callback_mld6igmp_0_1_reset_vif_proto_version
02589        (const XrlCmdError &e,
02590         XrlRespCallback);
02591 #endif
02592 
02593     XrlCmdRT handle_mld6igmp_0_1_get_vif_ip_router_alert_option_check(const XrlArgs& in, XrlCmdOT out);
02594 #ifdef XORP_ENABLE_ASYNC_SERVER
02595     void callback_mld6igmp_0_1_get_vif_ip_router_alert_option_check
02596        (const XrlCmdError &e,
02597     const bool* arg_enabled,
02598         XrlRespCallback);
02599 #endif
02600 
02601     XrlCmdRT handle_mld6igmp_0_1_set_vif_ip_router_alert_option_check(const XrlArgs& in, XrlCmdOT out);
02602 #ifdef XORP_ENABLE_ASYNC_SERVER
02603     void callback_mld6igmp_0_1_set_vif_ip_router_alert_option_check
02604        (const XrlCmdError &e,
02605         XrlRespCallback);
02606 #endif
02607 
02608     XrlCmdRT handle_mld6igmp_0_1_reset_vif_ip_router_alert_option_check(const XrlArgs& in, XrlCmdOT out);
02609 #ifdef XORP_ENABLE_ASYNC_SERVER
02610     void callback_mld6igmp_0_1_reset_vif_ip_router_alert_option_check
02611        (const XrlCmdError &e,
02612         XrlRespCallback);
02613 #endif
02614 
02615     XrlCmdRT handle_mld6igmp_0_1_get_vif_query_interval(const XrlArgs& in, XrlCmdOT out);
02616 #ifdef XORP_ENABLE_ASYNC_SERVER
02617     void callback_mld6igmp_0_1_get_vif_query_interval
02618        (const XrlCmdError &e,
02619     const uint32_t* arg_interval_sec,
02620     const uint32_t* arg_interval_usec,
02621         XrlRespCallback);
02622 #endif
02623 
02624     XrlCmdRT handle_mld6igmp_0_1_set_vif_query_interval(const XrlArgs& in, XrlCmdOT out);
02625 #ifdef XORP_ENABLE_ASYNC_SERVER
02626     void callback_mld6igmp_0_1_set_vif_query_interval
02627        (const XrlCmdError &e,
02628         XrlRespCallback);
02629 #endif
02630 
02631     XrlCmdRT handle_mld6igmp_0_1_reset_vif_query_interval(const XrlArgs& in, XrlCmdOT out);
02632 #ifdef XORP_ENABLE_ASYNC_SERVER
02633     void callback_mld6igmp_0_1_reset_vif_query_interval
02634        (const XrlCmdError &e,
02635         XrlRespCallback);
02636 #endif
02637 
02638     XrlCmdRT handle_mld6igmp_0_1_get_vif_query_last_member_interval(const XrlArgs& in, XrlCmdOT out);
02639 #ifdef XORP_ENABLE_ASYNC_SERVER
02640     void callback_mld6igmp_0_1_get_vif_query_last_member_interval
02641        (const XrlCmdError &e,
02642     const uint32_t* arg_interval_sec,
02643     const uint32_t* arg_interval_usec,
02644         XrlRespCallback);
02645 #endif
02646 
02647     XrlCmdRT handle_mld6igmp_0_1_set_vif_query_last_member_interval(const XrlArgs& in, XrlCmdOT out);
02648 #ifdef XORP_ENABLE_ASYNC_SERVER
02649     void callback_mld6igmp_0_1_set_vif_query_last_member_interval
02650        (const XrlCmdError &e,
02651         XrlRespCallback);
02652 #endif
02653 
02654     XrlCmdRT handle_mld6igmp_0_1_reset_vif_query_last_member_interval(const XrlArgs& in, XrlCmdOT out);
02655 #ifdef XORP_ENABLE_ASYNC_SERVER
02656     void callback_mld6igmp_0_1_reset_vif_query_last_member_interval
02657        (const XrlCmdError &e,
02658         XrlRespCallback);
02659 #endif
02660 
02661     XrlCmdRT handle_mld6igmp_0_1_get_vif_query_response_interval(const XrlArgs& in, XrlCmdOT out);
02662 #ifdef XORP_ENABLE_ASYNC_SERVER
02663     void callback_mld6igmp_0_1_get_vif_query_response_interval
02664        (const XrlCmdError &e,
02665     const uint32_t* arg_interval_sec,
02666     const uint32_t* arg_interval_usec,
02667         XrlRespCallback);
02668 #endif
02669 
02670     XrlCmdRT handle_mld6igmp_0_1_set_vif_query_response_interval(const XrlArgs& in, XrlCmdOT out);
02671 #ifdef XORP_ENABLE_ASYNC_SERVER
02672     void callback_mld6igmp_0_1_set_vif_query_response_interval
02673        (const XrlCmdError &e,
02674         XrlRespCallback);
02675 #endif
02676 
02677     XrlCmdRT handle_mld6igmp_0_1_reset_vif_query_response_interval(const XrlArgs& in, XrlCmdOT out);
02678 #ifdef XORP_ENABLE_ASYNC_SERVER
02679     void callback_mld6igmp_0_1_reset_vif_query_response_interval
02680        (const XrlCmdError &e,
02681         XrlRespCallback);
02682 #endif
02683 
02684     XrlCmdRT handle_mld6igmp_0_1_get_vif_robust_count(const XrlArgs& in, XrlCmdOT out);
02685 #ifdef XORP_ENABLE_ASYNC_SERVER
02686     void callback_mld6igmp_0_1_get_vif_robust_count
02687        (const XrlCmdError &e,
02688     const uint32_t* arg_robust_count,
02689         XrlRespCallback);
02690 #endif
02691 
02692     XrlCmdRT handle_mld6igmp_0_1_set_vif_robust_count(const XrlArgs& in, XrlCmdOT out);
02693 #ifdef XORP_ENABLE_ASYNC_SERVER
02694     void callback_mld6igmp_0_1_set_vif_robust_count
02695        (const XrlCmdError &e,
02696         XrlRespCallback);
02697 #endif
02698 
02699     XrlCmdRT handle_mld6igmp_0_1_reset_vif_robust_count(const XrlArgs& in, XrlCmdOT out);
02700 #ifdef XORP_ENABLE_ASYNC_SERVER
02701     void callback_mld6igmp_0_1_reset_vif_robust_count
02702        (const XrlCmdError &e,
02703         XrlRespCallback);
02704 #endif
02705 
02706     XrlCmdRT handle_mld6igmp_0_1_log_trace_all(const XrlArgs& in, XrlCmdOT out);
02707 #ifdef XORP_ENABLE_ASYNC_SERVER
02708     void callback_mld6igmp_0_1_log_trace_all
02709        (const XrlCmdError &e,
02710         XrlRespCallback);
02711 #endif
02712 
02713     XrlCmdRT handle_mld6igmp_0_1_add_protocol4(const XrlArgs& in, XrlCmdOT out);
02714 #ifdef XORP_ENABLE_ASYNC_SERVER
02715     void callback_mld6igmp_0_1_add_protocol4
02716        (const XrlCmdError &e,
02717         XrlRespCallback);
02718 #endif
02719 
02720     XrlCmdRT handle_mld6igmp_0_1_add_protocol6(const XrlArgs& in, XrlCmdOT out);
02721 #ifdef XORP_ENABLE_ASYNC_SERVER
02722     void callback_mld6igmp_0_1_add_protocol6
02723        (const XrlCmdError &e,
02724         XrlRespCallback);
02725 #endif
02726 
02727     XrlCmdRT handle_mld6igmp_0_1_delete_protocol4(const XrlArgs& in, XrlCmdOT out);
02728 #ifdef XORP_ENABLE_ASYNC_SERVER
02729     void callback_mld6igmp_0_1_delete_protocol4
02730        (const XrlCmdError &e,
02731         XrlRespCallback);
02732 #endif
02733 
02734     XrlCmdRT handle_mld6igmp_0_1_delete_protocol6(const XrlArgs& in, XrlCmdOT out);
02735 #ifdef XORP_ENABLE_ASYNC_SERVER
02736     void callback_mld6igmp_0_1_delete_protocol6
02737        (const XrlCmdError &e,
02738         XrlRespCallback);
02739 #endif
02740 
02741     void add_handlers();
02742     void remove_handlers();
02743 
02744     struct handler_table {
02745         const char *name;
02746         XrlCmdRT (XrlMld6igmpTargetBase::*method)(const XrlArgs&, XrlCmdOT);
02747     };
02748 
02749     static const struct handler_table handlers[];
02750     static const size_t num_handlers;
02751 };
02752 
02753 #endif // __XRL_TARGETS_MLD6IGMP_BASE_HH__
 All Classes Namespaces Functions Variables Typedefs Enumerations