vrpRouting  0.3
time_multipliers_input.h File Reference
#include <stddef.h>
Include dependency graph for time_multipliers_input.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Typedefs

typedef struct Time_multipliers_t Time_multipliers_t
 

Functions

void get_timeMultipliers (char *sql, Time_multipliers_t **row, size_t *total_rows)
 Get the time multipliers using interval. More...
 
void get_timeMultipliers_raw (char *sql, Time_multipliers_t **row, size_t *total_rows)
 Get the time multipliers using bigint. More...
 

Typedef Documentation

◆ Time_multipliers_t

Definition at line 35 of file time_multipliers_input.h.

Function Documentation

◆ get_timeMultipliers()

void get_timeMultipliers ( char *  sql,
Time_multipliers_t **  rows,
size_t *  total_rows 
)

Get the time multipliers using interval.

Parameters
[in]sqlquery that has the following columns: start_time, multiplier
[out]rowsC Container that holds all the multipliers rows
[out]total_rowsTotal rows recieved

Definition at line 149 of file time_multipliers_input.c.

152  {
153  Column_info_t info[2];
154 
155  int i;
156  for (i = 0; i < 2; ++i) {
157  info[i].colNumber = -1;
158  info[i].type = 0;
159  info[i].strict = true;
160  info[i].eType = ANY_NUMERICAL;
161  }
162  info[0].name = "start_time";
163  info[1].name = "multiplier";
164 
165  info[0].eType = TIMESTAMP;
166 
167  get_timeMultipliersGeneral(sql, info, 0, rows, total_rows);
168 }

References ANY_NUMERICAL, Column_info_t::colNumber, Column_info_t::eType, get_timeMultipliersGeneral(), Column_info_t::name, Column_info_t::strict, TIMESTAMP, and Column_info_t::type.

Referenced by process().

◆ get_timeMultipliers_raw()

void get_timeMultipliers_raw ( char *  sql,
Time_multipliers_t **  rows,
size_t *  total_rows 
)

Get the time multipliers using bigint.

Parameters
[in]sqlquery that has the following columns: start_time, multiplier
[out]rowsC Container that holds all the multipliers
[out]total_rowsTotal rows recieved

Definition at line 175 of file time_multipliers_input.c.

178  {
179  Column_info_t info[2];
180 
181  int i;
182  for (i = 0; i < 2; ++i) {
183  info[i].colNumber = -1;
184  info[i].type = 0;
185  info[i].strict = true;
186  info[i].eType = ANY_NUMERICAL;
187  }
188  info[0].name = "start_value";
189  info[1].name = "multiplier";
190 
191  info[0].eType = ANY_INTEGER;
192 
193  get_timeMultipliersGeneral(sql, info, 1, rows, total_rows);
194 }

References ANY_INTEGER, ANY_NUMERICAL, Column_info_t::colNumber, Column_info_t::eType, get_timeMultipliersGeneral(), Column_info_t::name, Column_info_t::strict, and Column_info_t::type.

Referenced by process().

Column_info_t::colNumber
int colNumber
Definition: column_info_t.h:54
Column_info_t::strict
bool strict
Definition: column_info_t.h:56
Column_info_t::name
char * name
Definition: column_info_t.h:57
Column_info_t::eType
expectType eType
Definition: column_info_t.h:58
ANY_INTEGER
@ ANY_INTEGER
Definition: column_info_t.h:40
get_timeMultipliersGeneral
static void get_timeMultipliersGeneral(char *sql, Column_info_t *info, const int kind, Time_multipliers_t **rows, size_t *total_rows)
param [in] sql multipliers SQL param [in,out] rows catptured information param [in,...
Definition: time_multipliers_input.c:66
ANY_NUMERICAL
@ ANY_NUMERICAL
Definition: column_info_t.h:41
Column_info_t::type
uint64_t type
Definition: column_info_t.h:55
TIMESTAMP
@ TIMESTAMP
Definition: column_info_t.h:47
Column_info_t
Definition: column_info_t.h:52