/*
**    Name: ODBC.h
**
**    Date: Thu Jan 17 13:03:19 2002
**
*/

#ifndef ODBC_H
#define ODBC_H

#include <stdlib.h>
#include "kernel.h"
#include "rmamem.h"
#include "ODBCLib.h"

extern ODBCLibQueryType odbcquerytype;

extern int odbcparameter_index;

_kernel_oserror *user_init(char *cmd_fail,int podule_base,void *pw);
_kernel_oserror *cmd_handler(char *arg_string,int argc,int cmd_no,void *pw);
void sc_handler(int service_number, _kernel_swi_regs *r,void *pw);
_kernel_oserror *user_final(int fatal,int podule,void *pw);
_kernel_oserror *swi_handler(int swi_no,int *r,void *pw);

void initialise_parameters(int type,int subtype);
void store_parameter(int parameter,ODBCLibParameterType type,int size);
void store_bound_parameter(int stmt,int parameter,int size);
void fetch_parameter(int parameter,ODBCLibParameterType type,int size);
void free_parameters(void);
void free_bound_parameters(int stmt);
void copy_bound_parameters(int stmt);
int data_size(int type,int size);

/*
#define rmamalloc(sz) rmadebugmalloc(__LINE__,__FILE__,sz)
#define rmafree(p) {rmadebugfree(__LINE__,__FILE__,p);p=NULL;}
#define rmacalloc(n,s) rmadebugcalloc(__LINE__,__FILE__,n,s)
#define rmarealloc(p,s) rmadebugrealloc(__LINE__,__FILE__,p,s)
*/

#endif
