9 #if !defined(P6DIR_H__)
36 #define IF_p6IEnumDirents {0x8D5B1742,0xF0B9,0x498A,{0xBE,0x9B,0xC2,0x6E,0x32,0xC4,0x82,0xDD}}
328 #define IF_p6IDir {0x15E33328,0xC34D,0x431B,{0x98,0x04,0x35,0x88,0xEA,0xF3,0xD8,0x9E}}
331 #define COMP_p6Dir {0x272B33A1,0x5325,0x4874,{0xB0,0xC3,0x93,0xFA,0xD7,0xFA,0x4C,0x5D}}
virtual P6R::P6ERR getTempFile(P6R::p6IRandom *pRandom, P6R::P6WCHAR *pBuffer, P6R::P6UINT32 cBuffer)=0
Generate a temporary filename and return the name and temp path.
virtual P6R::P6ERR enumerate(const P6R::P6WCHAR *pszDirectory, P6R::P6DIRFLAGS fFlags, P6R::p6IEnumDirents **ppEnum)=0
This methods returns an enumerator which is used to iterate through directory entries for the specifi...
virtual P6R::P6ERR rmdir(const P6R::P6WCHAR *pszPathname)=0
Removes the specified directory.
virtual P6R::P6ERR reset()=0
virtual P6R::P6ERR next(P6R::P6UINT32 cElements, P6R::P6DIRENT *parElements, P6R::P6UINT32 *pcReturned)=0
An interface for the management of file system directory entries.
Used to describe a directory entry by various methods such as p6IDir::stat() and p6IDir::enumerate()...
virtual P6R::P6ERR appendPathElement(P6R::P6WCHAR *pBuffer, P6R::P6SIZE cBuffer, const P6R::P6WCHAR *pszElement, P6R::P6SIZE *pcWritten)=0
Appends a path element to a file system path, automatically appending a path separator if needed...
virtual P6R::P6ERR mkpath(const P6R::P6WCHAR *pszPathname, P6R::P6FILEMODE nMode)=0
Creates a the specified directory path, creating any need path elements.
[p6]COM Cryptographic Random Number Generator.
File and directory type definitions.
virtual P6R::P6ERR access(const P6R::P6WCHAR *pszFilename, P6R::P6FACCESS nAccess)=0
Determines what type of access (READ/WRITE) is allowed to the specified file/path from the current pr...
wchar_t P6WCHAR
Wide character type see p6i18n.h.
virtual P6R::P6ERR normalizePath(P6R::P6WCHAR *pszFilename)=0
This methods is used to normalize the specified pathname in place.
The base interface all [p6]COM components must derive from and implement.
Provides a cryptographically strong random number generator.
virtual P6R::P6ERR unlink(const P6R::P6WCHAR *pszPathname)=0
Delete the specified file.
virtual P6R::P6ERR getTempDir(P6R::P6WCHAR *pBuffer, P6R::P6UINT32 cBuffer)=0
Get the system temp directory.
P6UINT32 P6FACCESS
Describes the type containing the possible values for access to a filesystem resource.
This interface is used to enumerate diretory entries.
virtual P6R::P6ERR initialize()=0
Initializes the component for use.
virtual P6R::P6ERR rename(const P6R::P6WCHAR *pszFrom, const P6R::P6WCHAR *pszTo)=0
Rename or move files and directories in the same directory or across directories. ...
virtual P6R::P6ERR stat(const P6R::P6WCHAR *pszFilename, P6R::P6DIRENT *pDirent)=0
This methods returns information about the specified file/path.
virtual P6R::P6ERR rmpath(const P6R::P6WCHAR *pszPathname)=0
Removes the specified directory and all its contents.
P6UINT32 P6DIRFLAGS
Defines a type which describes the control flags for use with the p6IDir::enumerate() method to contr...
virtual P6R::P6ERR mkdir(const P6R::P6WCHAR *pszPathname, P6R::P6FILEMODE nMode)=0
Creates a new directory.