Condition that explains why two blocks or chains can be merged into a new, larger chain. More...
#include <GoChain.h>
Public Member Functions | |
GoChainCondition (GoChainType type) | |
A condition with no parameters. | |
GoChainCondition (GoChainType type, SgPoint lib1, SgPoint lib2) | |
A condition depending on two liberties. | |
bool | Overlaps (const GoChainCondition &condition) const |
Is there a potential conflict between this and condition? | |
bool | Overlaps (const SgVectorOf< GoChainCondition > &conditions) const |
Is there a potential conflict between this and conditions? | |
bool | UsesLibs () const |
Are liberties used? | |
GoChainType | Type () const |
SgPoint | Lib1 () const |
first liberty used in condition | |
SgPoint | Lib2 () const |
second liberty used in condition | |
Private Attributes | |
GoChainType | m_type |
Type. | |
SgPoint | m_lib1 |
condition depends on these two liberties | |
SgPoint | m_lib2 |
Condition that explains why two blocks or chains can be merged into a new, larger chain.
Definition at line 35 of file GoChain.h.
GoChainCondition::GoChainCondition | ( | GoChainType | type | ) |
A condition with no parameters.
Definition at line 40 of file GoChain.h.
References GO_CHAIN_BY_SEARCH, SG_ASSERT, and SG_NULLPOINT.
GoChainCondition::GoChainCondition | ( | GoChainType | type, | |
SgPoint | lib1, | |||
SgPoint | lib2 | |||
) |
A condition depending on two liberties.
Definition at line 49 of file GoChain.h.
References GO_CHAIN_TWO_LIBERTIES_IN_REGION, and SG_ASSERT.
SgPoint GoChainCondition::Lib1 | ( | ) | const |
first liberty used in condition
Definition at line 70 of file GoChain.h.
References GO_CHAIN_BY_SEARCH, m_lib1, m_type, and SG_ASSERT.
Referenced by GoChain::GoChain(), and operator<<().
SgPoint GoChainCondition::Lib2 | ( | ) | const |
second liberty used in condition
Definition at line 77 of file GoChain.h.
References GO_CHAIN_BY_SEARCH, m_lib2, m_type, and SG_ASSERT.
Referenced by GoChain::GoChain(), and operator<<().
bool GoChainCondition::Overlaps | ( | const SgVectorOf< GoChainCondition > & | conditions | ) | const |
Is there a potential conflict between this and conditions?
Definition at line 130 of file GoChain.cpp.
References Overlaps().
bool GoChainCondition::Overlaps | ( | const GoChainCondition & | condition | ) | const |
Is there a potential conflict between this and condition?
Definition at line 119 of file GoChain.cpp.
References m_lib1, m_lib2, and UsesLibs().
Referenced by GoChain::GoChain(), and Overlaps().
GoChainType GoChainCondition::Type | ( | ) | const |
bool GoChainCondition::UsesLibs | ( | ) | const |
Are liberties used?
Definition at line 65 of file GoChain.h.
References m_type.
Referenced by GoChain::GoChain(), operator<<(), and Overlaps().
SgPoint GoChainCondition::m_lib1 [private] |
condition depends on these two liberties
Definition at line 88 of file GoChain.h.
Referenced by Lib1(), and Overlaps().
SgPoint GoChainCondition::m_lib2 [private] |
Definition at line 88 of file GoChain.h.
Referenced by Lib2(), and Overlaps().
GoChainType GoChainCondition::m_type [private] |