Zen API
 All Classes Files Functions Variables Typedefs Friends Macros Modules Pages
kMemory Class Reference

Description

Represents an in-memory stream.

Inheritance diagram for kMemory:
Inheritance graph

Public Member Functions

kStatus kMemory_Allocate (kMemory memory, kSize initialCapacity)
 Allocates an auto-sizing, internally-managed buffer for the memory stream. More...
 
void * kMemory_At (kMemory memory, kSize offset)
 Returns a pointer to the memory buffer at the specified position. More...
 
kStatus kMemory_Attach (kMemory memory, void *buffer, kSize position, kSize length, kSize capacity)
 Attaches the memory stream to an external, fixed-capacity buffer. More...
 
kSize kMemory_Capacity (kMemory memory)
 Returns the current capacity of the memory buffer. More...
 
kStatus kMemory_Construct (kMemory *memory, kAlloc allocator)
 Constructs a kMemory object. More...
 
k64u kMemory_Length (kMemory memory)
 Returns the current length of the memory buffer. More...
 
k64u kMemory_Position (kMemory memory)
 Returns the current position of the read/write pointer, relative to the beginning of the buffer. More...
 
kStatus kMemory_Reserve (kMemory memory, kSize minimumCapacity)
 Ensures that capacity is reserved for at least the specified number of bytes. More...
 
kStatus kMemory_SetLength (kMemory memory, kSize length)
 Sets the reported length of the memory buffer. More...
 
- Public Member Functions inherited from kStream
k64u kStream_BytesRead (kStream stream)
 Reports the number of bytes read from this stream. More...
 
k64u kStream_BytesWritten (kStream stream)
 Reports the number of bytes written to this stream. More...
 
kStatus kStream_ClearStats (kStream stream)
 Clears stream statistics (e.g. More...
 
kStatus kStream_Copy (kStream stream, kStream source, kSize size)
 Copies the specified number of bytes from one stream to another. More...
 
kStatus kStream_CopyAll (kStream stream, kStream source)
 Copies all bytes from one stream to another. More...
 
kStatus kStream_CopyEx (kStream stream, kStream source, kSize size, kCallbackFx progress, kPointer context)
 Copies the specified number of bytes from one stream to another, with progress feedback. More...
 
kStatus kStream_Fill (kStream stream)
 Partially fills the read buffer with bytes from the underlying medium. More...
 
kStatus kStream_Flush (kStream stream)
 Flushes buffered writes to the underlying medium. More...
 
kStatus kStream_Read (kStream stream, void *buffer, kSize size)
 Reads the specified number of bytes from the stream. More...
 
kStatus kStream_ReadSome (kStream stream, void *buffer, kSize minCount, kSize maxCount, kSize *bytesRead)
 Reads up to the specified number of bytes from the stream. More...
 
kStatus kStream_Seek (kStream stream, k64s offset, kSeekOrigin origin)
 Moves the read/write pointer to the specified location, if supported by the underlying stream. More...
 
kStatus kStream_Write (kStream stream, const void *buffer, kSize size)
 Writes the specified number of bytes to the stream. More...
 
- Public Member Functions inherited from kObject
kAlloc kObject_Alloc (kObject object)
 Gets the memory allocator associated with this object. More...
 
kStatus kObject_Clone (kObject *object, kObject source, kAlloc allocator)
 Constructs a new object by copying an existing object, including any aggregated child elements. More...
 
kStatus kObject_Destroy (kObject object)
 Destroys the object. More...
 
kStatus kObject_Dispose (kObject object)
 Destroys the object and any aggregated child elements. More...
 
kBool kObject_Equals (kObject object, kObject other)
 Determines whether the object is equal to another object. More...
 
kBool kObject_HasForeignData (kObject object)
 Reports whether the object, including aggregated child elements, contains any foreign memory references. More...
 
kSize kObject_HashCode (kObject object)
 Gets a hash code representing the state of this object. More...
 
kBool kObject_Is (kObject object, kType type)
 Determines whether this object is an instance of the specified type. More...
 
kBool kObject_IsShared (kObject object)
 Reports whether the object is currently shared (reference count greater than one). More...
 
kStatus kObject_SetPool (kObject object, kObjectPool pool)
 Sets the object pool associated with this object. More...
 
kStatus kObject_Share (kObject object)
 Increments the reference count associated with this object. More...
 
kSize kObject_Size (kObject object)
 Estimates the memory consumed by this object, including any aggregated child elements. More...
 
kType kObject_Type (kObject object)
 Returns the type of the object. More...
 

Additional Inherited Members

- Protected Member Functions inherited from kStream
kStatus kStream_Init (kStream stream, kType type, kAlloc allocator)
 Protected method called by derived classes to initialize the kStream base class. More...
 
kStatus kStream_VFill (kStream stream)
 Protected virtual method that partially fills the read buffer with bytes from the underlying medium. More...
 
kStatus kStream_VFlush (kStream stream)
 Protected virtual method that flushes buffered writes to the underlying medium. More...
 
kStatus kStream_VReadSomeImpl (kStream stream, void *buffer, kSize minCount, kSize maxCount, kSize *bytesRead)
 Protected virtual method that deallocates any resources owned by the object. More...
 
kStatus kStream_VRelease (kStream stream)
 Protected virtual method that deallocates any resources owned by the object. More...
 
kStatus kStream_VSeek (kStream stream, k64s offset, kSeekOrigin origin)
 Protected virtual method that moves the read/write pointer to the specified location. More...
 
kStatus kStream_VWriteImpl (kStream stream, const void *buffer, kSize size)
 Protected virtual method that writes the specified number of bytes to the stream. More...
 
- Protected Member Functions inherited from kObject
kStatus kObject_FreeMem (kObject object, void *mem)
 Protected method called by derived classes to free memory using the object's allocator. More...
 
kStatus kObject_FreeMemRef (kObject object, void *mem)
 Protected method called by derived classes to free memory (and reset the provided memory pointer to kNULL) using the object's allocator. More...
 
kStatus kObject_GetMem (kObject object, kSize size, void *mem)
 Protected method called by derived classes to allocate memory using the object's allocator. More...
 
kStatus kObject_GetMemZero (kObject object, kSize size, void *mem)
 Protected method called by derived classes to allocate and zero memory using the object's allocator. More...
 
kStatus kObject_Init (kObject object, kType type, kAlloc alloc)
 Protected method called by derived classes to initialize the kObject base class. More...
 
kStatus kObject_VDisposeItems (kObject object)
 Protected virtual method that destroys any aggregated child objects associated with a collection. More...
 
kBool kObject_VEquals (kObject object, kObject other)
 Protected virtual method that compares two objects for equality. More...
 
kBool kObject_VHasForeignData (kObject object)
 Protected virtual method that reports whether the object, including aggregated child elements, contains any foreign memory references. More...
 
kSize kObject_VHashCode (kObject object)
 Protected virtual method that calculates a hash code representing the object instance. More...
 
kStatus kObject_VInitClone (kObject object, kObject source, kAlloc allocator)
 Protected virtual method that clones (makes a deep copy of) the specified source object. More...
 
kStatus kObject_VRelease (kObject object)
 Protected virtual method that deallocates any resources owned by the object. More...
 
kSize kObject_VSize (kObject object)
 Protected virtual method that calculates the total size (in bytes) of the object instance. More...
 

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