VTK
vtkSortFileNames.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkSortFileNames.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
33 #ifndef __vtkSortFileNames_h
34 #define __vtkSortFileNames_h
35 
36 #include "vtkObject.h"
37 
38 class vtkStringArray;
39 
40 //BTX
41 // this is a helper class defined in the .cxx file
42 class vtkStringArrayVector;
43 //ETX
44 
46 {
47 public:
48 
49  vtkTypeMacro(vtkSortFileNames,vtkObject);
50  void PrintSelf(ostream& os, vtkIndent indent);
51  static vtkSortFileNames *New();
52 
54 
58  vtkSetMacro(Grouping, int);
59  vtkGetMacro(Grouping, int);
60  vtkBooleanMacro(Grouping, int);
62 
64 
69  vtkSetMacro(NumericSort, int);
70  vtkGetMacro(NumericSort, int);
71  vtkBooleanMacro(NumericSort, int);
73 
75 
77  vtkSetMacro(IgnoreCase, int);
78  vtkGetMacro(IgnoreCase, int);
79  vtkBooleanMacro(IgnoreCase, int);
81 
83 
86  vtkSetMacro(SkipDirectories, int);
87  vtkGetMacro(SkipDirectories, int);
88  vtkBooleanMacro(SkipDirectories, int);
90 
92 
93  void SetInputFileNames(vtkStringArray *input);
94  vtkGetObjectMacro(InputFileNames, vtkStringArray);
96 
98  virtual vtkStringArray *GetFileNames();
99 
104  virtual int GetNumberOfGroups();
105 
108  virtual vtkStringArray *GetNthGroup(int i);
109 
113  virtual void Update();
114 
115 protected:
117  ~vtkSortFileNames();
118 
121  int Grouping;
123 
125 
128  vtkStringArrayVector *Groups;
129 
131  virtual void Execute();
132 
134  virtual void SortFileNames(vtkStringArray *input, vtkStringArray *output);
135 
137 
138  virtual void GroupFileNames(vtkStringArray *input,
139  vtkStringArrayVector *output);
141 
142 
143 private:
144  vtkSortFileNames(const vtkSortFileNames&); // Not implemented.
145  void operator=(const vtkSortFileNames&); // Not implemented.
146 };
147 
148 #endif
vtkTimeStamp UpdateTime
abstract base class for most VTK objects
Definition: vtkObject.h:60
vtkStringArray * FileNames
record modification and/or execution time
Definition: vtkTimeStamp.h:33
a vtkAbstractArray subclass for strings
virtual void PrintSelf(ostream &os, vtkIndent indent)
a simple class to control print indentation
Definition: vtkIndent.h:37
Group and sort a set of filenames.
vtkStringArray * InputFileNames
#define VTK_IO_EXPORT
vtkStringArrayVector * Groups
static vtkObject * New()