# DataExchange
TKXSBase
IFGraph

# IFGraph_Compare Class Reference

this class evaluates effect of two compared sub-parts :
cumulation (union), common part (intersection-overlapping)
part specific to first sub-part or to the second one
Results are kept in a Graph, several question can be set
Basic Iteration gives Cumulation (union)

`#include <IFGraph_Compare.hxx>`

Inheritance diagram for IFGraph_Compare:

[legend]

## Public Member Functions

void * | operator new (size_t, void *anAddress)
void * | operator new (size_t size)
void | operator delete (void *anAddress)
Standard_EXPORT | IFGraph_Compare (const Interface_Graph &agraph)
| creates empty Compare, ready to work
Standard_EXPORT void | GetFromEntity (const Handle(Standard_Transient)&ent, const Standard_Boolean first)
| adds an entity and its shared ones to the list : first True means adds to the first sub-list, else to the 2nd
Standard_EXPORT void | GetFromIter (const Interface_EntityIterator &iter, const Standard_Boolean first)
| adds a list of entities (as an iterator) as such, that is, their shared entities are not considered (use AllShared to have them) first True means adds to the first sub-list, else to the 2nd
Standard_EXPORT void | Merge ()
| merges the second list into the first one, hence the second list is empty
Standard_EXPORT void | RemoveSecond ()
| Removes the contents of second list .
Standard_EXPORT void | KeepCommon ()
| Keeps only Common part, sets it as First list and clears second list .
Standard_EXPORT void | ResetData ()
| Allows to restart on a new data set .
virtual Standard_EXPORT void | Evaluate ()
| Recomputes result of comparing to sub-parts .
Standard_EXPORT Interface_EntityIterator | Common () const
| returns entities common to the both parts
Standard_EXPORT Interface_EntityIterator | FirstOnly () const
| returns entities which are exclusively in the first list
Standard_EXPORT Interface_EntityIterator | SecondOnly () const
| returns entities which are exclusively in the second part

## Private Attributes

Interface_Graph | thegraph

## Constructor & Destructor Documentation

Standard_EXPORT IFGraph_Compare::IFGraph_Compare | ( | const Interface_Graph & | agraph | ) |

## Member Function Documentation

Standard_EXPORT Interface_EntityIterator IFGraph_Compare::Common | ( |  | ) | const

virtual Standard_EXPORT void IFGraph_Compare::Evaluate | ( |  | ) | `[virtual]`

| Reimplemented from Interface_GraphContent.

Standard_EXPORT Interface_EntityIterator IFGraph_Compare::FirstOnly | ( |  | ) | const

Standard_EXPORT void IFGraph_Compare::GetFromEntity | ( | const Handle(Standard_Transient)& | ent,
|  | const Standard_Boolean | first
| ) |

Standard_EXPORT void IFGraph_Compare::GetFromIter | ( | const Interface_EntityIterator & | iter,
|  | const Standard_Boolean | first
| ) |

Standard_EXPORT void IFGraph_Compare::KeepCommon | ( |  | ) |

Standard_EXPORT void IFGraph_Compare::Merge | ( |  | ) |

void IFGraph_Compare::operator delete | ( | void * | anAddress | ) | `[inline]`

| Reimplemented from Interface_GraphContent.

void* IFGraph_Compare::operator new | ( | size_t | size | ) | `[inline]`

| Reimplemented from Interface_GraphContent.

void* IFGraph_Compare::operator new | ( | size_t | ,
|  | void * | anAddress
| ) | `[inline]`

| Reimplemented from Interface_GraphContent.

Standard_EXPORT void IFGraph_Compare::RemoveSecond | ( |  | ) |

Standard_EXPORT void IFGraph_Compare::ResetData | ( |  | ) |

Standard_EXPORT Interface_EntityIterator IFGraph_Compare::SecondOnly | ( |  | ) | const

## Field Documentation

Interface_Graph IFGraph_Compare::thegraph `[private]`

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

- IFGraph_Compare.hxx