PFileInfo Class Reference

#include <pdirect.h>

Inheritance diagram for PFileInfo:

PObject List of all members.

Public Types

 RegularFile = 1
 Ordinary disk file.
 SymbolicLink = 2
 File path is a symbolic link.
 SubDirectory = 4
 File path is a sub-directory.
 CharDevice = 8
 File path is a character device name.
 BlockDevice = 16
 File path is a block device name.
 Fifo = 32
 File path is a fifo (pipe) device.
 SocketDevice = 64
 File path is a socket device.
 UnknownFileType = 256
 File path is of an unknown type.
 AllFiles = 0x1ff
 Mask for all file types.
 WorldExecute = 1
 File has world execute permission.
 WorldWrite = 2
 File has world write permission.
 WorldRead = 4
 File has world read permission.
 GroupExecute = 8
 File has group execute permission.
 GroupWrite = 16
 File has group write permission.
 GroupRead = 32
 File has group read permission.
 UserExecute = 64
 File has owner execute permission.
 UserWrite = 128
 File has owner write permission.
 UserRead = 256
 File has owner read permission.
 AllPermissions = 0x1ff
 All possible permissions.
 DefaultPerms = UserRead|UserWrite|GroupRead|WorldRead
 Owner read & write plus group and world read permissions.
 DefaultDirPerms = DefaultPerms|UserExecute|GroupExecute|WorldExecute
 Owner read & write & execute plus group and world read & exectute permissions.
enum  FileTypes {
  RegularFile = 1, SymbolicLink = 2, SubDirectory = 4, CharDevice = 8,
  BlockDevice = 16, Fifo = 32, SocketDevice = 64, UnknownFileType = 256,
  AllFiles = 0x1ff
}
enum  Permissions {
  WorldExecute = 1, WorldWrite = 2, WorldRead = 4, GroupExecute = 8,
  GroupWrite = 16, GroupRead = 32, UserExecute = 64, UserWrite = 128,
  UserRead = 256, AllPermissions = 0x1ff, DefaultPerms = UserRead|UserWrite|GroupRead|WorldRead, DefaultDirPerms = DefaultPerms|UserExecute|GroupExecute|WorldExecute
}
 File access permissions for the file. More...

Public Attributes

FileTypes type
 File type for this file. Only one bit is set at a time here.
PTime created
PTime modified
 Time of last modifiaction of the file.
PTime accessed
PUInt64 size
int permissions
PBoolean hidden

Detailed Description

Class containing the system information on a file path. Information can be obtained on any directory entry event if it is not a "file" in the strictest sense. Sub-directories, devices etc may also have information retrieved.


Member Enumeration Documentation

enum PFileInfo::FileTypes

All types that a particular file path may be. Not all platforms support all of the file types. For example under DOS no file may be of the type SymbolicLink#.

Enumerator:
RegularFile  Ordinary disk file.
SymbolicLink  File path is a symbolic link.
SubDirectory  File path is a sub-directory.
CharDevice  File path is a character device name.
BlockDevice  File path is a block device name.
Fifo  File path is a fifo (pipe) device.
SocketDevice  File path is a socket device.
UnknownFileType  File path is of an unknown type.
AllFiles  Mask for all file types.

enum PFileInfo::Permissions

File access permissions for the file.

Enumerator:
WorldExecute  File has world execute permission.
WorldWrite  File has world write permission.
WorldRead  File has world read permission.
GroupExecute  File has group execute permission.
GroupWrite  File has group write permission.
GroupRead  File has group read permission.
UserExecute  File has owner execute permission.
UserWrite  File has owner write permission.
UserRead  File has owner read permission.
AllPermissions  All possible permissions.
DefaultPerms  Owner read & write plus group and world read permissions.
DefaultDirPerms  Owner read & write & execute plus group and world read & exectute permissions.


Member Data Documentation

PTime PFileInfo::accessed

Time of last access to the file. Not all platforms support a separate access time in which case the last modified time is returned.

PTime PFileInfo::created

Time of file creation of the file. Not all platforms support a separate creation time in which case the last modified time is returned.

PBoolean PFileInfo::hidden

File is a hidden file. What constitutes a hidden file is platform dependent, for example under unix it is a file beginning with a '.' character while under MS-DOS there is a file system attribute for it.

PTime PFileInfo::modified

Time of last modifiaction of the file.

int PFileInfo::permissions

A bit mask of all the file acces permissions. See the Permissions enum# for the possible bit values.

Not all platforms support all permissions.

PUInt64 PFileInfo::size

Size of the file in bytes. This is a quadword or 8 byte value to allow for files greater than 4 gigabytes.

FileTypes PFileInfo::type

File type for this file. Only one bit is set at a time here.


The documentation for this class was generated from the following file:
Generated on Thu May 27 01:36:48 2010 for PTLib by  doxygen 1.4.7