In file ../rmem/testpointmgr.h:

namespace diag class testpointMgr

Object for manageing test points

Inheritance:


Public Methods

explicit testpointMgr (double Lazytime = 0)
Default constructor
~testpointMgr ()
Destructor.
void setState (bool Active)
Set state method.
bool areSet () const
Are testpoints set method.
bool areUsed () const
Are testpoints used method.
bool set (tainsec_t* activeTime = 0)
Set method.
bool clear (bool lazy = false)
Clear method.
bool add (const string& chnname)
Add method.
bool del (const string& chnname)
Delete method.
bool del ()
Delete method.

Protected Classes

class testpointinfo
Object for storing test point information
string name
name of test point
int inUse
in use count
bool isSet
true if set
explicit testpointinfo (const string& Name)
Constructor
testpointinfo (const testpointinfo& tpinfo)
Copy constructor

Protected Fields

typedef std::pair <int, testpoint_t> nodetestpoint
Denotes a node/testpoint ID pair
typedef std::map <nodetestpoint, testpointinfo> testpointrecord
Internal list of test points
mutable recursivemutex mux
mutex to protect object
bool active
Active state of manager
testpointrecord testpoints
list of test points
double lazytime
time to keep test points around after clear/delete
double cleartime
time when a lazy clear occured (0 indicates no clear)

Protected Methods

void cleanup ()
Cleanup method.

Documentation

Test point manager. This object implements a test point handler object which can be used to manage a list of test points. It works in two steps: first, test points have to be added to the list, second, they can be set active. Test points can be cleared with a lazy option, i.e. they are not immediately removed from the internal list, so that a successive set can be completed more efficiently.

Usage: In general, a diagnostics test should interact with the test point manager directly, but rather rely on the excitation and the RTDD manager to handle test points. On the other hand a diagnostics supervisory task should use set and clear to activate and deactivate the test points.

explicit testpointMgr(double Lazytime = 0)
Constructs a test point management object.
Parameters:
Lazytime - Time to wait for cleanup after a lazy clear

~testpointMgr()
Destructs a test point management object.

void setState(bool Active)
Set state of test point manager. If the state is set inactive (false), test points will not be physically selected. Everything else will work identical. If set inactive while test points are still active, a clear(false) is performed first.
Parameters:
active - set active if true

bool areSet() const
Returns true if all test points are set active.
Returns:
true if set

bool areUsed() const
Returns true if all test points are in use.
Returns:
true if set

bool set(tainsec_t* activeTime = 0)
Sets test points by sending a request to the test point API.
Returns:
true if successful
Parameters:
active - time when test points become active

bool clear(bool lazy = false)
Clears test points by sending a request to the test point API.
Returns:
true if successful
Parameters:
lazy - lazy clear if true

bool add(const string& chnname)
Adds a test points to the internal list.
Returns:
true if successful
Parameters:
chnname - name of test point

bool del(const string& chnname)
Deletes a test point from the internal list.
Returns:
true if successful
Parameters:
chnname - name of test point

bool del()
Deletes all test point from the internal list.
Returns:
true if successful

class testpointinfo
Test point information object. This object stores information associated with a test point.

Author:
Written December 1998 by Daniel Sigg
Version:
0.1

string name
name of test point

int inUse
in use count

bool isSet
true if set

explicit testpointinfo(const string& Name)
Constructs a test point information object.
Parameters:
Name - name of test point

testpointinfo(const testpointinfo& tpinfo)
Constructs a test point information object.
Parameters:
Name - name of test point

typedef std::pair <int, testpoint_t> nodetestpoint
Denotes a node/testpoint ID pair

typedef std::map <nodetestpoint, testpointinfo> testpointrecord
Internal list of test points

mutable recursivemutex mux
mutex to protect object

bool active
Active state of manager

testpointrecord testpoints
list of test points

double lazytime
time to keep test points around after clear/delete

double cleartime
time when a lazy clear occured (0 indicates no clear)

void cleanup()
Cleanup task. Clears testpoints if lazy delay has expired.


This class has no child classes.
Author:
Written December 1998 by Daniel Sigg
Version:
0.1

alphabetic index hierarchy of classes


Please send questions and comments to sigg_d@ligo-wa.caltech.edu


generated by doc++