LAMA
/home/brandes/workspace/LAMA/src/lama/DefaultHostContextManager.hpp
Go to the documentation of this file.
00001 
00033 #ifndef LAMA_DEFAULT_HOST_CONTEXT_MANAGER_HPP_
00034 #define LAMA_DEFAULT_HOST_CONTEXT_MANAGER_HPP_
00035 
00036 // for dll_import
00037 #include <lama/config.hpp>
00038 
00039 // base classes
00040 #include <lama/ContextManager.hpp>
00041 
00042 // boost
00043 #include <boost/weak_ptr.hpp>
00044 
00045 namespace lama
00046 {
00047 
00055 class LAMA_DLL_IMPORTEXPORT DefaultHostContextManager : public ContextManager
00056 {
00057 
00058 public:
00059 
00060     virtual ContextPtr getContext( int deviceNr );
00061 
00062     ~DefaultHostContextManager();
00063 
00067     static void setAsCurrent();
00068 
00069 private:
00070 
00071     DefaultHostContextManager();
00072 
00073     static boost::weak_ptr<class DefaultHostContext> contextInstance;
00074 
00075     static DefaultHostContextManager theInstance; // singleton instance of this class
00076 };
00077 
00078 }
00079 
00080 #endif // LAMA_DEFAULT_HOST_CONTEXT_MANAGER_HPP_