Main Page | Class Hierarchy | Class List | File List | Class Members | File Members

CL_File Class Reference

#include <file.h>

Inheritance diagram for CL_File:

CL_IODevice List of all members.

Public Types

enum  AccessFlags { access_read = 1, access_write = 2 }
 Enumerations:. More...
enum  ShareFlags { share_read = 1, share_write = 2, share_delete = 4, share_all = share_read + share_write + share_delete }
enum  OpenMode { open_always, open_existing, open_existing_truncate }
enum  CreateMode { create_always, create_new }

Public Member Functions

 CL_File ()
 Construction:.
 CL_File (const CL_String &filename, CreateMode mode, unsigned int access=access_read|access_write, unsigned int share=share_all)
 CL_File (const CL_String &filename, CreateMode mode, const CL_SecurityDescriptor &permissions, unsigned int access=access_read|access_write, unsigned int share=share_all)
 CL_File (const CL_String &filename, OpenMode mode=open_existing, unsigned int access=access_read|access_write, unsigned int share=share_all)
 CL_File (const CL_String &filename, OpenMode mode, const CL_SecurityDescriptor &permissions, unsigned int access=access_read|access_write, unsigned int share=share_all)
 ~CL_File ()
int get_size () const
 Attributes:.
int get_position () const
CL_SecurityDescriptor get_permissions () const
bool create (const CL_String &filename, CreateMode mode=create_always, unsigned int access=access_read|access_write, unsigned int share=share_all)
 Operations:.
bool create (const CL_String &filename, CreateMode mode, const CL_SecurityDescriptor &permissions, unsigned int access=access_read|access_write, unsigned int share=share_all)
bool open (const CL_String &filename, OpenMode mode=open_existing, unsigned int access=access_read|access_write, unsigned int share=share_all)
bool open (const CL_String &filename, OpenMode mode, const CL_SecurityDescriptor &permissions, unsigned int access=access_read|access_write, unsigned int share=share_all)
void close ()
bool set_permissions (const CL_SecurityDescriptor &permissions)
int read (void *buffer, int size, bool read_all=true)
int write (const void *buffer, int size, bool write_all=true)
int send (const void *data, int len, bool send_all=true)
 Operations:.
int receive (void *data, int len, bool receive_all=true)
int peek (void *data, int len)
bool seek (int position, SeekMode mode=seek_set)

Private Member Functions

int lowlevel_read (void *buffer, int size, bool read_all)
 Implementation:.

Private Attributes

int handle
CL_ByteArray peeked_data

Member Enumeration Documentation

enum CL_File::AccessFlags
 

Enumerations:.

Enumeration values:
access_read 
access_write 

Definition at line 41 of file file.h.

enum CL_File::CreateMode
 

Enumeration values:
create_always 
create_new 

Definition at line 62 of file file.h.

enum CL_File::OpenMode
 

Enumeration values:
open_always 
open_existing 
open_existing_truncate 

Definition at line 55 of file file.h.

enum CL_File::ShareFlags
 

Enumeration values:
share_read 
share_write 
share_delete 
share_all 

Definition at line 47 of file file.h.


Constructor & Destructor Documentation

CL_File::CL_File  ) 
 

Construction:.

Definition at line 50 of file file.cpp.

References invalid_handle.

CL_File::CL_File const CL_String &  filename,
CreateMode  mode,
unsigned int  access = access_read|access_write,
unsigned int  share = share_all
 

Definition at line 54 of file file.cpp.

References create(), invalid_handle, and TEXT.

CL_File::CL_File const CL_String &  filename,
CreateMode  mode,
const CL_SecurityDescriptor permissions,
unsigned int  access = access_read|access_write,
unsigned int  share = share_all
 

Definition at line 70 of file file.cpp.

References create(), invalid_handle, and TEXT.

CL_File::CL_File const CL_String &  filename,
OpenMode  mode = open_existing,
unsigned int  access = access_read|access_write,
unsigned int  share = share_all
 

Definition at line 62 of file file.cpp.

References invalid_handle, open(), and TEXT.

CL_File::CL_File const CL_String &  filename,
OpenMode  mode,
const CL_SecurityDescriptor permissions,
unsigned int  access = access_read|access_write,
unsigned int  share = share_all
 

Definition at line 83 of file file.cpp.

References invalid_handle, open(), and TEXT.

CL_File::~CL_File  ) 
 

Definition at line 96 of file file.cpp.

References close().


Member Function Documentation

void CL_File::close  ) 
 

Definition at line 324 of file file.cpp.

References handle, and invalid_handle.

Referenced by CL_FileHelp::copy_file(), create(), CL_Service::main(), and ~CL_File().

bool CL_File::create const CL_String &  filename,
CreateMode  mode,
const CL_SecurityDescriptor permissions,
unsigned int  access = access_read|access_write,
unsigned int  share = share_all
 

Definition at line 240 of file file.cpp.

References create().

bool CL_File::create const CL_String &  filename,
CreateMode  mode = create_always,
unsigned int  access = access_read|access_write,
unsigned int  share = share_all
 

Operations:.

Definition at line 176 of file file.cpp.

References access_read, access_write, close(), create_always, create_new, handle, invalid_handle, share_delete, share_read, share_write, and CL_StringHelp::text_to_local8().

Referenced by CL_File(), and create().

CL_SecurityDescriptor CL_File::get_permissions  )  const
 

Definition at line 167 of file file.cpp.

int CL_File::get_position  )  const [virtual]
 

Reimplemented from CL_IODevice.

Definition at line 144 of file file.cpp.

References handle, invalid_handle, and TEXT.

int CL_File::get_size  )  const [virtual]
 

Attributes:.

Reimplemented from CL_IODevice.

Definition at line 104 of file file.cpp.

References handle, invalid_handle, and TEXT.

int CL_File::lowlevel_read void *  buffer,
int  size,
bool  read_all
[private]
 

Implementation:.

Definition at line 447 of file file.cpp.

References handle, invalid_handle, and TEXT.

Referenced by peek(), and read().

bool CL_File::open const CL_String &  filename,
OpenMode  mode,
const CL_SecurityDescriptor permissions,
unsigned int  access = access_read|access_write,
unsigned int  share = share_all
 

Definition at line 314 of file file.cpp.

References open().

bool CL_File::open const CL_String &  filename,
OpenMode  mode = open_existing,
unsigned int  access = access_read|access_write,
unsigned int  share = share_all
 

Definition at line 250 of file file.cpp.

References access_read, access_write, handle, invalid_handle, open_always, open_existing, open_existing_truncate, share_delete, share_read, share_write, and CL_StringHelp::text_to_local8().

Referenced by CL_File(), and open().

int CL_File::peek void *  data,
int  len
[virtual]
 

Implements CL_IODevice.

Definition at line 385 of file file.cpp.

References CL_ByteArray::get_data(), CL_ByteArray::get_size(), lowlevel_read(), peeked_data, and CL_ByteArray::set_size().

int CL_File::read void *  buffer,
int  size,
bool  read_all = true
 

Definition at line 341 of file file.cpp.

References cl_min, CL_ByteArray::get_data(), CL_ByteArray::get_size(), lowlevel_read(), peeked_data, and CL_ByteArray::set_size().

Referenced by CL_FileHelp::copy_file(), and receive().

int CL_File::receive void *  data,
int  len,
bool  receive_all = true
[virtual]
 

Implements CL_IODevice.

Definition at line 380 of file file.cpp.

References read().

bool CL_File::seek int  position,
SeekMode  mode = seek_set
[virtual]
 

Reimplemented from CL_IODevice.

Definition at line 411 of file file.cpp.

References handle, invalid_handle, and TEXT.

Referenced by CL_FileLogger::log().

int CL_File::send const void *  data,
int  len,
bool  send_all = true
[virtual]
 

Operations:.

Implements CL_IODevice.

Definition at line 375 of file file.cpp.

References write().

bool CL_File::set_permissions const CL_SecurityDescriptor permissions  ) 
 

Definition at line 336 of file file.cpp.

int CL_File::write const void *  buffer,
int  size,
bool  write_all = true
 

Definition at line 357 of file file.cpp.

References handle, invalid_handle, and TEXT.

Referenced by CL_FileHelp::copy_file(), CL_FileLogger::log(), CL_Service::main(), and send().


Member Data Documentation

int CL_File::handle [private]
 

Definition at line 159 of file file.h.

Referenced by close(), create(), get_position(), get_size(), lowlevel_read(), open(), seek(), and write().

CL_ByteArray CL_File::peeked_data [private]
 

Definition at line 161 of file file.h.

Referenced by peek(), and read().


The documentation for this class was generated from the following files:
Generated on Sat Feb 19 22:51:17 2005 for npcore by  doxygen 1.4.1