Generated on for Gecode by doxygen 1.17.0

Data stored for a Table. More...

#include <gecode/int.hh>

Public Types

enum  State {
  TS_BUILDING , TS_FAILED , TS_DENSE , TS_SPARSE ,
  TS_DENSE_COMPRESSED
}
 Tuple set lifecycle state and finalized representation. More...

Public Member Functions

Tuple add (void)
 Return newly added tuple.
Tuple get (int i) const
 Return tuple with number i.
unsigned int tuple2idx (Tuple t) const
 Map tuple address to index.
const Rangefst (int i) const
 Return first range for position i.
const Rangelst (int i) const
 Return last range for position i.
void finalize (void)
 Finalize datastructure (disallows additions of more Tuples).
void finalize (ExtensionalPropKind epk)
 Finalize datastructure (disallows additions of more Tuples).
void resize (void)
 Resize tuple data.
void clear_support (void)
 Release partially or fully constructed support data.
State empty_state (ExtensionalPropKind epk) const
 Select the state for an empty finalized tuple set.
State select_state (ExtensionalPropKind epk, bool dense_possible, bool sparse_possible, bool compressed_possible, bool support_bits_sparse, unsigned long long dense_bytes) const
 Select the finalized state for the computed table layout.
bool finalized (void) const
 Is datastructure finalized.
bool failed (void) const
 Has finalization failed.
bool terminal (void) const
 Is datastructure no longer mutable.
 Data (int a)
 Initialize as empty tuple set with arity a.
virtual ~Data (void)
 Delete implementation.
Public Member Functions inherited from Gecode::SharedHandle::Object
 Object (void)
 Initialize.
virtual ~Object (void)
 Delete shared object.

Static Public Member Functions

static void set (BitSetData *d, unsigned int n)
 Set bit n in bitset data d.
static bool get (const BitSetData *d, unsigned int n)
 Get bit n in bitset data d.
Static Public Member Functions inherited from Gecode::HeapAllocated
static void * operator new (size_t s)
 Memory management.
static void operator delete (void *p)
 Free memory allocated from heap.

Public Attributes

int arity
 Arity.
unsigned int n_words
 Number of words for support.
int n_tuples
 Number of Tuples.
int n_free
 Number of free tuple entries of arity.
int min
 Smallest value.
int max
 Largest value.
std::size_t key
 Hash key.
int * td
 Tuple data.
ValueDatavd
 Value data.
Rangerange
 Pointer to all ranges.
unsigned int * range_base
 Pointer to all range support ids.
BitSetDatasupport
 Pointer to all support data.
State state
 Tuple set lifecycle state and finalized representation.
unsigned int sparse_n_vals
 Number of sparse support values.
unsigned int * sparse_offsets
 Sparse support offsets (size sparse_n_vals+1).
unsigned int * sparse_tuples
 Sparse support tuple ids (size arity*n_tuples).
unsigned int * sparse_tv
 Tuple cell to sparse support id map (size arity*n_tuples).
unsigned int * compressed_offsets
 Compressed support offsets (size n_vals+1).
CSupportWordcompressed_words
 Compressed support words (size compressed_n_entries).
unsigned int compressed_n_entries
 Number of compressed support entries.

Static Protected Attributes

static const int n_initial_free = 1024
 Initial number of free tuples.

Detailed Description

Data stored for a Table.

Definition at line 2434 of file int.hh.

Member Enumeration Documentation

◆ State

Tuple set lifecycle state and finalized representation.

Enumerator
TS_BUILDING 
TS_FAILED 
TS_DENSE 
TS_SPARSE 
TS_DENSE_COMPRESSED 

Definition at line 2440 of file int.hh.

Constructor & Destructor Documentation

◆ Data()

Gecode::TupleSet::Data::Data ( int a)
inline

Initialize as empty tuple set with arity a.

Definition at line 66 of file tuple-set.hpp.

◆ ~Data()

virtual Gecode::TupleSet::Data::~Data ( void )
virtual

Delete implementation.

Member Function Documentation

◆ add()

TupleSet::Tuple Gecode::TupleSet::Data::add ( void )
inline

Return newly added tuple.

Definition at line 98 of file tuple-set.hpp.

◆ get() [1/2]

TupleSet::Tuple Gecode::TupleSet::Data::get ( int i) const
inline

Return tuple with number i.

Definition at line 109 of file tuple-set.hpp.

◆ set()

void Gecode::TupleSet::Data::set ( BitSetData * d,
unsigned int n )
inlinestatic

Set bit n in bitset data d.

Definition at line 135 of file tuple-set.hpp.

◆ get() [2/2]

bool Gecode::TupleSet::Data::get ( const BitSetData * d,
unsigned int n )
inlinestatic

Get bit n in bitset data d.

Definition at line 140 of file tuple-set.hpp.

◆ tuple2idx()

unsigned int Gecode::TupleSet::Data::tuple2idx ( Tuple t) const
inline

Map tuple address to index.

Definition at line 145 of file tuple-set.hpp.

◆ fst()

const TupleSet::Range * Gecode::TupleSet::Data::fst ( int i) const
inline

Return first range for position i.

Definition at line 150 of file tuple-set.hpp.

◆ lst()

const TupleSet::Range * Gecode::TupleSet::Data::lst ( int i) const
inline

Return last range for position i.

Definition at line 154 of file tuple-set.hpp.

◆ finalize() [1/2]

void Gecode::TupleSet::Data::finalize ( void )

Finalize datastructure (disallows additions of more Tuples).

◆ finalize() [2/2]

void Gecode::TupleSet::Data::finalize ( ExtensionalPropKind epk)

Finalize datastructure (disallows additions of more Tuples).

◆ resize()

void Gecode::TupleSet::Data::resize ( void )

Resize tuple data.

◆ clear_support()

void Gecode::TupleSet::Data::clear_support ( void )

Release partially or fully constructed support data.

◆ empty_state()

State Gecode::TupleSet::Data::empty_state ( ExtensionalPropKind epk) const

Select the state for an empty finalized tuple set.

◆ select_state()

State Gecode::TupleSet::Data::select_state ( ExtensionalPropKind epk,
bool dense_possible,
bool sparse_possible,
bool compressed_possible,
bool support_bits_sparse,
unsigned long long dense_bytes ) const

Select the finalized state for the computed table layout.

◆ finalized()

bool Gecode::TupleSet::Data::finalized ( void ) const
inline

Is datastructure finalized.

Definition at line 81 of file tuple-set.hpp.

◆ failed()

bool Gecode::TupleSet::Data::failed ( void ) const
inline

Has finalization failed.

Definition at line 88 of file tuple-set.hpp.

◆ terminal()

bool Gecode::TupleSet::Data::terminal ( void ) const
inline

Is datastructure no longer mutable.

Definition at line 93 of file tuple-set.hpp.

Member Data Documentation

◆ n_initial_free

const int Gecode::TupleSet::Data::n_initial_free = 1024
staticprotected

Initial number of free tuples.

Definition at line 2437 of file int.hh.

◆ arity

int Gecode::TupleSet::Data::arity

Arity.

Definition at line 2449 of file int.hh.

◆ n_words

unsigned int Gecode::TupleSet::Data::n_words

Number of words for support.

Definition at line 2451 of file int.hh.

◆ n_tuples

int Gecode::TupleSet::Data::n_tuples

Number of Tuples.

Definition at line 2453 of file int.hh.

◆ n_free

int Gecode::TupleSet::Data::n_free

Number of free tuple entries of arity.

Definition at line 2455 of file int.hh.

◆ min

int Gecode::TupleSet::Data::min

Smallest value.

Definition at line 2457 of file int.hh.

◆ max

int Gecode::TupleSet::Data::max

Largest value.

Definition at line 2459 of file int.hh.

◆ key

std::size_t Gecode::TupleSet::Data::key

Hash key.

Definition at line 2461 of file int.hh.

◆ td

int* Gecode::TupleSet::Data::td

Tuple data.

Definition at line 2463 of file int.hh.

◆ vd

ValueData* Gecode::TupleSet::Data::vd

Value data.

Definition at line 2465 of file int.hh.

◆ range

Range* Gecode::TupleSet::Data::range

Pointer to all ranges.

Definition at line 2467 of file int.hh.

◆ range_base

unsigned int* Gecode::TupleSet::Data::range_base

Pointer to all range support ids.

Definition at line 2469 of file int.hh.

◆ support

BitSetData* Gecode::TupleSet::Data::support

Pointer to all support data.

Definition at line 2471 of file int.hh.

◆ state

State Gecode::TupleSet::Data::state

Tuple set lifecycle state and finalized representation.

Definition at line 2473 of file int.hh.

◆ sparse_n_vals

unsigned int Gecode::TupleSet::Data::sparse_n_vals

Number of sparse support values.

Definition at line 2475 of file int.hh.

◆ sparse_offsets

unsigned int* Gecode::TupleSet::Data::sparse_offsets

Sparse support offsets (size sparse_n_vals+1).

Definition at line 2477 of file int.hh.

◆ sparse_tuples

unsigned int* Gecode::TupleSet::Data::sparse_tuples

Sparse support tuple ids (size arity*n_tuples).

Definition at line 2479 of file int.hh.

◆ sparse_tv

unsigned int* Gecode::TupleSet::Data::sparse_tv

Tuple cell to sparse support id map (size arity*n_tuples).

Definition at line 2481 of file int.hh.

◆ compressed_offsets

unsigned int* Gecode::TupleSet::Data::compressed_offsets

Compressed support offsets (size n_vals+1).

Definition at line 2483 of file int.hh.

◆ compressed_words

CSupportWord* Gecode::TupleSet::Data::compressed_words

Compressed support words (size compressed_n_entries).

Definition at line 2485 of file int.hh.

◆ compressed_n_entries

unsigned int Gecode::TupleSet::Data::compressed_n_entries

Number of compressed support entries.

Definition at line 2487 of file int.hh.


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