aGrUM  0.16.0
signaler0_tpl.h
Go to the documentation of this file.
1 
31 // To help IDE parsers
33 
34 namespace gum {
35  namespace __sig__ {
36 
37  template < class TargetClass >
38  Connector0< TargetClass >::Connector0() {
39  GUM_CONSTRUCTOR(Connector0);
40  __target = nullptr;
41  __action = nullptr;
42  }
43 
44  template < class TargetClass >
45  Connector0< TargetClass >::Connector0(
46  TargetClass* target, void (TargetClass::*action)(const void*)) {
47  GUM_CONSTRUCTOR(Connector0);
48  __target = target;
49  __action = action;
50  }
51 
52  template < class TargetClass >
53  Connector0< TargetClass >::Connector0(const Connector0< TargetClass >* src) :
54  IConnector0(src) {
55  GUM_CONS_CPY(Connector0);
56  }
57 
58  template < class TargetClass >
59  Connector0< TargetClass >::~Connector0() {
60  GUM_DESTRUCTOR(Connector0);
61  }
62 
63  template < class TargetClass >
64  IConnector0* Connector0< TargetClass >::clone() {
65  return new Connector0< TargetClass >(*this);
66  }
67 
68  template < class TargetClass >
69  IConnector0* Connector0< TargetClass >::duplicate(Listener* target) {
70  return new Connector0< TargetClass >((TargetClass*)target, __action);
71  }
72 
73  template < class TargetClass >
74  void Connector0< TargetClass >::notify(const void* src) {
75  (__target->*__action)(src);
76  }
77 
78  template < class TargetClass >
79  Listener* Connector0< TargetClass >::target() const {
80  return __target;
81  }
82 
83  } // namespace __sig__
84 
85 } // namespace gum
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.
Definition: agrum.h:25
Copyright 2005-2019 Pierre-Henri WUILLEMIN et Christophe GONZALES (LIP6) {prenom.nom}_at_lip6.fr.