1
0
mirror of https://github.com/Halofreak1990/XFXFramework synced 2024-12-26 13:49:34 +01:00
XFXFramework/include/System/IO/DirectoryInfo.h
2013-07-11 20:24:52 +02:00

61 lines
2.0 KiB
C++

/*****************************************************************************
* DirectoryInfo.h *
* *
* XFX System::IO::DirectoryInfo definition file *
* Copyright (c) XFX Team. All Rights Reserved *
*****************************************************************************/
#ifndef _SYSTEM_IO_DIRECTORYINFO_
#define _SYSTEM_IO_DIRECTORYINFO_
#include <System/Types.h>
#include "FileSystemInfo.h"
namespace System
{
namespace IO
{
class Directory;
// Exposes instance methods for creating, moving, and enumerating through directories and subdirectories. This class cannot be inherited.
class DirectoryInfo : public FileSystemInfo
{
private:
friend class Directory;
String current;
String parent;
public:
bool Exists() const;
String getName() const;
DirectoryInfo Parent();
DirectoryInfo Root();
DirectoryInfo();
DirectoryInfo(const String& path); // Initializes a new instance of the System::IO::DirectoryInfo class on the specified path.
// Creates a directory.
void Create();
// Creates a subdirectory or subdirectories on the specified path.
// The specified path can be relative to this instance of the System::IO::DirectoryInfo class.
DirectoryInfo CreateSubDirectory(const String& path);
// Deletes this System::IO::DirectoryInfo if it is empty.
void Delete();
// Deletes this instance of a System::IO::DirectoryInfo, specifying whether to delete subdirectories and files.
void Delete(const bool recursive);
DirectoryInfo* GetDirectories(); //
DirectoryInfo* GetDirectories(const String& searchPattern);
FileSystemInfo* GetFileSystemInfos();
FileSystemInfo* GetFileSystemInfos(const String& searchPattern);
static int GetType();
void MoveTo(const String& destDirName);
const String ToString() const;
bool operator !=(const DirectoryInfo& right) const;
bool operator ==(const DirectoryInfo& right) const;
};
}
}
#endif //_SYSTEM_IO_DIRECTORYINFO_