ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
block.hpp
Go to the documentation of this file.
1#ifndef _block_hpp_INCLUDED
2#define _block_hpp_INCLUDED
3
4#include "global.h"
5
6#include "heap.hpp" // Alphabetically after 'block.hpp'.
7
9
10namespace CaDiCaL {
11
12struct Internal;
13
17 bool operator() (unsigned a, unsigned b);
18};
19
21
22class Blocker {
23
24 friend struct Internal;
25
26 vector<struct Clause *> candidates;
27 vector<struct Clause *> reschedule;
28 BlockSchedule schedule;
29
30 Blocker (Internal *i) : schedule (block_more_occs_size (i)) {}
31
32 void erase () {
33 erase_vector (candidates);
34 erase_vector (reschedule);
35 schedule.erase ();
36 }
37};
38
39} // namespace CaDiCaL
40
42
43#endif
#define ABC_NAMESPACE_CXX_HEADER_START
#define ABC_NAMESPACE_CXX_HEADER_END
friend struct Internal
Definition block.hpp:24
void erase()
Definition heap.hpp:194
heap< block_more_occs_size > BlockSchedule
Definition block.hpp:20
void erase_vector(std::vector< T > &v)
Definition util.hpp:90
bool operator()(unsigned a, unsigned b)
block_more_occs_size(Internal *i)
Definition block.hpp:16