32 #ifndef GUM_DFS_CODE_H 33 # define GUM_DFS_CODE_H 125 typedef std::vector< EdgeCode* >::iterator
iterator;
142 return (e2->
i <= e1->
i) && (e2->
j = (e1->
i + 1));
144 return (e2->
i == e1->
i) && (e1->
j < e2->
j);
149 return (e2->
i <= e1->
j) && (e2->
j == (e1->
j + 1));
151 return (e2->
i == e1->
j) && (e2->
j < e1->
i);
160 # ifndef GUM_NO_INLINE 162 # endif // GUM_NO_INLINE bool operator<(const DFSCode &code) const
Lesser than operator.
Inline implementation of the DFSCode class.
NodeId i
The DFS subscript of the first node in the code.
std::ostream & operator<<(std::ostream &out, const DFSCode &code)
Print code in out.
bool operator==(const DFSCode &code) const
Equality operator.
bool operator<=(const DFSCode &code) const
Lesser or equal than operator.
NodeId j
The DFS subscript of the second node in the code.
Reprensent a Depth First Search coding of a graph.
gum is the global namespace for all aGrUM entities
DFSCode & operator=(const DFSCode &source)
Copy operator.
std::vector< EdgeCode *> codes
The vector containing the EdgeCode composing this DFSCode.
represent a DFS code used by gspan.
Headers of the EdgeCode class.
bool isBackward() const
Returns true if this EdgeCode is a backward edge.
bool operator!=(const DFSCode &code) const
Difference operator.
bool isForward() const
Returns true if this EdgeCode is a forward edge.
DFSCode()
Default constructor.
static bool validNeighbors(EdgeCode *e1, EdgeCode *e2)
Returns true of e2 is a valid neighbor for e1 (i.e.
std::vector< EdgeCode *>::iterator iterator
Code alias.
std::vector< EdgeCode *>::const_iterator const_iterator
Code alias.