00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028 #ifdef __GNUG__
00029 #pragma interface
00030 #endif
00031
00032 #ifndef _util_misc_ccaenv_h
00033 #define _util_misc_ccaenv_h
00034
00035 #include <ccaffeine_AbstractFramework.hh>
00036 #include <gov_cca.hh>
00037 #include <MPQC_ComponentFactory.hh>
00038
00039 namespace sc {
00040
00042 class CCAEnv {
00043 private:
00044 static int initialized_;
00045 static ccaffeine::AbstractFramework fw_;
00046 static gov::cca::Services services_;
00047 static gov::cca::ports::BuilderService bs_;
00048 static gov::cca::TypeMap type_map_;
00049 static gov::cca::ComponentID my_id_;
00050 static MPQC::ComponentFactory component_factory_;
00051
00052 public:
00054 static void init(std::string &args);
00056 static int initialized();
00058 static ccaffeine::AbstractFramework* get_framework();
00060 static gov::cca::Services* get_services();
00062 static gov::cca::ports::BuilderService* get_builder_service();
00064 static gov::cca::TypeMap* get_type_map();
00066 static gov::cca::ComponentID* get_component_id();
00067 };
00068
00069 }
00070
00071 #endif