PTLib  Version 2.10.4
PFileInfo Class Reference

Class containing the system information on a file path. More...

#include <pdirect.h>

Inheritance diagram for PFileInfo:
PObject

List of all members.

Public Types

enum  FileTypes {
  RegularFile = 1, SymbolicLink = 2, SubDirectory = 4, CharDevice = 8,
  BlockDevice = 16, Fifo = 32, SocketDevice = 64, UnknownFileType = 256,
  AllFiles = 0x1ff
}
 All types that a particular file path may be. More...
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
 Time of file creation of the file.
PTime modified
 Time of last modifiaction of the file.
PTime accessed
 Time of last access to the file.
PUInt64 size
 Size of the file in bytes.
int permissions
 A bit mask of all the file acces permissions.
PBoolean hidden
 File is a hidden file.

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

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.

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

Time of last access to the file.

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

Time of file creation of the file.

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

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.

Time of last modifiaction of the file.

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.

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:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines