00001 #include "../chain.h"
00002 #include <sigc++/sigc++.h>
00003 #include <iostream>
00004
00005 class A : public SigC::Object {
00006 int fInt;
00007 public:
00008 A(int i) : fInt(i) { cerr << "A(" << fInt << ")\n"; }
00009 ~A() { cerr << "~A(" << fInt << ")\n"; }
00010 int Get() { return fInt; }
00011 void Set(int i) { fInt = i; }
00012 };
00013
00014 int main (int argc, char *argv[])
00015 {
00016 using namespace SigC;
00017
00018 A a1(1), a2(2);
00019 Signal0<void> s;
00020 s.connect(chain(slot(&a2,&A::Set),slot(&a1,&A::Get)));
00021 s.emit();
00022
00023 return 0;
00024 }