GRASS GIS 8 Programmer's Manual  8.2.2dev(2023)-3d2c704037
c_list_idx.c
Go to the documentation of this file.
1 /*!
2  * \file db/dbmi_client/c_list_idx.c
3  *
4  * \brief DBMI Library (client) - list indexes
5  *
6  * (C) 1999-2008 by the GRASS Development Team
7  *
8  * This program is free software under the GNU General Public
9  * License (>=v2). Read the file COPYING that comes with GRASS
10  * for details.
11  *
12  * \author Joel Jones (CERL/UIUC), Radim Blazek
13  */
14 
15 #include <grass/dbmi.h>
16 #include "macros.h"
17 
18 /*!
19  \brief List indexes
20 
21  \param driver db driver
22  \param table_name table name
23  \param[out] list list of db indexes
24  \param[out] dbDriver number of items in the list
25 
26  \return DB_OK on success
27  \return DB_FAILED on failure
28  */
30  int *count)
31 {
32  int ret_code;
33 
34  /* start the procedure call */
35  db__set_protocol_fds(driver->send, driver->recv);
37 
38  /* arguments */
39  DB_SEND_STRING(table_name);
40 
41  /* get the return code for the procedure call */
42  DB_RECV_RETURN_CODE(&ret_code);
43 
44  if (ret_code != DB_OK)
45  return ret_code; /* ret_code SHOULD == DB_FAILED */
46 
47  /* results */
48  DB_RECV_INDEX_ARRAY(list, count);
49 
50  return DB_OK;
51 }
#define DB_RECV_INDEX_ARRAY(x, n)
Definition: macros.h:108
int count
#define DB_START_PROCEDURE_CALL(x)
Definition: macros.h:2
int db_list_indexes(dbDriver *driver, dbString *table_name, dbIndex **list, int *count)
List indexes.
Definition: c_list_idx.c:29
#define DB_RECV_RETURN_CODE(x)
Definition: macros.h:4
#define DB_SEND_STRING(x)
Definition: macros.h:12
#define DB_PROC_LIST_INDEXES
Definition: dbmi.h:62
Definition: driver.h:22
Definition: manage.h:4
FILE * recv
Definition: dbmi.h:171
void db__set_protocol_fds(FILE *, FILE *)
?
FILE * send
Definition: dbmi.h:171
#define DB_OK
Definition: dbmi.h:71