#include <OMKEventSignalEmitterUtil.h>
Inheritance diagram for OMK::EventSignalEmitterUtil:
Public Member Functions | |
virtual | ~EventSignalEmitterUtil () |
Protected Member Functions | |
EventSignalEmitterUtil () | |
Constructor. | |
virtual bool | loadParametersUtil (ExtensibleSimulatedObject *owner, const ConfigurationParameterDescriptor *node) |
virtual void | sendUtil (ExtensibleSimulatedObject *owner) |
The overwritten method. | |
Protected Attributes | |
bool | _signal |
The flag which indicate if it is a signal or a event. | |
EventIdentifier | _eventId |
The event id. | |
std::vector< Name > | _listeners |
The names of the listening objects. |
Definition at line 15 of file OMKEventSignalEmitterUtil.h.
EventSignalEmitterUtil::EventSignalEmitterUtil | ( | ) | [protected] |
Constructor.
It is protected, because it is only called by the sons.
Definition at line 6 of file OMKEventSignalEmitterUtil.cpp.
EventSignalEmitterUtil::~EventSignalEmitterUtil | ( | ) | [virtual] |
bool EventSignalEmitterUtil::loadParametersUtil | ( | ExtensibleSimulatedObject * | owner, | |
const ConfigurationParameterDescriptor * | node | |||
) | [protected, virtual] |
Reimplemented in OMK::ValuedEventSignalEmitterUtilT< T, ModelType >, and OMK::MultiValuedEventSignalEmitterUtilT< T, ModelType >.
Definition at line 17 of file OMKEventSignalEmitterUtil.cpp.
References _eventId, _listeners, _signal, OMK::ParametersAccessor::get(), OMK::SimulatedObject::getController(), OMK::Controller::getPointerToSimulatedObjectNamed(), and OMK::SimulatedObject::registerForSignal().
Referenced by OMK::TriggerEmitterExtension::loadExtensionParameters(), OMK::Inp::KeyEmitterExtension::loadExtensionParameters(), OMK::MultiValuedEventSignalEmitterUtilT< T, ModelType >::loadParametersUtil(), and OMK::ValuedEventSignalEmitterUtilT< T, ModelType >::loadParametersUtil().
00019 { 00020 bool ok = true ; 00021 // Necessary 00022 ok = ok && ParametersAccessor::get( node, "EventName", _eventId, owner ) ; 00023 // Optional by default true 00024 ParametersAccessor::get( node, "Signal", _signal ) ; 00025 // Optional by default empty 00026 ParametersAccessor::get( node, "Listeners", _listeners ) ; 00027 00028 if( _signal ) 00029 { 00030 for( std::vector< Name >::const_iterator i = _listeners.begin() ; 00031 i != _listeners.end() ; 00032 i++ ) 00033 { 00034 SimulatedObject *object = owner->getController().getPointerToSimulatedObjectNamed( *i ) ; 00035 if( object ) object->registerForSignal( _eventId ) ; 00036 } 00037 // No more usefull => delete it 00038 _listeners.clear() ; 00039 } 00040 00041 return ok ; 00042 }
void EventSignalEmitterUtil::sendUtil | ( | ExtensibleSimulatedObject * | owner | ) | [protected, virtual] |
The overwritten method.
Fire a signal or send an event according to the configuration.
Reimplemented in OMK::ValuedEventSignalEmitterUtilT< T, ModelType >.
Definition at line 45 of file OMKEventSignalEmitterUtil.cpp.
References _eventId, _listeners, _signal, OMK::SimulatedObject::fireSignal(), and OMK::SimulatedObject::sendEvent().
Referenced by OMK::Inp::KeyEmitterExtension::action(), and OMK::TriggerEmitterExtension::postComputeParameters().
00046 { 00047 if( _signal ) 00048 { // Fire the signal 00049 owner->fireSignal( _eventId ) ; 00050 } 00051 else 00052 { // Send the event for each listener 00053 for( std::vector< Name >::const_iterator i = _listeners.begin() ; 00054 i != _listeners.end() ; 00055 i++ ) 00056 { 00057 owner->sendEvent( *i, _eventId ) ; 00058 } 00059 } 00060 }
bool OMK::EventSignalEmitterUtil::_signal [protected] |
The flag which indicate if it is a signal or a event.
true, will fire a signal, false, will send a event.
Definition at line 28 of file OMKEventSignalEmitterUtil.h.
Referenced by OMK::MultiValuedEventSignalEmitterUtilT< T, ModelType >::loadParametersUtil(), OMK::ValuedEventSignalEmitterUtilT< T, ModelType >::loadParametersUtil(), loadParametersUtil(), OMK::MultiValuedEventSignalEmitterUtilT< T, ModelType >::sendUtil(), OMK::ValuedEventSignalEmitterUtilT< T, ModelType >::sendUtil(), and sendUtil().
EventIdentifier OMK::EventSignalEmitterUtil::_eventId [protected] |
The event id.
Definition at line 30 of file OMKEventSignalEmitterUtil.h.
Referenced by OMK::MultiValuedEventSignalEmitterUtilT< T, ModelType >::loadParametersUtil(), OMK::ValuedEventSignalEmitterUtilT< T, ModelType >::loadParametersUtil(), loadParametersUtil(), OMK::MultiValuedEventSignalEmitterUtilT< T, ModelType >::sendUtil(), OMK::ValuedEventSignalEmitterUtilT< T, ModelType >::sendUtil(), and sendUtil().
std::vector< Name > OMK::EventSignalEmitterUtil::_listeners [protected] |
The names of the listening objects.
Definition at line 32 of file OMKEventSignalEmitterUtil.h.
Referenced by OMK::MultiValuedEventSignalEmitterUtilT< T, ModelType >::loadParametersUtil(), OMK::ValuedEventSignalEmitterUtilT< T, ModelType >::loadParametersUtil(), loadParametersUtil(), OMK::MultiValuedEventSignalEmitterUtilT< T, ModelType >::sendUtil(), OMK::ValuedEventSignalEmitterUtilT< T, ModelType >::sendUtil(), and sendUtil().
Documentation generated on Mon Jun 9 11:46:03 2008 |
Generated with doxygen by Dimitri van Heesch , 1997-2007 |