3 #ifndef GCP_UTIL_DIRLIST_H
4 #define GCP_UTIL_DIRLIST_H
31 TYPE_ANY = TYPE_FILE | TYPE_DIR | TYPE_PIPE,
54 std::list<DirEnt> entries_;
56 DirEnt(std::string name, std::string path, EntryType type, EntryRights rights) {
64 return (
unsigned)(type_) & TYPE_DIR;
68 return (
unsigned)(type_) & TYPE_LINK;
72 return (
unsigned)(type_) & TYPE_FILE;
76 return (
unsigned)(rights_) & ENTRY_READ;
79 std::string pathName() {
80 std::ostringstream os;
85 std::string fullName() {
86 std::ostringstream os;
87 os << path_ <<
"/" << name_;
92 friend std::ostream& operator<<(std::ostream& os,
DirEnt& entry);
97 DirList(std::string path,
bool descend);
122 friend std::ostream& operator<<(std::ostream& os,
DirList& obj);
134 std::list<DirEnt> getFiles(
bool includeSymlinks=
false);
135 std::list<DirEnt> getDirs(
bool includeSymlinks=
false);
143 std::list<DirEnt> entries_;
145 void findEntries(std::list<DirEnt>& entries_, std::string path,
151 bool testPathname(std::string path, EntryType type,
unsigned rights);
156 EntryType getType(std::string path,
bool link=
false);
160 DirList::EntryRights getRights(std::string path);
162 void getFiles(std::list<DirEnt>& files,
163 std::list<DirEnt>& entries,
bool includeSymlinks);
165 void getDirs(std::list<DirEnt>& dirs,
166 std::list<DirEnt>& entries,
bool includeSymlinks);
175 #endif // End #ifndef GCP_UTIL_DIRLIST_H
virtual ~DirList()
Definition: DirList.cc:68
void operator=(const DirList &objToBeAssigned)
Definition: DirList.cc:43
void listEntries()
Definition: DirList.cc:263
DirList(std::string path, bool descend)
Definition: DirList.cc:19