Generated on Tue Jan 19 2021 06:15:49 for Gecode by doxygen 1.8.13
Gecode::Int::LDSB::VariableSymmetryImp< View > Class Template Reference

Implementation of a variable symmetry. More...

#include <ldsb.hh>

Public Member Functions

 VariableSymmetryImp (Space &home, int *vs, unsigned int n)
 Constructor for creation. More...
 
 VariableSymmetryImp (Space &home, const VariableSymmetryImp< View > &other)
 Copy constructor. More...
 
virtual size_t dispose (Space &home)
 Disposal. More...
 
void update (Literal)
 Left-branch update. More...
 
virtual ArgArray< Literalsymmetric (Literal, const ViewArray< View > &) const
 Compute symmetric literals. More...
 
SymmetryImp< View > * copy (Space &home) const
 Copy function. More...
 
template<>
ArgArray< Literalsymmetric (Literal l, const ViewArray< IntView > &x) const
 Compute symmetric literals. More...
 
template<>
ArgArray< Literalsymmetric (Literal l, const ViewArray< BoolView > &x) const
 Compute symmetric literals. More...
 
template<>
ArgArray< Literalsymmetric (Literal l, const ViewArray< Set::SetView > &x) const
 
- Public Member Functions inherited from Gecode::Int::LDSB::SymmetryImp< View >
virtual ~SymmetryImp (void)
 Unused destructor. More...
 

Protected Attributes

Support::BitSetOffset< Spaceindices
 Symmetric variable indices. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from Gecode::Int::LDSB::SymmetryImp< View >
static void * operator new (size_t s, Space &home)
 Placement new operator. More...
 
static void operator delete (void *, Space &)
 Return memory to space. More...
 
static void operator delete (void *)
 Needed for exceptions. More...
 

Detailed Description

template<class View>
class Gecode::Int::LDSB::VariableSymmetryImp< View >

Implementation of a variable symmetry.

Definition at line 183 of file ldsb.hh.

Constructor & Destructor Documentation

◆ VariableSymmetryImp() [1/2]

template<class View >
Gecode::Int::LDSB::VariableSymmetryImp< View >::VariableSymmetryImp ( Space home,
int *  vs,
unsigned int  n 
)

Constructor for creation.

Definition at line 66 of file sym-imp.hpp.

◆ VariableSymmetryImp() [2/2]

template<class View >
Gecode::Int::LDSB::VariableSymmetryImp< View >::VariableSymmetryImp ( Space home,
const VariableSymmetryImp< View > &  other 
)
inline

Copy constructor.

Definition at line 90 of file sym-imp.hpp.

Member Function Documentation

◆ dispose()

template<class View >
size_t Gecode::Int::LDSB::VariableSymmetryImp< View >::dispose ( Space home)
virtual

Disposal.

Implements Gecode::Int::LDSB::SymmetryImp< View >.

Definition at line 96 of file sym-imp.hpp.

◆ update()

template<class View >
void Gecode::Int::LDSB::VariableSymmetryImp< View >::update ( Literal  l)
virtual

Left-branch update.

Implements Gecode::Int::LDSB::SymmetryImp< View >.

Definition at line 104 of file sym-imp.hpp.

◆ symmetric() [1/4]

template<class View>
virtual ArgArray<Literal> Gecode::Int::LDSB::VariableSymmetryImp< View >::symmetric ( Literal  ,
const ViewArray< View > &   
) const
virtual

Compute symmetric literals.

Implements Gecode::Int::LDSB::SymmetryImp< View >.

◆ copy()

template<class View >
SymmetryImp< View > * Gecode::Int::LDSB::VariableSymmetryImp< View >::copy ( Space home) const
virtual

Copy function.

Implements Gecode::Int::LDSB::SymmetryImp< View >.

Definition at line 112 of file sym-imp.hpp.

◆ symmetric() [2/4]

template<>
ArgArray< Literal > Gecode::Int::LDSB::VariableSymmetryImp< IntView >::symmetric ( Literal  l,
const ViewArray< IntView > &  x 
) const

Compute symmetric literals.

Definition at line 42 of file sym-imp.cpp.

◆ symmetric() [3/4]

template<>
ArgArray< Literal > Gecode::Int::LDSB::VariableSymmetryImp< BoolView >::symmetric ( Literal  l,
const ViewArray< BoolView > &  x 
) const

Compute symmetric literals.

Definition at line 61 of file sym-imp.cpp.

◆ symmetric() [4/4]

template<>
ArgArray< Literal > Gecode::Int::LDSB::VariableSymmetryImp< Set::SetView >::symmetric ( Literal  l,
const ViewArray< Set::SetView > &  x 
) const

Definition at line 57 of file sym-imp.cpp.

Member Data Documentation

◆ indices

template<class View>
Support::BitSetOffset<Space> Gecode::Int::LDSB::VariableSymmetryImp< View >::indices
protected

Symmetric variable indices.

Definition at line 186 of file ldsb.hh.


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