Files
email-tracker/external/duckdb/extension/tpcds/dsdgen/dsdgen_helpers.cpp
2025-10-24 19:21:19 -05:00

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