|
EpetraExt Development
|
00001 //------------------------------------------------------------------------- 00002 // Copyright Notice 00003 // 00004 // Copyright (c) 2000, Sandia Corporation, Albuquerque, NM. 00005 //------------------------------------------------------------------------- 00006 00007 //------------------------------------------------------------------------- 00008 // Filename : $Zoltan_QueryContainer.h$ 00009 // 00010 // Purpose : Static Container object to allow Static (C-style) 00011 // functions to access methods of dynamic objects. 00012 // 00013 // Special Notes : 00014 // 00015 // Creator : Robert J. Hoekstra 00016 // 00017 // Creation Date : 08/04/2000 00018 // 00019 // Revision Information: 00020 // --------------------- 00021 // 00022 // Revision Number: $$ 00023 // 00024 // Revision Date : $$ 00025 // 00026 // Current Owner : $$ 00027 //------------------------------------------------------------------------- 00028 00029 #ifndef ZOLTAN_QUERYCONTAINER_H_ 00030 #define ZOLTAN_QUERYCONTAINER_H_ 00031 00032 #include "EpetraExt_ConfigDefs.h" 00033 00034 #include <map> 00035 00036 namespace Zoltan { 00037 00038 class QueryObject; 00039 00040 class QueryContainer 00041 { 00042 00043 public: 00044 00045 static void setQueryID( const int & id ); 00046 00047 static const int & getQueryID(); 00048 00049 static bool registerQueryObject( const int & id, 00050 QueryObject * obj_ptr ); 00051 00052 static QueryObject * getQueryObject( const int & id ); 00053 00054 private: 00055 00056 static int CurrentObject; 00057 00058 static std::map< int, QueryObject * > StaticMap; 00059 00060 }; 00061 00062 } //namespace Zoltan 00063 00064 #endif
1.7.4