00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: $RCSfile: vtkMPIEventLog.h,v $ 00005 Language: C++ 00006 00007 Copyright (c) 1993-2002 Ken Martin, Will Schroeder, Bill Lorensen 00008 All rights reserved. 00009 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00010 00011 This software is distributed WITHOUT ANY WARRANTY; without even 00012 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00013 PURPOSE. See the above copyright notice for more information. 00014 00015 =========================================================================*/ 00047 #ifndef __vtkMPIEventLog_h 00048 #define __vtkMPIEventLog_h 00049 00050 #include "vtkObject.h" 00051 00052 class VTK_PARALLEL_EXPORT vtkMPIEventLog : public vtkObject 00053 { 00054 public: 00055 vtkTypeRevisionMacro(vtkMPIEventLog,vtkObject); 00056 00059 static vtkMPIEventLog* New(); 00060 00066 int SetDescription(const char* name, const char* desc); 00067 00069 00072 static void InitializeLogging(); 00073 static void FinalizeLogging(const char* fileName); 00075 00077 00078 void StartLogging(); 00079 void StopLogging(); 00081 00082 virtual void PrintSelf(ostream& os, vtkIndent indent); 00083 00084 protected: 00085 00086 vtkMPIEventLog(); 00087 ~vtkMPIEventLog(); 00088 00089 static int LastEventId; 00090 int Active; 00091 int BeginId; 00092 int EndId; 00093 private: 00094 vtkMPIEventLog(const vtkMPIEventLog&); // Not implemented. 00095 void operator=(const vtkMPIEventLog&); // Not implemented. 00096 }; 00097 00098 #endif 00099 00100 00101 00102