# DataExchange
TKXSBase
Interface

# Interface_ShareFlags Class Reference

This class only says for each Entity of a Model, if it is
Shared or not by one or more other(s) of this Model
It uses the General Service "Shared".
.

`#include <Interface_ShareFlags.hxx>`

## Public Member Functions

void * | operator new (size_t, void *anAddress)
void * | operator new (size_t size)
void | operator delete (void *anAddress)
Standard_EXPORT | Interface_ShareFlags (const Handle(Interface_InterfaceModel)&amodel, const Interface_GeneralLib &lib)
| Creates a ShareFlags from a Model and builds required data (flags) by calling the General Service Library given as argument <lib> .
Standard_EXPORT | Interface_ShareFlags (const Handle(Interface_InterfaceModel)&amodel, const Handle(Interface_GTool)&gtool)
| Same as above, but GeneralLib is detained by a GTool .
Standard_EXPORT | Interface_ShareFlags (const Handle(Interface_InterfaceModel)&amodel, const Handle(Interface_Protocol)&protocol)
| Same as above, but GeneralLib is defined through a Protocol .
Standard_EXPORT | Interface_ShareFlags (const Handle(Interface_InterfaceModel)&amodel)
| Same as above, but works with the GTool of the Model .
Standard_EXPORT | Interface_ShareFlags (const Interface_Graph &agraph)
| Creates a ShareFlags by querying informations from a Graph (remark that Graph also has a method IsShared) .
Standard_EXPORT Handle_Interface_InterfaceModel | Model () const
| Returns the Model used for the evaluation .
Standard_EXPORT Standard_Boolean | IsShared (const Handle(Standard_Transient)&ent) const
| Returns True if <ent> is Shared by one or more other Entity(ies) of the Model .
Standard_EXPORT Interface_EntityIterator | RootEntities () const
| Returns the Entities which are not Shared (see their flags) .
Standard_EXPORT Standard_Integer | NbRoots () const
| Returns the count of root entities .
Standard_EXPORT Handle_Standard_Transient | Root (const Standard_Integer num=1) const
| Returns a root entity according its rank in the list of roots By default, it returns the first one .

## Private Member Functions

Standard_EXPORT void | Evaluate (const Interface_GeneralLib &lib, const Handle(Interface_GTool)&gtool)
| Computes flags at Creation time Normally, gtool suffices. But if a Graph is created from a GeneralLib directly, it cannot be used If <gtool> is defined, it has priority .

## Private Attributes

Handle_Interface_InterfaceModel | themodel
Interface_BitMap | theflags
Handle_TColStd_HSequenceOfTransient | theroots

## Constructor & Destructor Documentation

Standard_EXPORT Interface_ShareFlags::Interface_ShareFlags | ( | const Handle(Interface_InterfaceModel)& | amodel,
|  | const Interface_GeneralLib & | lib
| ) |

Standard_EXPORT Interface_ShareFlags::Interface_ShareFlags | ( | const Handle(Interface_InterfaceModel)& | amodel,
|  | const Handle(Interface_GTool)& | gtool
| ) |

Standard_EXPORT Interface_ShareFlags::Interface_ShareFlags | ( | const Handle(Interface_InterfaceModel)& | amodel,
|  | const Handle(Interface_Protocol)& | protocol
| ) |

Standard_EXPORT Interface_ShareFlags::Interface_ShareFlags | ( | const Handle(Interface_InterfaceModel)& | amodel | ) |

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

## Member Function Documentation

Standard_EXPORT void Interface_ShareFlags::Evaluate | ( | const Interface_GeneralLib & | lib,
|  | const Handle(Interface_GTool)& | gtool
| ) | `[private]`

Standard_EXPORT Standard_Boolean Interface_ShareFlags::IsShared | ( | const Handle(Standard_Transient)& | ent | ) | const

Standard_EXPORT Handle_Interface_InterfaceModel Interface_ShareFlags::Model | ( |  | ) | const

Standard_EXPORT Standard_Integer Interface_ShareFlags::NbRoots | ( |  | ) | const

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

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

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

Standard_EXPORT Handle_Standard_Transient Interface_ShareFlags::Root | ( | const Standard_Integer | num = `1` | ) | const

Standard_EXPORT Interface_EntityIterator Interface_ShareFlags::RootEntities | ( |  | ) | const

## Field Documentation

Interface_BitMap Interface_ShareFlags::theflags`[private]`

Handle_Interface_InterfaceModel Interface_ShareFlags::themodel`[private]`

Handle_TColStd_HSequenceOfTransient Interface_ShareFlags::theroots`[private]`

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

- Interface_ShareFlags.hxx