![]() |
Mesh Oriented datABase
(version 5.4.1)
Array-based unstructured mesh datastructure
|
Public Member Functions | |
ComponentFactory () | |
virtual | ~ComponentFactory () |
virtual int | QueryInterface (const MBuuid &, UnknownInterface **) |
Static Public Attributes | |
static std::list < UnknownInterface * > | objects_in_use |
Definition at line 62 of file Factory.cpp.
moab::ComponentFactory::ComponentFactory | ( | ) | [inline] |
Definition at line 65 of file Factory.cpp.
{}
virtual moab::ComponentFactory::~ComponentFactory | ( | ) | [inline, virtual] |
Definition at line 66 of file Factory.cpp.
{}
int moab::ComponentFactory::QueryInterface | ( | const MBuuid & | uuid, |
UnknownInterface ** | iface | ||
) | [virtual] |
Implements moab::UnknownInterface.
Definition at line 83 of file Factory.cpp.
References moab::IDD_MBCore, moab::IDD_MBUnknown, and moab::Core::QueryInterface().
Referenced by moab::GetInterface().
{
// this is an unknown interface that was requested
// if wanted, we could provide a default interface
// if IDD_MBUnknown is specified
if( uuid == IDD_MBUnknown ) return 0;
// IDD_MBVerde interface was requested
// create an Verde object and have it return the interface
// requested
else if( uuid == IDD_MBCore )
{
Core* mdb = new Core;
// if the object does not contain the interface requested, delete the object
if( !mdb->QueryInterface( uuid, iface ) )
{
delete mdb;
return 0;
}
return 1;
}
else
return 0;
}
std::list< UnknownInterface * > moab::ComponentFactory::objects_in_use [static] |
Definition at line 70 of file Factory.cpp.
Referenced by moab::DeInitialize(), moab::GetInterface(), and moab::ReleaseInterface().