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 =========================================================================*/
34 #ifndef vtkSortFileNames_h
35 #define vtkSortFileNames_h
36 
37 #include "vtkIOCoreModule.h" // For export macro
38 #include "vtkObject.h"
39 
40 class vtkStringArray;
41 
42 // this is a helper class defined in the .cxx file
43 class vtkStringArrayVector;
44 
45 class VTKIOCORE_EXPORT vtkSortFileNames : public vtkObject
46 {
47 public:
48 
49  vtkTypeMacro(vtkSortFileNames,vtkObject);
50  void PrintSelf(ostream& os, vtkIndent indent);
51  static vtkSortFileNames *New();
52 
54 
61  vtkSetMacro(Grouping, int);
62  vtkGetMacro(Grouping, int);
63  vtkBooleanMacro(Grouping, int);
65 
67 
75  vtkSetMacro(NumericSort, int);
76  vtkGetMacro(NumericSort, int);
77  vtkBooleanMacro(NumericSort, int);
79 
81 
85  vtkSetMacro(IgnoreCase, int);
86  vtkGetMacro(IgnoreCase, int);
87  vtkBooleanMacro(IgnoreCase, int);
89 
91 
96  vtkSetMacro(SkipDirectories, int);
97  vtkGetMacro(SkipDirectories, int);
98  vtkBooleanMacro(SkipDirectories, int);
100 
102 
106  vtkGetObjectMacro(InputFileNames, vtkStringArray);
108 
113 
121  virtual int GetNumberOfGroups();
122 
128  virtual vtkStringArray *GetNthGroup(int i);
129 
135  virtual void Update();
136 
137 protected:
140 
143  int Grouping;
145 
147 
150  vtkStringArrayVector *Groups;
151 
155  virtual void Execute();
156 
160  virtual void SortFileNames(vtkStringArray *input, vtkStringArray *output);
161 
165  virtual void GroupFileNames(vtkStringArray *input,
166  vtkStringArrayVector *output);
167 
168 
169 private:
170  vtkSortFileNames(const vtkSortFileNames&) VTK_DELETE_FUNCTION;
171  void operator=(const vtkSortFileNames&) VTK_DELETE_FUNCTION;
172 };
173 
174 #endif
vtkSortFileNames::Update
virtual void Update()
Update the output filenames from the input filenames.
vtkSortFileNames::SetInputFileNames
void SetInputFileNames(vtkStringArray *input)
Set a list of file names to group and sort.
vtkTimeStamp
record modification and/or execution time
Definition: vtkTimeStamp.h:36
vtkObject
abstract base class for most VTK objects
Definition: vtkObject.h:60
vtkSortFileNames::Grouping
int Grouping
Definition: vtkSortFileNames.h:143
vtkSortFileNames::InputFileNames
vtkStringArray * InputFileNames
Definition: vtkSortFileNames.h:148
vtkSortFileNames::NumericSort
int NumericSort
Definition: vtkSortFileNames.h:141
vtkSortFileNames::GetNthGroup
virtual vtkStringArray * GetNthGroup(int i)
Get the Nth group of file names.
vtkSortFileNames::PrintSelf
void PrintSelf(ostream &os, vtkIndent indent)
Methods invoked by print to print information about the object including superclasses.
vtkSortFileNames::vtkSortFileNames
vtkSortFileNames()
vtkSortFileNames::UpdateTime
vtkTimeStamp UpdateTime
Definition: vtkSortFileNames.h:146
vtkSortFileNames::GroupFileNames
virtual void GroupFileNames(vtkStringArray *input, vtkStringArrayVector *output)
Separate a string array into groups and append them to the output.
vtkSortFileNames::SortFileNames
virtual void SortFileNames(vtkStringArray *input, vtkStringArray *output)
Sort the input string array, and append the results to the output.
vtkSortFileNames::~vtkSortFileNames
~vtkSortFileNames()
vtkSortFileNames::FileNames
vtkStringArray * FileNames
Definition: vtkSortFileNames.h:149
vtkIndent
a simple class to control print indentation
Definition: vtkIndent.h:40
vtkSortFileNames::Execute
virtual void Execute()
Fill the output.
vtkSortFileNames::Groups
vtkStringArrayVector * Groups
Definition: vtkSortFileNames.h:150
vtkObject.h
vtkSortFileNames::IgnoreCase
int IgnoreCase
Definition: vtkSortFileNames.h:142
vtkBooleanMacro
vtkBooleanMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkSortFileNames::SkipDirectories
int SkipDirectories
Definition: vtkSortFileNames.h:144
vtkSetMacro
vtkSetMacro(IgnoreDriverBugs, bool)
Updates the extensions string.
vtkSortFileNames::New
static vtkSortFileNames * New()
vtkStringArray
a vtkAbstractArray subclass for strings
Definition: vtkStringArray.h:43
vtkSortFileNames
Group and sort a set of filenames.
Definition: vtkSortFileNames.h:46
vtkSortFileNames::GetFileNames
virtual vtkStringArray * GetFileNames()
Get the full list of sorted filenames.
vtkSortFileNames::GetNumberOfGroups
virtual int GetNumberOfGroups()
Get the number of groups that the names were split into, if grouping is on.