1    	#ifndef ROOT_TDirIter
2    	#define ROOT_TDirIter
3    	
4    	
5    	//////////////////////////////////////////////////////////////////////////
6    	//                                                                      //
7    	// TDirIter                                                             //
8    	//                                                                      //
9    	//                                                                      //
10   	//////////////////////////////////////////////////////////////////////////
11   	#include "TString.h"
12   	#include "TRegexp.h"
13   	
14   	class TOBjArray;
15   	class TDirIter
16   	{
17   	public:
18   	   TDirIter(const char *path, Int_t maxlev = 99);
19   	  ~TDirIter();
20   	void 	Reset  (const char *path, Int_t maxlev = 99);
21   	const char *NextFile();
22   	
23   	private:
24   	TString 	MakeWild(const char *re);
25   	const char 	*NextFileQ();
26   	const char 	*NextFileQQ();
27   	void 		ResetQQ(const char *path);
28   	
29   	//              Data members
30   	   Int_t fMaxLev; 
31   	   Int_t fMaxLevQQ; 
32   	   Int_t fLevel; 
33   	   Int_t fState; 
34   	   Int_t fSele; 
35   	   Int_t fSkip; 
36   	   Int_t fTop; 
37   	   TString fFull;
38   	   TString fFile;
39   	   TRegexp fRegx;
40   	   void   *fEntrStk[100];
41   	   Int_t   fLengStk[100];
42   	   TObjArray *fArr;
43   	   Int_t fIter;
44   	   
45   	//   ClassDef(TDirIter,1)
46   	
47   	};
48   	#endif //ROOT_TDirIter
49