1
0
mirror of https://git.dev.opencascade.org/repos/occt.git synced 2025-08-29 14:00:49 +03:00
Files
occt/src/LibCtl/LibCtl_GlobalNode.gxx
2012-03-05 19:23:40 +04:00

35 lines
1.1 KiB
Plaintext
Executable File

//#include <LibCtl_GlobalNode.ixx>
// Classe generique imbriquee dans Library : utilisee pour construire les
// listes globales de Modules attaches a une classe instanciee de Library
// (cf Library pour plus de details)
LibCtl_GlobalNode::LibCtl_GlobalNode () { }
// ATTENTION, Add agit en substitution : pour un Protocol donne, c est le
// dernier appel qui l emporte
void LibCtl_GlobalNode::Add
(const Handle(TheModule)& amodule, const Handle(TheProtocol)& aprotocol)
{
if (themod == amodule) return;
if (theprot == aprotocol) themod = amodule;
else if (thenext.IsNull()) {
if (themod.IsNull()) { themod = amodule; theprot = aprotocol; }
else {
thenext = new LibCtl_GlobalNode;
thenext->Add (amodule,aprotocol);
}
}
else thenext->Add (amodule,aprotocol);
}
const Handle(TheModule)& LibCtl_GlobalNode::Module () const
{ return themod; }
const Handle(TheProtocol)& LibCtl_GlobalNode::Protocol () const
{ return theprot; }
const Handle(LibCtl_GlobalNode)& LibCtl_GlobalNode::Next () const
{ return thenext; }