16namespace JPP {
using namespace JLANG; }
47 const std::size_t size = this->size();
51 iterator q = this->begin();
53 std::advance(q, size);
55 for ( ; q != this->end(); buffer +=
BLOCK_SIZE, ++q) {
67 JRAM(
const std::size_t block_size,
68 const std::size_t number_of_blocks = 65536) :
121 void* p = this->back();
147 sort(this->begin(), this->end());
153 iterator p = lower_bound(this->begin(), this->end(), *i);
160 iter_swap(i, --__end);
#define THROW(JException_t, A)
Marco for throwing exception with std::ostream compatible message.
Memory management for small objects.
JRAM(const std::size_t block_size, const std::size_t number_of_blocks=65536)
Constructor.
void free(void *p)
Deallocate memory.
const std::size_t numberOfBlocks
std::vector< unsigned char * > memory
JRAM & operator=(const JRAM &)
void gc()
Run garbage collector.
const std::size_t BLOCK_SIZE
void * allocate()
Allocate memory.
long long int getTotalRAM()
Get total used RAM.
long long int getFreeRAM()
Get total free RAM.
void addMemory()
Add memory.
JRAM & operator=(JRAM &&)
Auxiliary classes and methods for language specific functionality.
This name space includes all other name spaces (except KM3NETDAQ, KM3NET and ANTARES).