metadata_table_private.h

Go to the documentation of this file.
00001 #ifndef __METADATA_TABLE_PRIVATE_H__
00002 #define __METADATA_TABLE_PRIVATE_H__
00003 
00004 /**
00005  * File Name  : metadata_table_private.h
00006  *
00007  * Description: Extension of metadata_table.h for libermetadb internal use only.
00008  */
00009 
00010 /*
00011  * This file is part of libermetadb.
00012  *
00013  * libermetadb is free software: you can redistribute it and/or modify
00014  * it under the terms of the GNU General Public License as published by
00015  * the Free Software Foundation, either version 2 of the License, or
00016  * (at your option) any later version.
00017  *
00018  * libermetadb is distributed in the hope that it will be useful,
00019  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00020  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00021  * GNU General Public License for more details.
00022  *
00023  * You should have received a copy of the GNU General Public License
00024  * along with this program. If not, see <http://www.gnu.org/licenses/>.
00025  */
00026 
00027 /**
00028  * Copyright (C) 2008 iRex Technologies B.V.
00029  * All rights reserved.
00030  */
00031 
00032 
00033 //----------------------------------------------------------------------------
00034 // Include Files
00035 //----------------------------------------------------------------------------
00036 
00037 #include "metadata_cell.h"
00038 #include "metadata_cell_private.h"
00039 
00040 G_BEGIN_DECLS
00041 
00042 /**---------------------------------------------------------------------------
00043  *
00044  * Name :  metadata_table_set_value
00045  *
00046  * @brief  Assign a value to a specific cell in a metadata_table
00047  *         This may move data already in the table to another memory location
00048  *
00049  * @param  thiz - the metadata_table
00050  * @param  [in] idx - cell index (0 ...)
00051  * @param  [in] value - sqlite3_value to be assigned to this cell
00052  *
00053  * @return ER_OK or error code
00054  *
00055  *--------------------------------------------------------------------------*/
00056 int metadata_table_set_value (metadata_table *thiz, const guint idx, const sqlite3_value *value);
00057 
00058 
00059 /**---------------------------------------------------------------------------
00060  *
00061  * Name :  metadata_table_set_cell
00062  *
00063  * @brief  Assign a metadata_cell value to a specific cell in a metadata_table
00064  *         This may move data already in the table to another memory location
00065  *
00066  * @param  thiz - the metadata_table
00067  * @param  [in]  idx - cell index (0 ...)
00068  * @param  [in]  value - metadata_cell whose value must be copied into the metadata_table
00069  *
00070  * @return ER_OK or error code
00071  *
00072  *--------------------------------------------------------------------------*/
00073 int metadata_table_set_cell (metadata_table *thiz, const guint idx, const metadata_cell *value);
00074 
00075 
00076 /**---------------------------------------------------------------------------
00077  *
00078  * Name :  metadata_table_set_blob_static
00079  *
00080  * @brief  Assign a blob to a specific cell in a sql table, assuming blob is static data
00081  *         BLOB = Binary Large OBject
00082  *
00083  * @param  thiz - the metadata_table
00084  * @param  [in] idx - cell index (0 ...)
00085  * @param  [in] value - binary value
00086  *                      Note: The metadata_table will NOT release this memory block
00087  *                            so caller must ensure the data stays available for
00088  *                            as long as 'thiz' metadata_table exists
00089  *                            or until a new value is assigned to the same cell.
00090  * @param  [in] len - length of value in bytes
00091  *
00092  * @return ER_OK or error code
00093  *
00094  *--------------------------------------------------------------------------*/
00095 int metadata_table_set_blob_static (metadata_table *thiz, const guint idx, const gchar *value, const guint len);
00096 
00097 
00098 G_END_DECLS
00099 
00100 #endif // __METADATA_TABLE_PRIVATE_H__
00101 
Generated by  doxygen 1.6.2-20100208