OpenWalnut  1.2.5
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Friends Groups Pages
Public Member Functions | Protected Member Functions | Protected Attributes | Private Attributes | Friends | List of all members
WModuleImpl Class Reference

Class implementing a simple module since WModuleConnector itself is not usable for proper testing itself because it is has pure virtual methods, i.e. More...

#include <WModuleConnector_test.h>

+ Inheritance diagram for WModuleImpl:

Public Member Functions

 WModuleImpl (std::string n="?")
 Constructor.
virtual ~WModuleImpl ()
 Destructor.
virtual boost::shared_ptr
< WModule
factory () const
 Create instance of this module class.
virtual const std::string getName () const
 Returns name of this module.
const std::string getDescription () const
 Returns description of module.
virtual void connectors ()
 Set up connectors.
- Public Member Functions inherited from WModule
 WModule ()
 Constructs a new WModule instance.
virtual ~WModule ()
 Destructor.
const InputConnectorListgetInputConnectors () const
 Gives back input connectors.
boost::shared_ptr
< WModuleInputConnector
getInputConnector (std::string name)
 Finds the named connector for the module.
boost::shared_ptr
< WModuleInputConnector
findInputConnector (std::string name)
 Finds the named connector for the module.
const OutputConnectorListgetOutputConnectors () const
 Gives back output connectors.
boost::shared_ptr
< WModuleOutputConnector
getOutputConnector (std::string name)
 Finds the named connector for the module.
boost::shared_ptr
< WModuleOutputConnector
findOutputConnector (std::string name)
 Finds the named connector for the module.
boost::shared_ptr
< WModuleConnector
getConnector (std::string name)
 Finds the named connector for the module.
boost::shared_ptr
< WModuleConnector
findConnector (std::string name)
 Finds the named connector for the module.
boost::shared_ptr< WPropertiesgetProperties () const
 Return a pointer to the properties object of the module.
boost::shared_ptr< WPropertiesgetInformationProperties () const
 Return a pointer to the information properties object of the module.
const WBoolFlagisInitialized () const
 Determines whether the module instance is properly initialized.
const WBoolFlagisUseable () const
 Checks whether the module instance is ready to be used.
const WBoolFlagisAssociated () const
 Checks whether this module is associated with an container.
const WBoolFlagisReady () const
 Checks whether this module is ready.
const WBoolFlagisCrashed () const
 Checks whether this module has been crashed.
const WBoolFlagisReadyOrCrashed () const
 This is the logical or of isReady and isCrashed.
const WBoolFlagisRunning () const
 Returns a flag denoting whether the thread currently is running or nor.
boost::shared_ptr
< WModuleContainer
getAssociatedContainer () const
 The container this module is associated with.
virtual boost::signals2::connection subscribeSignal (MODULE_SIGNAL signal, t_ModuleGenericSignalHandlerType notifier)
 Connects a specified notify function with a signal this module instance is offering.
virtual boost::signals2::connection subscribeSignal (MODULE_SIGNAL signal, t_ModuleErrorSignalHandlerType notifier)
 Connects a specified notify function with a signal this module instance is offering.
virtual boost::shared_ptr
< WProgressCombiner
getRootProgressCombiner ()
 Gets the modules base progress.
virtual const char ** getXPMIcon () const
 Get the icon for this module in XPM format.
virtual MODULE_TYPE getType () const
 Gets the type of the module.
void disconnect ()
 Completely disconnects all connected connectors of this module.
WCombinerTypes::WDisconnectList getPossibleDisconnections ()
 Gives a list of all WDisconnectCombiners possible.
void setLocalPath (boost::filesystem::path path)
 Sets the local module path.
boost::filesystem::path getLocalPath () const
 Returns the local path of the module.
bool isDeprecated () const
 Checks whether the module was marked as deprecated.
std::string getDeprecationMessage () const
 Queries the deprecation message of a module if specified.
- Public Member Functions inherited from WThreadedRunner
 WThreadedRunner ()
 Default constructor.
virtual ~WThreadedRunner ()
 Destructor.
virtual void run ()
 Run thread.
void run (THREADFUNCTION f)
 Run thread.
void wait (bool requestFinish=false)
 Wait for the thread to be finished.
virtual void requestStop ()
 This method's purpose is to request a stop without waiting for it.
- Public Member Functions inherited from WPrototyped
 WPrototyped ()
 Default constructor.
virtual ~WPrototyped ()
 Destructor.
template<typename T >
bool isA ()
 Checks whether the actual prototype has the specified runtime type.

Protected Member Functions

virtual void moduleMain ()
 Entry point after loading the module.
virtual void notifyConnectionEstablished (boost::shared_ptr< WModuleConnector >, boost::shared_ptr< WModuleConnector >)
 Notifier called whenever a connection got established.
virtual void notifyConnectionClosed (boost::shared_ptr< WModuleConnector >, boost::shared_ptr< WModuleConnector >)
 Notifier called whenever a connection got closed.
virtual void notifyDataChange (boost::shared_ptr< WModuleConnector >, boost::shared_ptr< WModuleConnector > output)
 Notifier called whenever a changed data was propagated to one of this modules connectors.
- Protected Member Functions inherited from WModule
void threadMain ()
 Thread entry point.
void setAssociatedContainer (boost::shared_ptr< WModuleContainer > container)
 Sets the container this module is associated with.
virtual void properties ()
 Initialize properties in this function.
virtual void requirements ()
 Initialize requirements in this function.
virtual std::string deprecated () const
 This function allows module programmers to mark their modules deprecated in a user-friendly way.
void initialize ()
 Manages connector initialization.
virtual void cleanup ()
 Called whenever the module should shutdown.
void addConnector (boost::shared_ptr< WModuleInputConnector > con)
 Adds the specified connector to the list of inputs.
void addConnector (boost::shared_ptr< WModuleOutputConnector > con)
 Adds the specified connector to the list of outputs.
void removeConnectors ()
 Removes all connectors properly.
virtual void activate ()
 Callback for m_active.
virtual const
t_GenericSignalHandlerType 
getSignalHandler (MODULE_CONNECTOR_SIGNAL signal)
 Gives the signal handler function responsible for a given signal.
void ready ()
 Call this whenever your module is ready and can react on property changes.
wlog::WStreamedLogger infoLog () const
 Logger instance for comfortable info logging.
wlog::WStreamedLogger debugLog () const
 Logger instance for comfortable debug logging.
wlog::WStreamedLogger warnLog () const
 Logger instance for comfortable warning- logs.
wlog::WStreamedLogger errorLog () const
 Logger instance for comfortable error logging.
- Protected Member Functions inherited from WThreadedRunner
virtual void notifyStop ()
 Gets called when the thread should be stopped.
void yield () const
 Give remaining execution timeslice to another thread.
void sleep (const int32_t t) const
 Sets thread asleep.
void msleep (const int32_t t) const
 Sets thread asleep.
void waitForStop ()
 Let the thread sleep until a stop request was given.

Protected Attributes

std::string n
 temporary name string
- Protected Attributes inherited from WModule
boost::shared_ptr< WPropertiesm_properties
 The property object for the module.
boost::shared_ptr< WPropertiesm_infoProperties
 The property object for the module containing only module whose purpose is "PV_PURPOSE_INFORMNATION".
boost::shared_ptr
< WProgressCombiner
m_progress
 Progress indicator used as parent for all progress' of this module.
WBoolFlag m_initialized
 True if everything is initialized and ready to be used.
WBoolFlag m_isAssociated
 True if container got associated with this flag.
WBoolFlag m_isUsable
 True if associated && initialized.
WBoolFlag m_isReady
 True if ready() was called.
WBoolFlag m_isCrashed
 True whenever an exception is thrown during moduleMain.
WBoolFlag m_isReadyOrCrashed
 It is true whenever m_isReady or m_isCrashed is true.
WBoolFlag m_isRunning
 True if the module currently is running.
boost::shared_ptr< WProgressm_readyProgress
 Progress indicator for the "ready" state.
WConditionSet m_moduleState
 The internal state of the module.
boost::shared_ptr
< WModuleContainer
m_container
 The container this module belongs to.
InputConnectorList m_inputConnectors
 Set of input connectors associated with this module.
OutputConnectorList m_outputConnectors
 Set of output connectors associated with this module.
WPropBool m_active
 True whenever the module should be active.
WPropString m_runtimeName
 This property holds a user specified name for the current module instance.
boost::filesystem::path m_localPath
 The path where the module binary resides in.
Requirements m_requirements
 The list of requirements.
- Protected Attributes inherited from WThreadedRunner
boost::thread m_thread
 Thread instance.
WBoolFlag m_shutdownFlag
 Condition getting fired whenever the thread should quit.

Private Attributes

int data
 The data lastly submitted.
boost::shared_ptr
< WModuleInputData
< WTestTransferableBase > > 
m_input
 Input connection.
boost::shared_ptr
< WModuleInputData
< WTestTransferableDerived > > 
m_inputDerived
 Input connection with a derived class as transferable.
boost::shared_ptr
< WModuleOutputData
< WTestTransferableBase > > 
m_output
 Output connection.
boost::shared_ptr
< WModuleOutputData
< WTestTransferableDerived > > 
m_outputDerived
 Output connection with a derived class as transferable.

Friends

class WModuleConnectorTest

Additional Inherited Members

- Public Types inherited from WModule
typedef std::vector
< boost::shared_ptr
< WModuleInputConnector > > 
InputConnectorList
 The type for the list of input connectors.
typedef std::vector
< boost::shared_ptr
< WModuleOutputConnector > > 
OutputConnectorList
 The type for the list of output connectors.
typedef boost::shared_ptr
< WModule
SPtr
 Shared pointer to a WModule.
typedef boost::shared_ptr
< const WModule
ConstSPtr
 Shared pointer to a const WModule.
- Protected Types inherited from WModule
typedef std::vector
< WRequirement * > 
Requirements
 The type of the requirement list.

Detailed Description

Class implementing a simple module since WModuleConnector itself is not usable for proper testing itself because it is has pure virtual methods, i.e.

is abstract.

Definition at line 184 of file WModuleConnector_test.h.

Constructor & Destructor Documentation

WModuleImpl::WModuleImpl ( std::string  n = "?")
inlineexplicit

Constructor.

Parameters
na string to test with (sets initial value).

Definition at line 195 of file WModuleConnector_test.h.

References n.

Referenced by factory().

virtual WModuleImpl::~WModuleImpl ( )
inlinevirtual

Destructor.

Definition at line 203 of file WModuleConnector_test.h.

Member Function Documentation

virtual void WModuleImpl::connectors ( )
inlinevirtual

Set up connectors.

Reimplemented from WModule.

Definition at line 240 of file WModuleConnector_test.h.

References WModule::addConnector(), m_input, m_inputDerived, m_output, and m_outputDerived.

virtual boost::shared_ptr< WModule > WModuleImpl::factory ( ) const
inlinevirtual

Create instance of this module class.

Returns
new instance of this module.

Implements WModule.

Definition at line 212 of file WModuleConnector_test.h.

References WModuleImpl().

const std::string WModuleImpl::getDescription ( ) const
inlinevirtual

Returns description of module.

Returns
the description.

Implements WPrototyped.

Definition at line 232 of file WModuleConnector_test.h.

virtual const std::string WModuleImpl::getName ( ) const
inlinevirtual

Returns name of this module.

Returns
the name of this module.

Implements WPrototyped.

Definition at line 222 of file WModuleConnector_test.h.

virtual void WModuleImpl::moduleMain ( )
inlineprotectedvirtual

Entry point after loading the module.

Runs in separate thread.

Implements WModule.

Definition at line 276 of file WModuleConnector_test.h.

References WThreadedRunner::m_shutdownFlag, and WThreadedRunner::sleep().

virtual void WModuleImpl::notifyConnectionClosed ( boost::shared_ptr< WModuleConnector ,
boost::shared_ptr< WModuleConnector  
)
inlineprotectedvirtual

Notifier called whenever a connection got closed.

Reimplemented from WModule.

Definition at line 299 of file WModuleConnector_test.h.

virtual void WModuleImpl::notifyConnectionEstablished ( boost::shared_ptr< WModuleConnector ,
boost::shared_ptr< WModuleConnector  
)
inlineprotectedvirtual

Notifier called whenever a connection got established.

Reimplemented from WModule.

Definition at line 289 of file WModuleConnector_test.h.

virtual void WModuleImpl::notifyDataChange ( boost::shared_ptr< WModuleConnector ,
boost::shared_ptr< WModuleConnector output 
)
inlineprotectedvirtual

Notifier called whenever a changed data was propagated to one of this modules connectors.

param input the local connector receiving the event.

Parameters
outputthe remote connector propagating the event.

Reimplemented from WModule.

Definition at line 312 of file WModuleConnector_test.h.

References data, and WModuleOutputData< T >::getData().

Member Data Documentation

int WModuleImpl::data
private

The data lastly submitted.

Definition at line 338 of file WModuleConnector_test.h.

Referenced by notifyDataChange().

boost::shared_ptr< WModuleInputData< WTestTransferableBase > > WModuleImpl::m_input
private

Input connection.

Definition at line 343 of file WModuleConnector_test.h.

Referenced by connectors().

boost::shared_ptr< WModuleInputData< WTestTransferableDerived > > WModuleImpl::m_inputDerived
private

Input connection with a derived class as transferable.

Definition at line 348 of file WModuleConnector_test.h.

Referenced by connectors().

boost::shared_ptr< WModuleOutputData< WTestTransferableBase > > WModuleImpl::m_output
private

Output connection.

Definition at line 353 of file WModuleConnector_test.h.

Referenced by connectors().

boost::shared_ptr< WModuleOutputData< WTestTransferableDerived > > WModuleImpl::m_outputDerived
private

Output connection with a derived class as transferable.

Definition at line 358 of file WModuleConnector_test.h.

Referenced by connectors().

std::string WModuleImpl::n
protected

temporary name string

Definition at line 273 of file WModuleConnector_test.h.

Referenced by WModuleImpl().


The documentation for this class was generated from the following file: