Class: TStartStopTimingTest

Declaration: StartStopTimingTest.h

Taxonomy Categories:

Member Functions:


Interface Category:

Developer Tool Programmer Interface.

Inherits From:

TTimingTest

Inherited By:

None.

Purpose:

An abstract framework class derived from TTimingTest. Clients should write derived classes of TStartStopTimingTest to accomplish timing measurements too complicated to achieve with TTimingTest. TStartStopTimingTest is less accurate than TTimingTest, so it should not be used if TTimingTest can be used.

Instantiation:

Allocate on the heap or the stack.

Deriving Classes:

Clients must derive this class to use it and override StartStopTimingTest and optionally EmptyStartStopTimingTest.

Concurrency:

Not multithread safe.

Resource Use:

No special requirements.

Member Function: TStartStopTimingTest::StartStopTimingTest

virtual void StartStopTimingTest (TTimingTestStopwatch &)

Interface Category:

Developer Tool Programmer Interface.

Purpose:

Derived classes must override StartStopTimingTest. In the overridden StartStopTimingTest function, clients should do any setup necessary, then start the timer (which is passed into the function), then do the timed operation, then stop the timer, then do any cleanup necessary.

Calling Context:

Called by framework. Do not call this function directly.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TStartStopTimingTest::EmptyStartStopTimingTest

virtual void EmptyStartStopTimingTest (TTimingTestStopwatch &)

Interface Category:

Developer Tool Programmer Interface.

Purpose:

If the StartStopTimingTest function stops and starts the timer exactly once, then you do not need to override this function. On the other hand, if your StartStopTimingTest function starts and stops the timer more than once, then you should override EmptyStartStopTimingTest.

Calling Context:

Called by framework. Do not call this function directly.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TStartStopTimingTest::operator=

TStartStopTimingTest & operator =(const TStartStopTimingTest & other)

Interface Category:

Developer Tool Programmer Interface.

Purpose:

Assignment operator.

Calling Context:

Called when an object is assigned to another compatible object.

Parameters:

Return Value:

A non-const reference to the left-hand side object.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TStartStopTimingTest::TStartStopTimingTest

  1. TStartStopTimingTest (const TStartStopTimingTest & other)
  2. TStartStopTimingTest ()
  3. TStartStopTimingTest (unsigned long timingCount, unsigned long sampleCount)
  4. TStartStopTimingTest (unsigned long timingCount, unsigned long sampleCount, bool doPCSampling, bool continuallyCalibrate, bool timingIsOn)

Interface Category:

Developer Tool Programmer Interface.

Purpose:

  1. Copy constructor.
  2. Default constructor.
  3. Constructor which takes the timing count and the sample count.
  4. Constructor which takes the timing count, the sample count, the flag for PCSampling (program counter sampling), the flag for calibration, and the flag for whether timing is on.

Calling Context:

  1. Called to copy an object.
  2. Called by the stream-in operators.
  3. Call this function directly.
  4. Call this function directly.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.

Member Function: TStartStopTimingTest::~TStartStopTimingTest

virtual ~ TStartStopTimingTest ()

Interface Category:

Developer Tool Programmer Interface.

Purpose:

Destructor.

Calling Context:

Called to destroy an object.

Parameters:

Return Value:

None.

Exceptions:

Throws no exceptions, passes all exceptions through.

Concurrency:

Not multithread safe.

Other Considerations:

None.
Click the icon to mail questions or corrections about this material to Taligent personnel.
Copyright©1995 Taligent,Inc. All rights reserved.