Minotaur 0.4.1
Docs for developers
ActiveNodeStore.h
Go to the documentation of this file.
1//
2// Minotaur -- It's only 1/2 bull
3//
4// (C)opyright 2008 - 2025 The Minotaur Team.
5//
6
15#ifndef MINOTAURACTIVENODESTORE_H
16#define MINOTAURACTIVENODESTORE_H
17
18#include "Types.h"
19
20namespace Minotaur {
21
22 class Node;
23
32
33 public:
36
38 virtual ~ActiveNodeStore() {}
39
41 virtual double getBestLB() const = 0;
42
44 virtual UInt getDeepestLevel() const = 0;
45
47 virtual size_t getSize() const = 0;
48
55 virtual bool isEmpty() const = 0;
56
58 virtual void pop() = 0;
59
65 virtual void push(NodePtr n) = 0;
66
74 virtual NodePtr top() const = 0;
75
83 virtual void write(std::ostream &out) const = 0;
84 };
86} //namespace Minotaur
87#endif
Declare important 'types' used in Minotaur.
Save and retrieve active nodes.
Definition: ActiveNodeStore.h:31
virtual void write(std::ostream &out) const =0
Display the active nodes.
virtual UInt getDeepestLevel() const =0
Find the maximum depth of all active nodes.
virtual size_t getSize() const =0
Get the number of active nodes.
virtual void push(NodePtr n)=0
Add a node to the set of active nodes.
virtual NodePtr top() const =0
Access to the best candidate for evaluating next.
virtual double getBestLB() const =0
Find the minimum lower bound of all the active nodes.
ActiveNodeStore()
Default Constructor.
Definition: ActiveNodeStore.h:35
virtual void pop()=0
Remove the best node from the store.
virtual ~ActiveNodeStore()
Destroy.
Definition: ActiveNodeStore.h:38
virtual bool isEmpty() const =0
Check if there are any active nodes left.
Definition: Node.h:54
Definition: ActiveNodeStore.h:20
unsigned int UInt
Unsigned integer.
Definition: Types.h:30

Minotaur source code documented by Doxygen 1.9.4 on Thu Apr 24 2025