GRASS GIS 8 Programmer's Manual  8.4.0dev(2024)-f13a4924e1
em_buffer< T, Key > Class Template Reference

#include <embuffer.h>

Public Member Functions

 em_buffer (const unsigned short i, const unsigned long bs, const unsigned int ar)
 
 em_buffer (const em_buffer &buf)
 
 ~em_buffer ()
 
unsigned short get_level () const
 
AMI_STREAM< T > * get_stream (unsigned int i)
 
AMI_STREAM< T > ** get_streams ()
 
void put_stream (unsigned int i)
 
void put_streams ()
 
long * get_bos () const
 
unsigned int laststream () const
 
unsigned int nextstream () const
 
void incr_nextstream ()
 
unsigned int get_nbstreams () const
 
unsigned int get_arity () const
 
long total_deleted () const
 
void incr_deleted (unsigned int i)
 
unsigned long get_stream_maxlen () const
 
unsigned long get_stream_len (unsigned int i)
 
unsigned long get_buf_len ()
 
unsigned long get_buf_maxlen ()
 
bool is_empty ()
 
bool is_full () const
 
void reset ()
 
void cleanup ()
 
AMI_STREAM< T > * sort ()
 
long insert (T *a, long n)
 
long insert (AMI_STREAM< T > *str, long bos=0)
 
void print_range ()
 
void print ()
 
void print_stream_sizes ()
 

Friends

ostream & operator<< (ostream &s, em_buffer &b)
 

Detailed Description

template<class T, class Key>
class em_buffer< T, Key >

Definition at line 189 of file embuffer.h.

Constructor & Destructor Documentation

◆ em_buffer() [1/2]

template<class T , class Key >
em_buffer< T, Key >::em_buffer ( const unsigned short  i,
const unsigned long  bs,
const unsigned int  ar 
)

Definition at line 409 of file embuffer.h.

References assert, MEMORY_LOG(), and NULL.

◆ em_buffer() [2/2]

template<class T , class Key >
em_buffer< T, Key >::em_buffer ( const em_buffer< T, Key > &  buf)

◆ ~em_buffer()

template<class T , class Key >
em_buffer< T, Key >::~em_buffer

Definition at line 506 of file embuffer.h.

References assert.

Member Function Documentation

◆ cleanup()

template<class T , class Key >
void em_buffer< T, Key >::cleanup

Definition at line 733 of file embuffer.h.

References assert, MY_LOG_DEBUG_ID, name, and NULL.

◆ get_arity()

template<class T , class Key >
unsigned int em_buffer< T, Key >::get_arity ( ) const
inline

Definition at line 266 of file embuffer.h.

◆ get_bos()

template<class T , class Key >
long* em_buffer< T, Key >::get_bos ( ) const
inline

Definition at line 251 of file embuffer.h.

Referenced by em_pqueue< T, Key >::merge_buffer().

◆ get_buf_len()

template<class T , class Key >
unsigned long em_buffer< T, Key >::get_buf_len ( )
inline

◆ get_buf_maxlen()

template<class T , class Key >
unsigned long em_buffer< T, Key >::get_buf_maxlen ( )
inline

Definition at line 312 of file embuffer.h.

References em_buffer< T, Key >::get_stream_maxlen().

◆ get_level()

template<class T , class Key >
unsigned short em_buffer< T, Key >::get_level ( ) const
inline

Definition at line 235 of file embuffer.h.

Referenced by em_pqueue< T, Key >::merge_buffer().

◆ get_nbstreams()

template<class T , class Key >
unsigned int em_buffer< T, Key >::get_nbstreams ( ) const
inline

◆ get_stream()

template<class T , class Key >
AMI_STREAM< T > * em_buffer< T, Key >::get_stream ( unsigned int  i)

Definition at line 564 of file embuffer.h.

References assert, and MY_LOG_DEBUG_ID.

◆ get_stream_len()

template<class T , class Key >
unsigned long em_buffer< T, Key >::get_stream_len ( unsigned int  i)
inline

Definition at line 294 of file embuffer.h.

Referenced by em_buffer< T, Key >::get_buf_len().

◆ get_stream_maxlen()

template<class T , class Key >
unsigned long em_buffer< T, Key >::get_stream_maxlen ( ) const
inline

Definition at line 287 of file embuffer.h.

Referenced by em_buffer< T, Key >::get_buf_maxlen().

◆ get_streams()

template<class T , class Key >
AMI_STREAM< T > ** em_buffer< T, Key >::get_streams

Definition at line 660 of file embuffer.h.

References assert, and MY_LOG_DEBUG_ID.

Referenced by em_buffer< T, Key >::em_buffer(), and em_pqueue< T, Key >::merge_buffer().

◆ incr_deleted()

template<class T , class Key >
void em_buffer< T, Key >::incr_deleted ( unsigned int  i)
inline

Definition at line 279 of file embuffer.h.

References assert.

◆ incr_nextstream()

template<class T , class Key >
void em_buffer< T, Key >::incr_nextstream ( )
inline

Definition at line 260 of file embuffer.h.

◆ insert() [1/2]

template<class T , class Key >
long em_buffer< T, Key >::insert ( AMI_STREAM< T > *  str,
long  bos = 0 
)

◆ insert() [2/2]

template<class T , class Key >
long em_buffer< T, Key >::insert ( T *  a,
long  n 
)

Definition at line 1033 of file embuffer.h.

◆ is_empty()

template<class T , class Key >
bool em_buffer< T, Key >::is_empty ( )
inline

◆ is_full()

template<class T , class Key >
bool em_buffer< T, Key >::is_full ( ) const
inline

Definition at line 318 of file embuffer.h.

References em_buffer< T, Key >::nextstream().

◆ laststream()

template<class T , class Key >
unsigned int em_buffer< T, Key >::laststream ( ) const
inline

Definition at line 254 of file embuffer.h.

◆ nextstream()

template<class T , class Key >
unsigned int em_buffer< T, Key >::nextstream ( ) const
inline

Definition at line 257 of file embuffer.h.

Referenced by em_buffer< T, Key >::is_empty(), and em_buffer< T, Key >::is_full().

◆ print()

template<class T , class Key >
void em_buffer< T, Key >::print

Definition at line 1221 of file embuffer.h.

References x.

◆ print_range()

template<class T , class Key >
void em_buffer< T, Key >::print_range

Definition at line 1188 of file embuffer.h.

References max, and min.

◆ print_stream_sizes()

template<class T , class Key >
void em_buffer< T, Key >::print_stream_sizes

Definition at line 1250 of file embuffer.h.

◆ put_stream()

template<class T , class Key >
void em_buffer< T, Key >::put_stream ( unsigned int  i)

Definition at line 623 of file embuffer.h.

References assert, and MY_LOG_DEBUG_ID.

◆ put_streams()

template<class T , class Key >
void em_buffer< T, Key >::put_streams

Definition at line 685 of file embuffer.h.

References assert, and MY_LOG_DEBUG_ID.

Referenced by em_buffer< T, Key >::em_buffer(), and em_pqueue< T, Key >::merge_buffer().

◆ reset()

template<class T , class Key >
void em_buffer< T, Key >::reset

Definition at line 850 of file embuffer.h.

References assert.

◆ sort()

template<class T , class Key >
AMI_STREAM< T > * em_buffer< T, Key >::sort

Definition at line 882 of file embuffer.h.

References assert, and MEMORY_LOG().

◆ total_deleted()

template<class T , class Key >
long em_buffer< T, Key >::total_deleted ( ) const
inline

Definition at line 269 of file embuffer.h.

Friends And Related Function Documentation

◆ operator<<

template<class T , class Key >
ostream& operator<< ( ostream &  s,
em_buffer< T, Key > &  b 
)
friend

Definition at line 364 of file embuffer.h.


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