|   | 
                    Options | 
                    Name | 
                    Purpose | 
                
                
    | 
         
     | 
    
        
        
        
        
     | 
    
           Clear ()
     | 
    
        
/** Clears/resets the ByteBucket. Does not de-allocate the memory, just the
various pointers/counters/cursors. */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           Debug ()
     | 
    
        
/* Debug method to dump out current RAW bytes into numbered files
Files are named bytebucket-memptr-<number>.bin */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           Destroy ()
     | 
    
        
/** Destroy/Shutdown/Anti-Initializer */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         INTEGER  GetByte ()
     | 
    
        
/** Returns a byte at the current position , and increments the
position marker.
@return integer The byte value at the current position */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         INTEGER  GetByte (int64)
     | 
    
        
/** Returns a byte at the specified position, and increments the
position marker.
@param int64 The position at which to return the byte.
@return integer The byte value at the current position */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         OpenEdge.Core.Memptr  GetBytes ()
     | 
    
        
/** Returns the entire contents of this bucket as a Memptr instance.
@return Memptr The complete bucket data */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         OpenEdge.Core.Memptr  GetBytes (int64)
     | 
    
        
/** Returns a Memptr instance containing the specified number of bytes,
starting at the current Position.
@param int64 The number of bytes to return
@return Memptr The complete bucket data */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         OpenEdge.Core.Memptr  GetBytes (int64, int64)
     | 
    
        
/** Returns a Memptr instance containing the specified number of bytes,
starting at the specified postition.
@param int64 The starting position
@param int64 The number of bytes to return
@return Memptr The complete bucket data */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         RAW  GetHash ()
     | 
    
        
/** Returns a hash of the current contents of the memptr. This can be used
for comparing memptr values quickly.
@return raw The hashed value of the memptr. */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         RAW  GetHash (HashAlgorithmEnum)
     | 
    
        
/** Returns a hash of the current contents of the memptr. This can be used
for comparing memptr values quickly.
@param HashAlgorithmEnum The algorithm to use for the message
@return raw The hashed value of the memptr. */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         LONGCHAR  GetString ()
     | 
    
        
/** Returns a string/character representation of the entire set of bytes.
@return longchar The character/string data requested     */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         LONGCHAR  GetString (int64)
     | 
    
        
/** Returns a string/character representation a particular number of bytes,
from the current Position.
@param int64 The size of the data (in bytes) to return
@return longchar The character/string data requested     */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         LONGCHAR  GetString (int64, int64)
     | 
    
        
/** Returns a string/character representation a particular number of bytes,
from a given start position.
@param int64 The start potision
@param int64 The size of the data (in bytes) to return
@return longchar The character/string data requested     */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         LONGCHAR  GetString (int64, int64, character)
     | 
    
        
/** Returns a string/character representation a particular number of bytes,
from a given start position.
@param  int64 The start potision
@param  int64 The size of the data (in bytes) to return
@param  character The target codepage for the character data
@return longchar The character/string data requested     */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         LONGCHAR  GetString (int64, int64, character, character)
     | 
    
        
/** Returns a string/character representation a particular number of bytes,
from a given start position.
@param  int64 The start potision
@param  int64 The size of the data (in bytes) to return
@param  character The source codepage for the character data
@param  character The target codepage for the character data
@return longchar The character/string data requested     */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         INT64  IndexOf (longchar)
     | 
    
        
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         INT64  IndexOf (longchar, int64)
     | 
    
        
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           Initialize ()
     | 
    
        
/** Default object initialization
Clears and resizes the bucket's internals to the initial size (num records) */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         OpenEdge.Core.ByteBucket  Instance ()
     | 
    
        
/** Factory method for creating a ByteBucket. */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         OpenEdge.Core.ByteBucket  Instance (int64)
     | 
    
        
/** Factory method for creating a ByteBucket.
@param int64 The size of  memptr to store bytes */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
         OpenEdge.Core.ByteBucket  Instance (integer, int64)
     | 
    
        
/** Factory method for creating a ByteBucket.
@param integer  The initial size of the array (ie how many extents)
@param int64 The size of each memptr in the array */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           PutBytes (ByteBucket)
     | 
    
        
/** Copies all of the bytes from a ByteBucket instance into this bucket. The
caller is responsible for cleaning up the source ByteBucket.
@param ByteBucket The ByteBucket instance containing the data. */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           PutBytes (int64, int64)
     | 
    
        
/** Copies all of the bytes from a memptr into this bucket. The
caller is responsible for cleaning up the memptr.
@param int64 The pointer to memory represented by a memptr (via get-pointer-value).
@param int64 The size of the memptr represented by the pointer value. */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           PutBytes (Memptr)
     | 
    
        
/** Copies all of the bytes from a Memptr instance into this bucket. The
caller is responsible for cleaning up the memptr.
@param OpenEdge.Core.Memptr The Memptr instance containing the data. */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           PutBytes (memptr)
     | 
    
        
/** Copies all of the bytes from a memptr (primitive) into this bucket. The
caller is responsible for cleaning up the memptr.
@param memptr The memptr containing the data. */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           PutString (longchar)
     | 
    
        
/** Copies all of the bytes from a longchar into this bucket.
@param longchar The longchar containing the source data */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           PutString (longchar, character)
     | 
    
        
/** Copies all of the bytes from a longchar into this bucket.
@param longchar The longchar containing the source data
@param character The target codepage used to write data into the bucket. Defaults to UTF-8 */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           PutString (longchar, longchar)
     | 
    
        
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           PutString (String)
     | 
    
        
/** Copies all of the bytes from a String object (longchar) into this bucket.
@param String The longchar containing the source data. */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           ReadBytes (int64, memptr)
     | 
    
        
/* Reads data from the MemoryOutputSTream into a memptr
for return by GetBytes() and GetString() and friends.
- The caller is responsible for cleaning up the memptr.
- The memptr size is also the initial number of bytes to read;
this value may change depending on the start pos and the number
of bytes written
@param int64  The start position to read
@param memptr The memptr into which to read the data */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           Resize (integer)
     | 
    
        
/** Resizes the internal 'array' of records.
We can shrink down the number of rows, but not smaller than the
bucket's size in bytes.
@param integer The new size (number of records) for the internal structure */
         
        
     | 
    | 
         
     | 
    
        
        
        
        
     | 
    
           ResizeArray (integer)
     | 
    
        
/** Resizes the internal 'array' of records.
We can shrink down the number of rows, but not smaller than the
bucket's size.
@param integer The new size (number of extents) for the array */
         
        
     |