Generated on Tue Jan 19 2021 06:15:49 for Gecode by doxygen 1.8.13
Gecode::SearchTracer Class Referenceabstract

Support for tracing search. More...

#include <search.hh>

Classes

class  EdgeInfo
 Edge information. More...
 
class  EngineInfo
 Information about an engine. More...
 
class  NodeInfo
 Node information. More...
 

Public Types

enum  EngineType {
  DFS = 0, BAB = 1, LDS = 2, RBS = 3,
  PBS = 4, AOE = 5
}
 Which type of engine. More...
 
enum  NodeType { SOLVED = 0, FAILED = 1, BRANCH = 2 }
 Node type. More...
 

Public Member Functions

 SearchTracer (void)
 Initialize. More...
 
virtual ~SearchTracer (void)
 Delete. More...
 

Engine information

unsigned int workers (void) const
 Return number of workers. More...
 
unsigned int engines (void) const
 Return number of engines. More...
 
const EngineInfo & engine (unsigned int eid) const
 Provide access to engine with id eid. More...
 
unsigned int eid (unsigned int wid) const
 Return the engine id of a worker with id wid. More...
 

Trace event functions

virtual void init (void)=0
 The search engine initializes. More...
 
virtual void round (unsigned int eid)=0
 The engine with id eid goes to a next round (restart or next iteration in LDS) More...
 
virtual void skip (const EdgeInfo &ei)=0
 The engine skips an edge. More...
 
virtual void node (const EdgeInfo &ei, const NodeInfo &ni)=0
 The engine creates a new node with information ei and ni. More...
 
virtual void done (void)=0
 All workers are done. More...
 

Detailed Description

Support for tracing search.

Definition at line 187 of file search.hh.

Member Enumeration Documentation

◆ EngineType

Which type of engine.

Enumerator
DFS 

Engine is a DFS engine.

BAB 

Engine is a BAB engine.

LDS 

Engine is a LDS engine.

RBS 

Engine is a RBS engine.

PBS 

Engine is a PBS engine.

AOE 

Unspecified engine (any other engine)

Definition at line 193 of file search.hh.

◆ NodeType

Node type.

Enumerator
SOLVED 
FAILED 

A solution node.

BRANCH 

A failed node.

Definition at line 276 of file search.hh.

Constructor & Destructor Documentation

◆ SearchTracer()

Gecode::SearchTracer::SearchTracer ( void  )
inline

Initialize.

Definition at line 223 of file tracer.hpp.

◆ ~SearchTracer()

Gecode::SearchTracer::~SearchTracer ( void  )
inlinevirtual

Delete.

Definition at line 289 of file tracer.hpp.

Member Function Documentation

◆ workers()

unsigned int Gecode::SearchTracer::workers ( void  ) const
inline

Return number of workers.

Definition at line 266 of file tracer.hpp.

◆ engines()

unsigned int Gecode::SearchTracer::engines ( void  ) const
inline

Return number of engines.

Definition at line 271 of file tracer.hpp.

◆ engine()

const SearchTracer::EngineInfo & Gecode::SearchTracer::engine ( unsigned int  eid) const
inline

Provide access to engine with id eid.

Definition at line 276 of file tracer.hpp.

◆ eid()

unsigned int Gecode::SearchTracer::eid ( unsigned int  wid) const
inline

Return the engine id of a worker with id wid.

Definition at line 283 of file tracer.hpp.

◆ init()

virtual void Gecode::SearchTracer::init ( void  )
pure virtual

The search engine initializes.

Implemented in Gecode::CPProfilerSearchTracer, and Gecode::StdSearchTracer.

◆ round()

virtual void Gecode::SearchTracer::round ( unsigned int  eid)
pure virtual

The engine with id eid goes to a next round (restart or next iteration in LDS)

Implemented in Gecode::CPProfilerSearchTracer, and Gecode::StdSearchTracer.

◆ skip()

virtual void Gecode::SearchTracer::skip ( const EdgeInfo &  ei)
pure virtual

The engine skips an edge.

Implemented in Gecode::CPProfilerSearchTracer, and Gecode::StdSearchTracer.

◆ node()

virtual void Gecode::SearchTracer::node ( const EdgeInfo &  ei,
const NodeInfo &  ni 
)
pure virtual

The engine creates a new node with information ei and ni.

Implemented in Gecode::CPProfilerSearchTracer, and Gecode::StdSearchTracer.

◆ done()

virtual void Gecode::SearchTracer::done ( void  )
pure virtual

All workers are done.

Implemented in Gecode::CPProfilerSearchTracer, and Gecode::StdSearchTracer.


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