ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
eSLIM::SelectionStrategy< T > Class Template Reference

#include <selectionStrategy.hpp>

Inheritance diagram for eSLIM::SelectionStrategy< T >:
Collaboration diagram for eSLIM::SelectionStrategy< T >:

Public Member Functions

Subcircuit getSubcircuit ()
 
bool getStatus ()
 
void setSeed (int seed)
 

Protected Member Functions

 SelectionStrategy (Gia_Man_t *&gia_man, const eSLIMConfig &cfg, eSLIMLog &log)
 
unsigned int getUniformRandomNumber (unsigned int lower, unsigned int upper)
 
bool getRandomBool ()
 
int getSubcircuitIO (Vec_Int_t *subcircuit, Vec_Int_t *io)
 
std::unordered_map< int, std::unordered_set< int > > computeForbiddenPairs (const Subcircuit &subcir)
 

Protected Attributes

Gia_Man_t *& gia_man
 
const eSLIMConfigcfg
 
eSLIMLoglog
 

Detailed Description

template<typename T>
class eSLIM::SelectionStrategy< T >

Definition at line 38 of file selectionStrategy.hpp.

Constructor & Destructor Documentation

◆ SelectionStrategy()

template<typename T>
eSLIM::SelectionStrategy< T >::SelectionStrategy ( Gia_Man_t *& gia_man,
const eSLIMConfig & cfg,
eSLIMLog & log )
protected

Definition at line 106 of file selectionStrategy.hpp.

107 : gia_man(gia_man), cfg(cfg), log(log), rng(std::random_device()()), bdist(cfg.expansion_probability) {
108 }

Member Function Documentation

◆ computeForbiddenPairs()

template<typename T>
std::unordered_map< int, std::unordered_set< int > > eSLIM::SelectionStrategy< T >::computeForbiddenPairs ( const Subcircuit & subcir)
protected

◆ getRandomBool()

template<typename T>
bool eSLIM::SelectionStrategy< T >::getRandomBool ( )
protected

Definition at line 122 of file selectionStrategy.hpp.

122 {
123 return bdist(rng);
124 }

◆ getStatus()

template<typename T>
bool eSLIM::SelectionStrategy< T >::getStatus ( )
inline

Definition at line 41 of file selectionStrategy.hpp.

41{return status;};

◆ getSubcircuit()

template<typename T>
Subcircuit eSLIM::SelectionStrategy< T >::getSubcircuit ( )

◆ getSubcircuitIO()

template<typename T>
int eSLIM::SelectionStrategy< T >::getSubcircuitIO ( Vec_Int_t * subcircuit,
Vec_Int_t * io )
protected

◆ getUniformRandomNumber()

template<typename T>
unsigned int eSLIM::SelectionStrategy< T >::getUniformRandomNumber ( unsigned int lower,
unsigned int upper )
protected

Definition at line 116 of file selectionStrategy.hpp.

116 {
118 return udistr(rng);
119 }

◆ setSeed()

template<typename T>
void eSLIM::SelectionStrategy< T >::setSeed ( int seed)

Definition at line 111 of file selectionStrategy.hpp.

111 {
112 rng.seed(seed);
113 }

Member Data Documentation

◆ cfg

template<typename T>
const eSLIMConfig& eSLIM::SelectionStrategy< T >::cfg
protected

Definition at line 53 of file selectionStrategy.hpp.

◆ gia_man

template<typename T>
Gia_Man_t*& eSLIM::SelectionStrategy< T >::gia_man
protected

Definition at line 52 of file selectionStrategy.hpp.

◆ log

template<typename T>
eSLIMLog& eSLIM::SelectionStrategy< T >::log
protected

Definition at line 54 of file selectionStrategy.hpp.


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