00001
00002
00003
00004
00005 #ifndef DBUS_CXX_SIGNALPROXY_H_
00006 #define DBUS_CXX_SIGNALPROXY_H_
00007
00008 #include <dbus-cxx/signal_proxy_base.h>
00009
00010 namespace DBus {
00361 template <class T_return, class T_arg1 = nil,class T_arg2 = nil,class T_arg3 = nil,class T_arg4 = nil,class T_arg5 = nil,class T_arg6 = nil,class T_arg7 = nil>
00362 class signal_proxy
00363 : public sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>, public signal_proxy_base
00364 {
00365 public:
00366
00367 typedef DBusCxxPointer<signal_proxy> pointer;
00368
00369 signal_proxy(const std::string& interface, const std::string& name):
00370 signal_proxy_base(interface, name)
00371 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00372
00373 signal_proxy(const std::string& path, const std::string& interface, const std::string& name):
00374 signal_proxy_base(path, interface, name)
00375 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00376
00377 signal_proxy(const std::string& interface, const std::string& name, const signal_proxy& src) :
00378 sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>(src),
00379 signal_proxy_base(interface, name)
00380 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00381
00382 signal_proxy(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src) :
00383 sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6,T_arg7>(src),
00384 signal_proxy_base(path, interface, name)
00385 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00386
00387 static pointer create(const std::string& interface, const std::string& name)
00388 { return pointer( new signal_proxy(interface, name) ); }
00389
00390 static pointer create(const std::string& path, const std::string& interface, const std::string& name)
00391 { return pointer( new signal_proxy(path, interface, name) ); }
00392
00393 static pointer create(const std::string& interface, const std::string& name, const signal_proxy& src)
00394 { return pointer( new signal_proxy(interface, name, src) ); }
00395
00396 static pointer create(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src)
00397 { return pointer( new signal_proxy(path, interface, name, src) ); }
00398
00399 virtual signal_base::pointer clone()
00400 { return signal_base::pointer( new signal_proxy(*this) ); }
00401
00402 protected:
00403
00404 virtual HandlerResult on_dbus_incoming( SignalMessage::const_pointer msg )
00405 {
00406
00407
00408 T_arg1 _val_1;
00409 T_arg2 _val_2;
00410 T_arg3 _val_3;
00411 T_arg4 _val_4;
00412 T_arg5 _val_5;
00413 T_arg6 _val_6;
00414 T_arg7 _val_7;
00415
00416 try {
00417
00418 Message::iterator i = msg->begin();
00419 i >> _val_1 >> _val_2 >> _val_3 >> _val_4 >> _val_5 >> _val_6 >> _val_7;
00420
00421 this->emit(_val_1,_val_2,_val_3,_val_4,_val_5,_val_6,_val_7);
00422 }
00423 catch ( ErrorInvalidTypecast& e ) {
00424 return NOT_HANDLED;
00425 }
00426
00427 return HANDLED;
00428 }
00429
00430 };
00431
00432
00433
00442 template <class T_return>
00443 class signal_proxy <T_return, nil,nil,nil,nil,nil,nil,nil>
00444 : public sigc::signal<T_return>, public signal_proxy_base
00445 {
00446 public:
00447
00448 typedef DBusCxxPointer<signal_proxy> pointer;
00449
00450 signal_proxy(const std::string& interface, const std::string& name):
00451 signal_proxy_base(interface, name)
00452 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00453
00454 signal_proxy(const std::string& path, const std::string& interface, const std::string& name):
00455 signal_proxy_base(path, interface, name)
00456 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00457
00458 signal_proxy(const std::string& interface, const std::string& name, const signal_proxy& src) :
00459 sigc::signal<T_return>(src),
00460 signal_proxy_base(interface, name)
00461 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00462
00463 signal_proxy(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src) :
00464 sigc::signal<T_return>(src),
00465 signal_proxy_base(path, interface, name)
00466 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00467
00468 static pointer create(const std::string& interface, const std::string& name)
00469 { return pointer( new signal_proxy(interface, name) ); }
00470
00471 static pointer create(const std::string& path, const std::string& interface, const std::string& name)
00472 { return pointer( new signal_proxy(path, interface, name) ); }
00473
00474 static pointer create(const std::string& interface, const std::string& name, const signal_proxy& src)
00475 { return pointer( new signal_proxy(interface, name, src) ); }
00476
00477 static pointer create(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src)
00478 { return pointer( new signal_proxy(path, interface, name, src) ); }
00479
00480 virtual signal_base::pointer clone()
00481 { return signal_base::pointer( new signal_proxy(*this) ); }
00482
00483 protected:
00484
00485 virtual HandlerResult on_dbus_incoming( SignalMessage::const_pointer msg )
00486 {
00487
00488
00489
00490 try {
00491
00492 this->emit();
00493 }
00494 catch ( ErrorInvalidTypecast& e ) {
00495 return NOT_HANDLED;
00496 }
00497
00498 return HANDLED;
00499 }
00500
00501 };
00502
00503
00512 template <class T_return, class T_arg1>
00513 class signal_proxy <T_return, T_arg1, nil,nil,nil,nil,nil,nil>
00514 : public sigc::signal<T_return, T_arg1>, public signal_proxy_base
00515 {
00516 public:
00517
00518 typedef DBusCxxPointer<signal_proxy> pointer;
00519
00520 signal_proxy(const std::string& interface, const std::string& name):
00521 signal_proxy_base(interface, name)
00522 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00523
00524 signal_proxy(const std::string& path, const std::string& interface, const std::string& name):
00525 signal_proxy_base(path, interface, name)
00526 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00527
00528 signal_proxy(const std::string& interface, const std::string& name, const signal_proxy& src) :
00529 sigc::signal<T_return, T_arg1>(src),
00530 signal_proxy_base(interface, name)
00531 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00532
00533 signal_proxy(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src) :
00534 sigc::signal<T_return, T_arg1>(src),
00535 signal_proxy_base(path, interface, name)
00536 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00537
00538 static pointer create(const std::string& interface, const std::string& name)
00539 { return pointer( new signal_proxy(interface, name) ); }
00540
00541 static pointer create(const std::string& path, const std::string& interface, const std::string& name)
00542 { return pointer( new signal_proxy(path, interface, name) ); }
00543
00544 static pointer create(const std::string& interface, const std::string& name, const signal_proxy& src)
00545 { return pointer( new signal_proxy(interface, name, src) ); }
00546
00547 static pointer create(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src)
00548 { return pointer( new signal_proxy(path, interface, name, src) ); }
00549
00550 virtual signal_base::pointer clone()
00551 { return signal_base::pointer( new signal_proxy(*this) ); }
00552
00553 protected:
00554
00555 virtual HandlerResult on_dbus_incoming( SignalMessage::const_pointer msg )
00556 {
00557
00558
00559 T_arg1 _val_1;
00560
00561 try {
00562
00563 Message::iterator i = msg->begin();
00564 i >> _val_1;
00565
00566 this->emit(_val_1);
00567 }
00568 catch ( ErrorInvalidTypecast& e ) {
00569 return NOT_HANDLED;
00570 }
00571
00572 return HANDLED;
00573 }
00574
00575 };
00576
00577
00586 template <class T_return, class T_arg1,class T_arg2>
00587 class signal_proxy <T_return, T_arg1,T_arg2, nil,nil,nil,nil,nil>
00588 : public sigc::signal<T_return, T_arg1,T_arg2>, public signal_proxy_base
00589 {
00590 public:
00591
00592 typedef DBusCxxPointer<signal_proxy> pointer;
00593
00594 signal_proxy(const std::string& interface, const std::string& name):
00595 signal_proxy_base(interface, name)
00596 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00597
00598 signal_proxy(const std::string& path, const std::string& interface, const std::string& name):
00599 signal_proxy_base(path, interface, name)
00600 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00601
00602 signal_proxy(const std::string& interface, const std::string& name, const signal_proxy& src) :
00603 sigc::signal<T_return, T_arg1,T_arg2>(src),
00604 signal_proxy_base(interface, name)
00605 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00606
00607 signal_proxy(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src) :
00608 sigc::signal<T_return, T_arg1,T_arg2>(src),
00609 signal_proxy_base(path, interface, name)
00610 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00611
00612 static pointer create(const std::string& interface, const std::string& name)
00613 { return pointer( new signal_proxy(interface, name) ); }
00614
00615 static pointer create(const std::string& path, const std::string& interface, const std::string& name)
00616 { return pointer( new signal_proxy(path, interface, name) ); }
00617
00618 static pointer create(const std::string& interface, const std::string& name, const signal_proxy& src)
00619 { return pointer( new signal_proxy(interface, name, src) ); }
00620
00621 static pointer create(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src)
00622 { return pointer( new signal_proxy(path, interface, name, src) ); }
00623
00624 virtual signal_base::pointer clone()
00625 { return signal_base::pointer( new signal_proxy(*this) ); }
00626
00627 protected:
00628
00629 virtual HandlerResult on_dbus_incoming( SignalMessage::const_pointer msg )
00630 {
00631
00632
00633 T_arg1 _val_1;
00634 T_arg2 _val_2;
00635
00636 try {
00637
00638 Message::iterator i = msg->begin();
00639 i >> _val_1 >> _val_2;
00640
00641 this->emit(_val_1,_val_2);
00642 }
00643 catch ( ErrorInvalidTypecast& e ) {
00644 return NOT_HANDLED;
00645 }
00646
00647 return HANDLED;
00648 }
00649
00650 };
00651
00652
00661 template <class T_return, class T_arg1,class T_arg2,class T_arg3>
00662 class signal_proxy <T_return, T_arg1,T_arg2,T_arg3, nil,nil,nil,nil>
00663 : public sigc::signal<T_return, T_arg1,T_arg2,T_arg3>, public signal_proxy_base
00664 {
00665 public:
00666
00667 typedef DBusCxxPointer<signal_proxy> pointer;
00668
00669 signal_proxy(const std::string& interface, const std::string& name):
00670 signal_proxy_base(interface, name)
00671 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00672
00673 signal_proxy(const std::string& path, const std::string& interface, const std::string& name):
00674 signal_proxy_base(path, interface, name)
00675 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00676
00677 signal_proxy(const std::string& interface, const std::string& name, const signal_proxy& src) :
00678 sigc::signal<T_return, T_arg1,T_arg2,T_arg3>(src),
00679 signal_proxy_base(interface, name)
00680 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00681
00682 signal_proxy(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src) :
00683 sigc::signal<T_return, T_arg1,T_arg2,T_arg3>(src),
00684 signal_proxy_base(path, interface, name)
00685 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00686
00687 static pointer create(const std::string& interface, const std::string& name)
00688 { return pointer( new signal_proxy(interface, name) ); }
00689
00690 static pointer create(const std::string& path, const std::string& interface, const std::string& name)
00691 { return pointer( new signal_proxy(path, interface, name) ); }
00692
00693 static pointer create(const std::string& interface, const std::string& name, const signal_proxy& src)
00694 { return pointer( new signal_proxy(interface, name, src) ); }
00695
00696 static pointer create(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src)
00697 { return pointer( new signal_proxy(path, interface, name, src) ); }
00698
00699 virtual signal_base::pointer clone()
00700 { return signal_base::pointer( new signal_proxy(*this) ); }
00701
00702 protected:
00703
00704 virtual HandlerResult on_dbus_incoming( SignalMessage::const_pointer msg )
00705 {
00706
00707
00708 T_arg1 _val_1;
00709 T_arg2 _val_2;
00710 T_arg3 _val_3;
00711
00712 try {
00713
00714 Message::iterator i = msg->begin();
00715 i >> _val_1 >> _val_2 >> _val_3;
00716
00717 this->emit(_val_1,_val_2,_val_3);
00718 }
00719 catch ( ErrorInvalidTypecast& e ) {
00720 return NOT_HANDLED;
00721 }
00722
00723 return HANDLED;
00724 }
00725
00726 };
00727
00728
00737 template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4>
00738 class signal_proxy <T_return, T_arg1,T_arg2,T_arg3,T_arg4, nil,nil,nil>
00739 : public sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4>, public signal_proxy_base
00740 {
00741 public:
00742
00743 typedef DBusCxxPointer<signal_proxy> pointer;
00744
00745 signal_proxy(const std::string& interface, const std::string& name):
00746 signal_proxy_base(interface, name)
00747 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00748
00749 signal_proxy(const std::string& path, const std::string& interface, const std::string& name):
00750 signal_proxy_base(path, interface, name)
00751 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00752
00753 signal_proxy(const std::string& interface, const std::string& name, const signal_proxy& src) :
00754 sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4>(src),
00755 signal_proxy_base(interface, name)
00756 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00757
00758 signal_proxy(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src) :
00759 sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4>(src),
00760 signal_proxy_base(path, interface, name)
00761 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00762
00763 static pointer create(const std::string& interface, const std::string& name)
00764 { return pointer( new signal_proxy(interface, name) ); }
00765
00766 static pointer create(const std::string& path, const std::string& interface, const std::string& name)
00767 { return pointer( new signal_proxy(path, interface, name) ); }
00768
00769 static pointer create(const std::string& interface, const std::string& name, const signal_proxy& src)
00770 { return pointer( new signal_proxy(interface, name, src) ); }
00771
00772 static pointer create(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src)
00773 { return pointer( new signal_proxy(path, interface, name, src) ); }
00774
00775 virtual signal_base::pointer clone()
00776 { return signal_base::pointer( new signal_proxy(*this) ); }
00777
00778 protected:
00779
00780 virtual HandlerResult on_dbus_incoming( SignalMessage::const_pointer msg )
00781 {
00782
00783
00784 T_arg1 _val_1;
00785 T_arg2 _val_2;
00786 T_arg3 _val_3;
00787 T_arg4 _val_4;
00788
00789 try {
00790
00791 Message::iterator i = msg->begin();
00792 i >> _val_1 >> _val_2 >> _val_3 >> _val_4;
00793
00794 this->emit(_val_1,_val_2,_val_3,_val_4);
00795 }
00796 catch ( ErrorInvalidTypecast& e ) {
00797 return NOT_HANDLED;
00798 }
00799
00800 return HANDLED;
00801 }
00802
00803 };
00804
00805
00814 template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5>
00815 class signal_proxy <T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5, nil,nil>
00816 : public sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>, public signal_proxy_base
00817 {
00818 public:
00819
00820 typedef DBusCxxPointer<signal_proxy> pointer;
00821
00822 signal_proxy(const std::string& interface, const std::string& name):
00823 signal_proxy_base(interface, name)
00824 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00825
00826 signal_proxy(const std::string& path, const std::string& interface, const std::string& name):
00827 signal_proxy_base(path, interface, name)
00828 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00829
00830 signal_proxy(const std::string& interface, const std::string& name, const signal_proxy& src) :
00831 sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>(src),
00832 signal_proxy_base(interface, name)
00833 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00834
00835 signal_proxy(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src) :
00836 sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5>(src),
00837 signal_proxy_base(path, interface, name)
00838 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00839
00840 static pointer create(const std::string& interface, const std::string& name)
00841 { return pointer( new signal_proxy(interface, name) ); }
00842
00843 static pointer create(const std::string& path, const std::string& interface, const std::string& name)
00844 { return pointer( new signal_proxy(path, interface, name) ); }
00845
00846 static pointer create(const std::string& interface, const std::string& name, const signal_proxy& src)
00847 { return pointer( new signal_proxy(interface, name, src) ); }
00848
00849 static pointer create(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src)
00850 { return pointer( new signal_proxy(path, interface, name, src) ); }
00851
00852 virtual signal_base::pointer clone()
00853 { return signal_base::pointer( new signal_proxy(*this) ); }
00854
00855 protected:
00856
00857 virtual HandlerResult on_dbus_incoming( SignalMessage::const_pointer msg )
00858 {
00859
00860
00861 T_arg1 _val_1;
00862 T_arg2 _val_2;
00863 T_arg3 _val_3;
00864 T_arg4 _val_4;
00865 T_arg5 _val_5;
00866
00867 try {
00868
00869 Message::iterator i = msg->begin();
00870 i >> _val_1 >> _val_2 >> _val_3 >> _val_4 >> _val_5;
00871
00872 this->emit(_val_1,_val_2,_val_3,_val_4,_val_5);
00873 }
00874 catch ( ErrorInvalidTypecast& e ) {
00875 return NOT_HANDLED;
00876 }
00877
00878 return HANDLED;
00879 }
00880
00881 };
00882
00883
00892 template <class T_return, class T_arg1,class T_arg2,class T_arg3,class T_arg4,class T_arg5,class T_arg6>
00893 class signal_proxy <T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6, nil>
00894 : public sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>, public signal_proxy_base
00895 {
00896 public:
00897
00898 typedef DBusCxxPointer<signal_proxy> pointer;
00899
00900 signal_proxy(const std::string& interface, const std::string& name):
00901 signal_proxy_base(interface, name)
00902 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00903
00904 signal_proxy(const std::string& path, const std::string& interface, const std::string& name):
00905 signal_proxy_base(path, interface, name)
00906 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00907
00908 signal_proxy(const std::string& interface, const std::string& name, const signal_proxy& src) :
00909 sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>(src),
00910 signal_proxy_base(interface, name)
00911 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00912
00913 signal_proxy(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src) :
00914 sigc::signal<T_return, T_arg1,T_arg2,T_arg3,T_arg4,T_arg5,T_arg6>(src),
00915 signal_proxy_base(path, interface, name)
00916 { m_signal_dbus_incoming.connect( sigc::mem_fun(*this, &signal_proxy::on_dbus_incoming) ); }
00917
00918 static pointer create(const std::string& interface, const std::string& name)
00919 { return pointer( new signal_proxy(interface, name) ); }
00920
00921 static pointer create(const std::string& path, const std::string& interface, const std::string& name)
00922 { return pointer( new signal_proxy(path, interface, name) ); }
00923
00924 static pointer create(const std::string& interface, const std::string& name, const signal_proxy& src)
00925 { return pointer( new signal_proxy(interface, name, src) ); }
00926
00927 static pointer create(const std::string& path, const std::string& interface, const std::string& name, const signal_proxy& src)
00928 { return pointer( new signal_proxy(path, interface, name, src) ); }
00929
00930 virtual signal_base::pointer clone()
00931 { return signal_base::pointer( new signal_proxy(*this) ); }
00932
00933 protected:
00934
00935 virtual HandlerResult on_dbus_incoming( SignalMessage::const_pointer msg )
00936 {
00937
00938
00939 T_arg1 _val_1;
00940 T_arg2 _val_2;
00941 T_arg3 _val_3;
00942 T_arg4 _val_4;
00943 T_arg5 _val_5;
00944 T_arg6 _val_6;
00945
00946 try {
00947
00948 Message::iterator i = msg->begin();
00949 i >> _val_1 >> _val_2 >> _val_3 >> _val_4 >> _val_5 >> _val_6;
00950
00951 this->emit(_val_1,_val_2,_val_3,_val_4,_val_5,_val_6);
00952 }
00953 catch ( ErrorInvalidTypecast& e ) {
00954 return NOT_HANDLED;
00955 }
00956
00957 return HANDLED;
00958 }
00959
00960 };
00961
00962
00963
00964 }
00965
00966 #endif