Column-oriented GPU-accelerated Database Management System
CoGaDB
/home/sebastian/gpudbms/trunk/cogadb/include/core/runtime_configuration.hpp
Go to the documentation of this file.
00001 #pragma once
00002 
00003 #include <string>
00004 #include <core/global_definitions.hpp>
00005 #include <hype.hpp>
00006 
00007 namespace CoGaDB{
00008 
00009 
00010         class RuntimeConfiguration{
00011                 public:
00012                 static RuntimeConfiguration& instance();
00013                 void setPathToDatabase(const std::string&);
00014                 const std::string& getPathToDatabase();
00015                 void setParallelizationModeForTwoPhasePhysicalOptimizationQueryPlans(ParallelizationMode);
00016                 ParallelizationMode getParallelizationModeForTwoPhasePhysicalOptimizationQueryPlans() const;
00017                 bool getPrintQueryPlan() const;                
00018                 void setPrintQueryPlan(bool);
00019         void setQueryChoppingEnabled(bool);
00020         bool isQueryChoppingEnabled() const;
00021                 bool setGlobalDeviceConstraint(const hype::DeviceConstraint&);
00022                 hype::DeviceConstraint getGlobalDeviceConstraint() const;
00023                 private:
00024                 RuntimeConfiguration();
00025                 RuntimeConfiguration(const RuntimeConfiguration&);
00026                 RuntimeConfiguration& operator=(RuntimeConfiguration&);
00027                 std::string path_to_database_;
00028                 bool print_query_plan_;
00029         bool enable_query_chopping_;
00030                 hype::DeviceConstraint global_device_constraint_;
00031                 ParallelizationMode two_phase_physical_optimization_parallelization_mode;
00032         };
00033 
00034 }; //end namespace CogaDB
00035 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines