DUECA/DUSIME
Loading...
Searching...
No Matches
Classes | Public Member Functions | Static Public Member Functions | Static Public Attributes | Protected Member Functions | Protected Attributes | Static Protected Attributes | List of all members
dueca::ActivityViewBase Class Referenceabstract

This is a module that can generate an overview of the activity (timelines) in a set of connected DUECA nodes. More...

#include <ActivityViewBase.hxx>

Inheritance diagram for dueca::ActivityViewBase:
Inheritance graph
[legend]
Collaboration diagram for dueca::ActivityViewBase:
Collaboration graph
[legend]

Classes

struct  HighLight
 Highlighted and listed area. More...
 

Public Member Functions

 ActivityViewBase (Entity *e, const char *part, const PrioritySpec &ps)
 Constructor.
 
 ~ActivityViewBase ()
 Destructor.
 
virtual bool complete ()=0
 Completion, creates the window.
 
void startModule (const TimeSpec &time)
 Start the viewer, not used, since it will always work.
 
void stopModule (const TimeSpec &time)
 Stop the viewer, not used.
 
void readLogOwn (const TimeSpec &time)
 Re-draw the display of activities.
 
void readLogOthers (const TimeSpec &time)
 Re-draw the display of activities.
 
void updateLines (const ActivityLog *log)
 Re-draw the display of activities.
 
void getActivityList (const TimeSpec &time)
 Read a list of activity descriptions.
 
void sendSweepRequest (const TimeSpec &time)
 Send a request to sweep up logs.
 
void triggerUpdate ()
 Call for a measurement of the activities.
 
virtual bool setPositionAndSize (const std::vector< int > &ps)
 Pre-define a position and size for the window.
 
bool setLookAhead (const double &ahead)
 Change the look-ahead time.
 
void setSpan (double span)
 Change the span of the logs.
 
bool isPrepared ()
 Returns true if the module is prepared for starting.
 
const string32getActivityName (int node, int acno)
 Return the name of an activity (if known)
 
void processLog (const ActivityLog *log)
 Process a single log.
 
virtual void updateLines (unsigned node)=0
 draw the log in a view
 
- Public Member Functions inherited from dueca::Module
virtual ~Module ()
 Destructor.
 
virtual bool isInitialPrepared ()
 To check whether the module is prepared to be prepared.
 
ObjectType getObjectType () const
 The object type within DUECA.
 
virtual void initialStartModule (const TimeSpec &time)
 Initial start opportunity.
 
virtual void finalStopModule (const TimeSpec &time)
 Final stop command.
 
const Entity * getMyEntity ()
 Return a pointer to the entity to which this module belongs.
 
const ModuleStategetState ()
 Return the module state.
 
- Public Member Functions inherited from dueca::NamedObject
const std::string getEntity () const
 Returns the "entity" part of the name.
 
const std::string getClass () const
 Returns the "class" part of the name.
 
const std::string getPart () const
 Returns the sub-entity or "part" part of the name.
 
const NameSetgetNameSet () const
 This returns the complete name set.
 
const GlobalIdgetId () const
 This returns the id.
 

Static Public Member Functions

static const ParameterTablegetParameterTable ()
 Table with adjustable parameters.
 
static ActivityViewBasesingle ()
 Obtain a pointer to the singleton.
 

Static Public Attributes

static const char *const classname
 Name of the module class.
 

Protected Member Functions

void tokenValid (const TimeSpec &ts)
 Function on token completion.
 
void requestDescriptionList (const TimeSpec &time)
 Request a list with descriptions from managers.
 
- Protected Member Functions inherited from dueca::Module
 Module (const Entity *e, const char *m_class, const char *part)
 Constructor.
 
virtual void setSafetyStop ()
 Put a brake on this module's activities.
 
- Protected Member Functions inherited from dueca::NamedObject
 NamedObject (const GlobalId &id)
 Reserve for AssociateObject.
 
 NamedObject (const NameSet &ns)
 Normal constructor, protected, because it has no use to create a NamedObject by itself.
 
virtual ~NamedObject ()
 Destructor.
 

Protected Attributes

Callback< ActivityViewBasetoken_valid
 Function on token completion.
 
bool token_action
 Flag to remember token completion.
 
bool can_start
 Flag to indicate start possible.
 
ChannelWriteToken send_request
 Access token for a channel over which log requests are sent.
 
ChannelReadToken log_channel0
 Access token for a channel with the incoming logs.
 
ChannelReadToken log_channelO
 Access token for a channel with the incoming logs.
 
vector< ActivityWeavercurrent_logs
 A vector with the current logs.
 
Callback< ActivityViewBasecb1
 Callback object 1, for processing log reports from local node.
 
Callback< ActivityViewBasecb2
 Callback object 2, for processing log reports from elsewhere.
 
Callback< ActivityViewBasecb3
 Callback object 3, for sending out a sweep-up request.
 
ActivityCallback process_log_reports0
 The activity that handles the incoming logs.
 
ActivityCallback process_log_reportsO
 The activity that handles the incoming logs.
 
ActivityCallback send_sweep_request
 Sweep up logs.
 
AperiodicAlarm sweep_alarm
 Time for sweeping.
 
bool sweep_done
 Flag to remember sweeping.
 
int ticks_per_sec
 Number of clock ticks per second, needed to calculate look-ahead times.
 
int lookahead
 The time to look ahead for requests (should be time needed for all requests to arrive)
 
TimeTickType prev_request_end
 The time at which the previous request for activity information ends.
 
TimeTickType first_base_tick
 Tick at which request has been sent.
 
TimeTickType current_base_tick
 Tick at which current request has been / will be sent.
 
double dspan
 Span of recording period, in seconds.
 
double vspan
 Span of the view, in seconds.
 
ofstream activity_log
 File for dumping activity logs.
 
HighLight hl
 Details of the highlighted area.
 
HighLight hlnew
 Details of a new highlighted area.
 
- Protected Attributes inherited from dueca::Module
ModuleState state
 Flag to remember whether we are stopped due to some error with hardware device manipulation.
 

Static Protected Attributes

static ActivityViewBasesingleton
 singleton pointer, there can only be one view in an executable.
 

Detailed Description

This is a module that can generate an overview of the activity (timelines) in a set of connected DUECA nodes.

This module can be created in the model script. See the description of TimingView for more information about how to set up the "dueca" part of the model script for your application.

Member Function Documentation

◆ complete()

virtual bool dueca::ActivityViewBase::complete ( )
pure virtual

Completion, creates the window.

Reimplemented from dueca::Module.

Implemented in dueca::ActivityView.

◆ startModule()

void dueca::ActivityViewBase::startModule ( const TimeSpec & time)
virtual

Start the viewer, not used, since it will always work.

Implements dueca::Module.

◆ stopModule()

void dueca::ActivityViewBase::stopModule ( const TimeSpec & time)
virtual

Stop the viewer, not used.

Implements dueca::Module.

◆ setPositionAndSize()

virtual bool dueca::ActivityViewBase::setPositionAndSize ( const std::vector< int > & ps)
virtual

Pre-define a position and size for the window.

Reimplemented in dueca::ActivityView.

◆ isPrepared()

bool dueca::ActivityViewBase::isPrepared ( )
virtual

Returns true if the module is prepared for starting.

Implements dueca::Module.

◆ updateLines()

virtual void dueca::ActivityViewBase::updateLines ( unsigned node)
pure virtual

draw the log in a view

Implemented in dueca::ActivityView.

Member Data Documentation

◆ current_logs

vector<ActivityWeaver> dueca::ActivityViewBase::current_logs
protected

A vector with the current logs.

ActivityWeaver objects assemble and interpret the raw logs, and can be queried to obtain a nice time-line. Each node needs one weaver.


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