Column-oriented GPU-accelerated Database Management System
CoGaDB
/home/sebastian/gpudbms/trunk/cogadb/include/compression/tmp/db2/core/global_definitions.hpp
Go to the documentation of this file.
00001 
00002 #pragma once
00003 
00004 #include <vector>
00005 #include <list>
00006 #include <map>
00007 #include <string>
00008 #include <boost/any.hpp>
00009 
00010 #include <boost/shared_ptr.hpp>
00011 
00012 namespace shared_pointer_namespace = boost; //std::tr1
00013 
00014 namespace CoGaDB {
00015 
00016         enum AttributeType{INT,FLOAT,VARCHAR,BOOLEAN};
00017 
00018         enum ComputeDevice{CPU,GPU};
00019 
00020         enum AggregationMethod{SUM,MIN,MAX};
00021 
00022         enum ValueComparator{LESSER,GREATER,EQUAL};
00023 
00024         enum SortOrder{ASCENDING,DESCENDING};
00025 
00026         enum Operation{SELECTION,PROJECTION,JOIN,GROUPBY,SORT,COPY,AGGREGATION,FULL_SCAN,INDEX_SCAN};
00027 
00028         enum JoinAlgorithm{SORT_MERGE_JOIN,NESTED_LOOP_JOIN,HASH_JOIN};
00029 
00030         enum MaterializationStatus{MATERIALIZE,LOOKUP};
00031 
00032         enum ParallelizationMode{SERIAL,PARALLEL};
00033 
00034         enum DebugMode{quiet=1,
00035                 verbose=0,
00036                 debug=0,
00037                 print_time_measurement=0};
00038 
00039 
00040         //enum DebugMode{quiet=0,
00041         //                                      verbose=1,
00042         //                                      debug=1};
00043 
00044         typedef unsigned int TID;
00045 
00046         typedef std::pair<TID,TID> TID_Pair;
00047 
00048         typedef std::pair<AttributeType,std::string> Attribut;
00049 
00050         typedef std::list<Attribut> TableSchema;
00051 
00052         typedef std::vector<boost::any> Tuple;
00053 
00054         //struct Attribut {
00055 
00056         //      AttributeType type_;
00057         //      std::string name_;
00058         //      ColumnPtr column_;
00059 
00060         //      AttributeType& first;
00061         //      std::string& second;
00062 
00063         //}
00064 
00065 
00066 }; //end namespace CogaDB
00067 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines