ObjectSignalBus.cpp 824 B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. #ifndef OBJECTSIGNALBUS_CPP
  2. #define OBJECTSIGNALBUS_CPP
  3. #include "ObjectSignalBus.h"
  4. using namespace std;
  5. template<class T>
  6. ObjectSignalBus<T>::ObjectSignalBus(){
  7. }
  8. template<class T>
  9. ObjectSignalBus<T>::~ObjectSignalBus(){
  10. }
  11. template<class T>
  12. void ObjectSignalBus<T>::emit(string n){
  13. if(hasSignal(n)){
  14. SignalEvent* event = createSignalEvent(n,NULL);
  15. sendEvent(n, event);
  16. }
  17. }
  18. template<class T>
  19. void ObjectSignalBus<T>::emit(string n, T* _data){
  20. if(hasSignal(n)){
  21. SignalEvent* event = createSignalEvent(n, _data);
  22. sendEvent(n, event);
  23. }
  24. }
  25. template<class T>
  26. SignalEvent* ObjectSignalBus<T>::createSignalEvent(string n){
  27. return new ObjectSignalEvent<T>(n,NULL);
  28. }
  29. template<class T>
  30. SignalEvent* ObjectSignalBus<T>::createSignalEvent(string n, T* _data){
  31. return new ObjectSignalEvent<T>(n,_data);
  32. }
  33. #endif