Ereignis.cpp 907 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354
  1. #include "Ereignis.h"
  2. #include "Trigger.h"
  3. Ereignis::Ereignis( EreignisTyp typ )
  4. {
  5. this->typ = typ;
  6. ref = 1;
  7. }
  8. Ereignis::~Ereignis()
  9. {}
  10. EreignisTyp Ereignis::getTyp() const
  11. {
  12. return typ;
  13. }
  14. void Ereignis::addParameter( const char *name, Variable *var )
  15. {
  16. params.add( new VarPointer( name, var ) );
  17. }
  18. Variable *Ereignis::getParameter( const char *name ) const
  19. {
  20. for( auto v = params.getIterator(); v; v++ )
  21. {
  22. if( v->getName().istGleich( name ) )
  23. return v->getVariable();
  24. }
  25. return 0;
  26. }
  27. Variable *Ereignis::zParameter( const char *name ) const
  28. {
  29. for( auto v = params.getIterator(); v; v++ )
  30. {
  31. if( v->getName().istGleich( name ) )
  32. return v->zVariable();
  33. }
  34. return 0;
  35. }
  36. Ereignis *Ereignis::getThis()
  37. {
  38. ref++;
  39. return this;
  40. }
  41. Ereignis *Ereignis::release()
  42. {
  43. if( !--ref )
  44. delete this;
  45. return 0;
  46. }