GCS  0.2.3
Data Structures | Public Types | Public Member Functions | Protected Member Functions
gu::RecordSetOutBase Class Reference

#include <gu_rset.hpp>

Inheritance diagram for gu::RecordSetOutBase:
gu::RecordSet gu::RecordSetOut< R >

Data Structures

struct  HasPtr
 

Public Types

typedef Allocator::BaseName BaseName
 
- Public Types inherited from gu::RecordSet
enum  Version { EMPTY = 0, VER1 }
 
enum  CheckType { CHECK_NONE = 0, CHECK_MMH32, CHECK_MMH64, CHECK_MMH128 }
 
typedef gu::Vector< gu::Buf, 16 > GatherVector
 

Public Member Functions

ssize_t page_count () const
 
ssize_t gather (GatherVector &out)
 
- Public Member Functions inherited from gu::RecordSet
size_t size () const
 
int count () const
 

Protected Member Functions

 RecordSetOutBase (byte_t *reserved, size_t reserved_size, const BaseName &base_name, CheckType ct, Version version=MAX_VERSION)
 
template<class R >
void process (const R &record, const byte_t *&ptr, bool &new_page, size_t const size, bool, HasPtr< false >)
 
template<class R >
void process (const R &record, const byte_t *&ptr, bool &new_page, size_t const size, bool const store, HasPtr< true >)
 
template<class R , bool has_ptr>
std::pair< const byte_t *, size_t > append_base (const R &record, bool const store=true, bool const new_record=true)
 
- Protected Member Functions inherited from gu::RecordSet
 RecordSet (Version const version, CheckType const ct)
 
void init (const byte_t *buf, ssize_t size)
 

Additional Inherited Members

- Static Public Attributes inherited from gu::RecordSet
static Version const MAX_VERSION = VER1
 
- Protected Attributes inherited from gu::RecordSet
ssize_t size_
 
int count_
 
Version version_
 
CheckType check_type_
 

Detailed Description

class to store records in buffer(s) to send out

Member Function Documentation

ssize_t gu::RecordSetOutBase::gather ( GatherVector out)

return vector of RecordSet fragments in adjusent order

ssize_t gu::RecordSetOutBase::page_count ( ) const
inline

return number of disjoint pages in the record set


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