VTK
|
00001 /*========================================================================= 00002 00003 Program: Visualization Toolkit 00004 Module: vtkGlobFileNames.h 00005 00006 Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen 00007 All rights reserved. 00008 See Copyright.txt or http://www.kitware.com/Copyright.htm for details. 00009 00010 This software is distributed WITHOUT ANY WARRANTY; without even 00011 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 00012 PURPOSE. See the above copyright notice for more information. 00013 00014 =========================================================================*/ 00038 #ifndef __vtkGlobFileNames_h 00039 #define __vtkGlobFileNames_h 00040 00041 #include "vtkObject.h" 00042 00043 class vtkStringArray; 00044 00045 class VTK_IO_EXPORT vtkGlobFileNames : public vtkObject 00046 { 00047 public: 00049 00050 vtkTypeMacro(vtkGlobFileNames,vtkObject); 00052 00054 static vtkGlobFileNames *New(); 00055 00057 virtual void PrintSelf(ostream& os, vtkIndent indent); 00058 00060 void Reset(); 00061 00063 00068 vtkSetStringMacro(Directory); 00069 vtkGetStringMacro(Directory); 00071 00076 int AddFileNames(const char* pattern); 00077 00079 00080 vtkSetMacro(Recurse, int); 00081 vtkBooleanMacro(Recurse, int); 00082 vtkGetMacro(Recurse, int); 00084 00086 int GetNumberOfFileNames(); 00087 00089 const char* GetNthFileName(int index); 00090 00092 00093 vtkGetObjectMacro(FileNames, vtkStringArray); 00095 00096 protected: 00098 00099 vtkSetStringMacro(Pattern); 00100 vtkGetStringMacro(Pattern); 00102 00103 vtkGlobFileNames(); 00104 ~vtkGlobFileNames(); 00105 00106 private: 00107 char* Directory; // Directory for search. 00108 char* Pattern; // Wildcard pattern 00109 int Recurse; // Recurse into subdirectories 00110 vtkStringArray *FileNames; // VTK array of files 00111 00112 private: 00113 vtkGlobFileNames(const vtkGlobFileNames&); // Not implemented. 00114 void operator=(const vtkGlobFileNames&); // Not implemented. 00115 }; 00116 00117 #endif