vtkTimeStamp用来记录对象的修改时间。
包括两个unsigned long 类型的私有数据ModifiedTime和vtkTime,其中vtkTime时静态的,并被初始为0。ModifiedTime用来保存修改时间值,vtkTime是每次修改的累加量。
成员函数包括:
void Modified() {this->ModifiedTime = ++vtkTime;};//修改时间更改
unsigned long int GetMTime() {return ModifiedTime;};//获取修改时间
int operator>(vtkTimeStamp& ts) {return (this->ModifiedTime > ts.ModifiedTime);};
int operator<(vtkTimeStamp& ts) {return (this->ModifiedTime < ts.ModifiedTime);};
operator unsigned long int() {return this->ModifiedTime;};//重载一些操作符
vtkSetGet定义了两个常量VTK_LARGE_FLOAT和VTK_LARGE_INTEGER,宏定义了一些GetSet函数和debug,warning和error printout信息。
vtkObject除了上一节的Printing还包括debugging,modified time.
// debugging
virtual void DebugOn();
virtual void DebugOff();
int GetDebug();
// modified time
virtual unsigned long int GetMTime();
virtual void Modified();
大多数的vtk类都要继承自vtkObject,例外的情况之一是一些helper ,另一种情况是多重继承问题,这就用到的vtklwObject,具体情况还没有搞清楚。
参考:
静态函数:http://blog.csdn.net/ugg/archive/2006/12/04/1428872.aspx
宏定义:http://staff.it.uts.edu.au/~ypisan/programming/macros.html
多重继承:http://www.cppblog.com/iuranus/archive/2008/12/18/69722.html