Gosu::Resource Class Referenceabstract

Base class for resources. More...

+ Inheritance diagram for Gosu::Resource:

Public Member Functions

 Resource ()
 
virtual ~Resource ()
 
Reader frontReader () const
 Convenience: Creates a new Reader that reads from the start of the resource. More...
 
Writer backWriter ()
 Convenience: Creates a new Writer that appends data at the end of the resource. More...
 
virtual std::size_t size () const =0
 
virtual void resize (std::size_t newSize)=0
 
virtual void read (std::size_t offset, std::size_t length, void *destBuffer) const =0
 
virtual void write (std::size_t offset, std::size_t length, const void *sourceBuffer)=0
 

Detailed Description

Base class for resources.

A resource in Gosu is nothing more but a piece of binary data that can be read or written, for example files or simply areas of allocated memory. A resource always knows its size and can resize itself, thereby either truncating its content or allocating room for more data.

Definition at line 142 of file IO.hpp.

Constructor & Destructor Documentation

Gosu::Resource::Resource ( )

Definition at line 157 of file IO.hpp.

virtual Gosu::Resource::~Resource ( )
virtual

Definition at line 161 of file IO.hpp.

Member Function Documentation

Writer Gosu::Resource::backWriter ( )

Convenience: Creates a new Writer that appends data at the end of the resource.

Definition at line 174 of file IO.hpp.

References size().

Reader Gosu::Resource::frontReader ( ) const

Convenience: Creates a new Reader that reads from the start of the resource.

Definition at line 167 of file IO.hpp.

virtual void Gosu::Resource::read ( std::size_t  offset,
std::size_t  length,
void *  destBuffer 
) const
pure virtual

Implemented in Gosu::File, and Gosu::Buffer.

virtual void Gosu::Resource::resize ( std::size_t  newSize)
pure virtual

Implemented in Gosu::File, and Gosu::Buffer.

virtual std::size_t Gosu::Resource::size ( ) const
pure virtual

Implemented in Gosu::File, and Gosu::Buffer.

Referenced by backWriter().

virtual void Gosu::Resource::write ( std::size_t  offset,
std::size_t  length,
const void *  sourceBuffer 
)
pure virtual

Implemented in Gosu::File, and Gosu::Buffer.


The documentation for this class was generated from the following file: