00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #ifndef TEKSTATFILEPOSIX_H_803EE636_393C_11DA_91B3_000BDBC434D9
00022 #define TEKSTATFILEPOSIX_H_803EE636_393C_11DA_91B3_000BDBC434D9
00023
00024 #ifndef TEKLTI_H_C35A2A4C_D475_11D9_90BC_000BDBC434D9
00025 #error This file must be included from <teklti.h>
00026 #endif
00027
00028
00029 TEKUUIDIMPORT(UTekStatFilePOSIX)
00030
00031
00038 class TekStatFilePOSIX : public TekStatFile
00039 {
00040 public:
00041 TekStatFilePOSIX();
00042 ~TekStatFilePOSIX();
00043
00044 virtual TEKERR put_Filename(const uchar_t * Filename) = 0;
00045 virtual TEKERR put_FILE(FILE * FileDescriptor) = 0;
00046 virtual TEKERR put_UserInfoToAccess(uuid_t * UUIDOfUserInfo) = 0;
00047
00048 virtual TEKERR MakeTekFile(TekFileType TekType, TekFile ** RetVal) = 0;
00049
00050 virtual TEKERR get_Dev(dev_t * Dev) = 0;
00051 virtual TEKERR get_DevNo(dev_t * DevNo) = 0;
00052 virtual TEKERR get_FileSerialNo(ino_t * SerialNo) = 0;
00053 virtual TEKERR get_Mode(mode_t * FileMode) = 0;
00054 virtual TEKERR get_ModeString(uchar_t ** FileModeString) = 0;
00055 virtual TEKERR put_Mode(mode_t NewFileMode) = 0;
00056 virtual TEKERR put_ModeString(const uchar_t * NewFileModeString) = 0;
00057 virtual TEKERR get_LinkCount(nlink_t * LinkCount) = 0;
00058 virtual TEKERR get_UID(uid_t * UID) = 0;
00059 virtual TEKERR put_UID(uid_t UID) = 0;
00060 virtual TEKERR get_GID(gid_t * GID) = 0;
00061 virtual TEKERR put_GID(gid_t GID) = 0;
00062 virtual TEKERR get_UIDString(uchar_t ** UIDString) = 0;
00063 virtual TEKERR put_UIDString(const uchar_t * UIDString) = 0;
00064 virtual TEKERR get_GIDString(uchar_t ** GIDString) = 0;
00065 virtual TEKERR put_GIDString(const uchar_t * GIDString) = 0;
00066 virtual TEKERR get_Size(unsigned long * FileSize) = 0;
00067 virtual TEKERR get_Size64(uint64_t * FileSize) = 0;
00068 virtual TEKERR get_BlockSize(blksize_t * FileBlockSize) = 0;
00069 virtual TEKERR get_BlockCount(blkcnt64_t * FileBlockCount) = 0;
00070 virtual TEKERR get_TimeOfLastAccessRaw(unsigned long ** RetVal) = 0;
00071 virtual TEKERR get_TimeOfLastModificationRaw(unsigned long ** RetVal) = 0;
00072 virtual TEKERR get_TimeOfLastStatChangeRaw(unsigned long ** RetVal) = 0;
00073 virtual TEKERR get_TimeOfLastAccess(uchar_t ** RetVal) = 0;
00074 virtual TEKERR get_TimeOfLastModification(uchar_t ** RetVal) = 0;
00075 virtual TEKERR get_TimeOfLastStatChange(uchar_t ** RetVal) = 0;
00076 };
00077
00078 #endif
00079