CoreLinux++  0.4.32
Public Member Functions | Protected Member Functions | Friends | List of all members
corelinux::MemoryStorage Class Reference

MemoryStorage is type of Storage characterized as transient and high speed. More...

#include <MemoryStorage.hpp>

Public Member Functions

 MemoryStorage (MemoryIdentifierCref, IntCref, VoidPtr)
 Constructor for storage object. More...
 
bool operator== (MemoryStorageCref) const
 Compares identifier.
 
 operator MemoryIdentifierCref (void) const
 Returns identifier.
 
void operator+ (Int) throw ( BoundsException )
 Increment current pointer.
 
void operator- (Int) throw ( BoundsException )
 Decrement current pointer.
 
template<class T >
 operator T (void) throw ( BoundsException )
 Reads current location as type.
 
template<class T >
 operator T * (void) throw ( BoundsException )
 Reads current location as type pointer.
 
template<class T >
T & operator= (T &aT) throw ( BoundsException )
 Data assignment.
 
MemoryStorageRef operator[] (Int offset) throw ( BoundsException )
 Subscript offset operator.
 
template<class Type , class Xexec >
void forEach (Xexec aExec) throw ( Assertion )
 forEach invokes the callers method to perform whatever operation they want on the type reference in the segment space. More...
 
template<class Type , class Xexec , class Test >
void forEach (Xexec aExec, Test aTest) throw ( Assertion )
 forEach that invokes the callers method if the callers test method returns true More...
 
- Public Member Functions inherited from corelinux::TransientStorage
 TransientStorage (TransientStorageCref)
 
TransientStorageRef operator= (TransientStorageCref)
 
bool operator== (TransientStorageCref) const
 
- Public Member Functions inherited from corelinux::Storage
 Storage (StorageCref)
 
StorageRef operator= (StorageCref)
 
bool operator== (StorageCref) const
 

Protected Member Functions

 MemoryStorage (void) throw ( Assertion )
 Default is never called.
 
 MemoryStorage (MemoryStorageCref)
 Copy called by Memory.
 
virtual ~MemoryStorage (void)
 Virtual destructor.
 
MemoryStorageRef operator= (MemoryStorageCref)
 Assignment called by Memory.
 
VoidPtr getBasePointer (void)
 Internal reference to base.
 

Friends

class Memory
 

Detailed Description

MemoryStorage is type of Storage characterized as transient and high speed.

The interface provides pointer semantics with the addition of bounds error checking.

Constructor & Destructor Documentation

corelinux::MemoryStorage::MemoryStorage ( MemoryIdentifierCref  anId,
IntCref  aSize,
VoidPtr  aBase 
)

Constructor for storage object.

Parameters
MemoryIdentifiera unique id
Intsize of region in bytes
void* to base address of region

Member Function Documentation

template<class Type , class Xexec >
void corelinux::MemoryStorage::forEach ( Xexec  aExec)
throw (Assertion
)
inline

forEach invokes the callers method to perform whatever operation they want on the type reference in the segment space.

Parameters
Xexeccall to templated type
template<class Type , class Xexec , class Test >
void corelinux::MemoryStorage::forEach ( Xexec  aExec,
Test  aTest 
)
throw (Assertion
)
inline

forEach that invokes the callers method if the callers test method returns true

Parameters
Xexeccall to templated type
Testcall to templated type

References getBasePointer(), MemoryStorage(), operator=(), and ~MemoryStorage().


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

This is the CoreLinux++ reference manual
Provided by The CoreLinux Consortium