Main Page   Groups   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Concepts
Public Types | Public Member Functions | Static Public Member Functions

itk::TimeStamp Class Reference
[ITK System Objects]

Generate a unique, increasing time value. More...

#include <itkTimeStamp.h>

List of all members.

Public Types

typedef TimeStamp Self

Public Member Functions

void Delete ()
unsigned long GetMTime () const
void Modified ()
 operator unsigned long () const
 TimeStamp ()

bool operator> (TimeStamp &ts)
bool operator< (TimeStamp &ts)

Static Public Member Functions

static const char * GetNameOfClass ()
static SelfNew ()

Detailed Description

Generate a unique, increasing time value.

TimeStamp records a unique time when the method Modified() is executed. This time is guaranteed to be monotonically increasing. Classes use this object to record modified and/or execution time. There is built in support for the binary < and > comparison operators between two TimeStamp objects.

Warning:
On most platforms, this class uses a lock-free incremental counter. The Modified function can safely be called simultaneously by multiple threads on different instances of the class. However, calling the Modified function by different threads on the same instance of the class can lead to some unexpected behavior. The global counter will always be correct but the local m_ModifiedTime might not (see http://www.itk.org/mailman/private/insight-developers/2009-February/011732.html for more detail).

Definition at line 49 of file itkTimeStamp.h.


Member Typedef Documentation

Standard class typedefs.

Definition at line 53 of file itkTimeStamp.h.


Constructor & Destructor Documentation

itk::TimeStamp::TimeStamp (  )  [inline]

Constructor must remain public because classes instantiate TimeStamps implicitly in their construction.

Definition at line 61 of file itkTimeStamp.h.


Member Function Documentation

void itk::TimeStamp::Delete (  )  [inline]

Destoy this instance.

Definition at line 65 of file itkTimeStamp.h.

unsigned long itk::TimeStamp::GetMTime ( void   )  const [inline]

Return this object's Modified time.

Definition at line 82 of file itkTimeStamp.h.

static const char* itk::TimeStamp::GetNameOfClass (  )  [inline, static]

The class name as a string.

Definition at line 69 of file itkTimeStamp.h.

void itk::TimeStamp::Modified (  ) 

Set this objects time to the current time. The current time is just a monotonically increasing unsigned long integer. It is possible for this number to wrap around back to zero. This should only happen for processes that have been running for a very long time, while constantly changing objects within the program. When this does occur, the typical consequence should be that some filters will update themselves when really they don't need to.

Referenced by itk::MatrixOffsetTransformBase< TScalarType, 3, 3 >::SetMatrix(), itk::MatrixOffsetTransformBase< TScalarType, 3, 3 >::SetVarInverseMatrix(), and itk::MatrixOffsetTransformBase< TScalarType, 3, 3 >::SetVarMatrix().

static Self* itk::TimeStamp::New (  )  [static]

Create an instance of this class. We don't want to use reference counting.

itk::TimeStamp::operator unsigned long (  )  const [inline]

Allow for typcasting to unsigned long.

Definition at line 93 of file itkTimeStamp.h.

bool itk::TimeStamp::operator< ( TimeStamp ts  )  [inline]

Support comparisons of time stamp objects directly.

Definition at line 88 of file itkTimeStamp.h.

bool itk::TimeStamp::operator> ( TimeStamp ts  )  [inline]

Support comparisons of time stamp objects directly.

Definition at line 86 of file itkTimeStamp.h.


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

Generated at Tue Jul 13 2010 02:49:56 for ITK by doxygen 1.7.1 written by Dimitri van Heesch, © 1997-2000