edio

Description

Base for layered I/O to include Disk and Memory files

Status

Complete

Constants

Types

Structures

None

Functions

None

Objects

See Also

None


ED_IO_READ

Description

Flag indicating that read operations are permitted

Status

None

Declaration

#define ED_IO_READ  1

Notes

None

Sample Code

None
  

See Also

edio, ED_IO_WRITE


ED_IO_WRITE

Description

Flag indicating that write operations are permitted

Status

None

Declaration

#define ED_IO_WRITE 2

Notes

None

Sample Code

None
  

See Also

edio, ED_IO_READ


CEDIOP

Description

Pointer to a CEDIO object

Status

None

Declaration

typedef CEDIO* CEDIOP;

Minimum Value

None

Maximum Value

None

Notes

None

Sample Code

None
  

See Also

edio, CEDIO, CEDFileIOP, CEDMemIOP


CEDFileIOP

Description

Pointer to a CEDFileIO object

Status

None

Declaration

typedef CEDFileIO* CEDFileIOP;

Minimum Value

None

Maximum Value

None

Notes

None

Sample Code

None
  

See Also

edio, CEDFileIO, CEDIOP, CEDMemIOP


CEDMemIOP

Description

Pointer to a CEDMemIO object

Status

None

Declaration

typedef CEDMemIO* CEDMemIOP;

Minimum Value

None

Maximum Value

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, CEDIOP, CEDFileIOP


CEDIO

Description

Base I/O object allowing generalized control of descendants

Status

None

Declaration

    class CEDIO
    {
      ...
    };
     public:
      CEDIO();
      virtual ~CEDIO();

      virtual void Close();

      virtual void Flush();

      edu32 GetMode();
      const char* GetName();

      virtual edu32 GetBlock( void* p_dst, edu32 p_size );
      virtual edu32 PutBlock( const void* p_src, edu32 p_size );

      virtual edu32 GetSize();
      virtual bool SetSize( edu32 p_newSize );

      virtual edu32 GetPos();
      virtual bool SetPos( edu32 p_newPos );

    protected:
      edu32     m_mode;
      CEDString m_name;
    };
  

Member Variables

None

Method Functions

None

Notes

None

See Also

edio, CEDFileIO, CEDMemIO


CEDFileIO

Description

File I/O object for disk files

Status

None

Declaration

    class CEDFileIO: public CEDIO
    {
      ...
    };
       public:
        CEDFileIO();
        CEDFileIO( const char* p_name );
        virtual ~CEDFileIO();

        virtual bool ValidName( const char* p_name );

        virtual bool Open( const char* p_name );
        virtual bool Update( const char* p_name );
        virtual bool Create( const char* p_name );
        virtual void Close();

        virtual void Flush();

        virtual edu32 GetBlock( void* p_dst, edu32 p_size );
        virtual edu32 PutBlock( const void* p_src, edu32 p_size );

        virtual edu32 GetSize();
        virtual bool SetSize( edu32 p_newSize );

        virtual edu32 GetPos();
        virtual bool SetPos( edu32 p_newPos );

      protected:
        FILE* m_file;
    };
  

Member Variables

None

Method Functions

None

Notes

None

See Also

edio, CEDIO, CEDMemIO


CEDMemIO

Description

Memory I/O object to emulate disk files in memory

Status

None

Declaration

    class CEDMemIO: public CEDIO
    {
      ...
    };
  

Member Variables

Method Functions

Notes

None

See Also

edio, CEDIO, CEDFileIO


CEDMemIO::m_data

Description

Internal pointer to either attached data, or to dynamic data

Status

None

Declaration

    ...
    protected:
    ...
      edu8* m_data;
    ...
  

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, edu8


CEDMemIO::m_pos

Description

Current position of in memory data

Status

None

Declaration

    ...
    protected:
    ...
      edu32 m_pos;
    ...
  

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, edu32


CEDMemIO::m_size

Description

Current size of in memory data

Status

None

Declaration

    ...
    protected:
    ...
      edu32 m_size;
    ...
  

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, edu32


CEDMemIO::m_limit

Description

Size of attached data in Read Mode. Amount of memory available before re-allocation is neccessary

Status

None

Declaration

    ...
    protected:
    ...
      edu32 m_limit;
    ...
  

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, edu32


CEDMemIO::m_ownData

Description

Indicates whether or not data has been allocated by CEDMemIO

Status

None

Declaration

    ...
    protected:
    ...
      bool  m_ownData;
    ...
  

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO


CEDMemIO::CEDMemIO

Description

CEDMemIO constructor. Initializes member variables to 0 or NULL

Status

None

Declaration

    ...
    public:
    ...
        CEDMemIO();
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO


CEDMemIO::~CEDMemIO

Description

CEDMemIO destructor

Status

None

Declaration

    ...
    public:
    ...
      virtual ~CEDMemIO();
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO


CEDMemIO::Open

Description

Attaches the CEDMemIO object to a variable for Read Only access

Status

None

Declaration

    ...
    public:
    ...
      virtual bool Open( const char* p_name, void* p_data, edu32 p_size );
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, edu32


CEDMemIO::Update

Description

Initializes CEDMemIO to store a copy of specified data, and to grow when neccessary

Status

None

Declaration

    ...
    public:
    ...
      virtual bool Update( const char* p_name, void* p_data, edu32 p_size );
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, edu32


CEDMemIO::Create

Description

Initializes CEDMemIO for dynamic memory growth

Status

None

Declaration

    ...
    public:
    ...
      virtual bool Create( const char* p_name );
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO


CEDMemIO::Close

Description

Frees memory used on non-attached data

Status

None

Declaration

    ...
    public:
    ...
      virtual void Close();
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO


CEDMemIO::Flush

Description

Stub for API compatibility

Status

None

Declaration

    ...
    public:
    ...
      virtual void Flush();
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO


CEDMemIO::GetBlock

Description

Copies from memory file into destination pointer and advances m_pos

Status

None

Declaration

    ...
    public:
    ...
      virtual edu32 GetBlock( void* p_dst, edu32 p_size );
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, CEDMemIO::m_pos, edu32


CEDMemIO::PutBlock

Description

Copies source pointer data into memory file and grows memory if neccessary

Status

None

Declaration

    ...
    public:
    ...
      virtual edu32 PutBlock( const void* p_src, edu32 p_size );
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, edu32


CEDMemIO::GetSize

Description

Returns size of attached data, or current internal data size

Status

None

Declaration

    ...
    public:
    ...
      virtual edu32 GetSize();
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, edu32


CEDMemIO::SetSize

Description

Truncates the file to specified size

Status

None

Declaration

    ...
    public:
    ...
      virtual bool SetSize( edu32 p_newSize );
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, edu32


CEDMemIO::GetPos

Description

Returns the current position of the data pointer

Status

None

Declaration

    ...
    public:
    ...
      virtual edu32 GetPos();
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, edu32


CEDMemIO::SetPos

Description

Sets the current pointer to specified position

Status

None

Declaration

    ...
    public:
    ...
      virtual bool SetPos( edu32 p_newPos );
    ...
  

Return Values

None

Notes

None

Sample Code

None
  

See Also

edio, CEDMemIO, edu32


Copyright 1993-2008 Orlando Llanes (edmmapi@gmail.com)

SourceForge.net Logo