49 lines
1.1 KiB
C++
49 lines
1.1 KiB
C++
#include "dsdgen_helpers.hpp"
|
|
|
|
#define DECLARER
|
|
#include "address.h"
|
|
#include "build_support.h"
|
|
#include "config.h"
|
|
#include "dist.h"
|
|
#include "genrand.h"
|
|
#include "params.h"
|
|
#include "porting.h"
|
|
#include "scaling.h"
|
|
#include "tdefs.h"
|
|
#include "init.h"
|
|
|
|
namespace tpcds {
|
|
|
|
void InitializeDSDgen(double scale) {
|
|
InitConstants::Reset();
|
|
ResetCountCount();
|
|
std::string t = std::to_string(scale);
|
|
set_str("SCALE", (char *)t.c_str()); // set SF, which also does a default init (e.g. random seed)
|
|
init_rand(); // no random numbers without this
|
|
}
|
|
|
|
ds_key_t GetRowCount(int table_id) {
|
|
return get_rowcount(table_id);
|
|
}
|
|
|
|
void ResetCountCount() {
|
|
resetCountCount();
|
|
}
|
|
|
|
tpcds_table_def GetTDefByNumber(int table_id) {
|
|
auto tdef = getSimpleTdefsByNumber(table_id);
|
|
tpcds_table_def def;
|
|
def.name = tdef->name;
|
|
def.fl_child = tdef->flags & FL_CHILD ? 1 : 0;
|
|
def.fl_small = tdef->flags & FL_SMALL ? 1 : 0;
|
|
def.first_column = tdef->nFirstColumn;
|
|
return def;
|
|
}
|
|
|
|
tpcds_builder_func GetTDefFunctionByNumber(int table_id) {
|
|
auto table_funcs = getTdefFunctionsByNumber(table_id);
|
|
return table_funcs->builder;
|
|
}
|
|
|
|
} // namespace tpcds
|