/**************************************************************************** * OBIDMS_column_char header file * ****************************************************************************/ /** * @file obidsmcolumn_char.h * @author Celine Mercier * @date August 10th 2015 * @brief Header file for the functions handling OBIColumns containing data with the OBIType OBI_CHAR. */ #include #include #include "obidmscolumn.h" #include "obitypes.h" /** * @brief Sets a value in an OBIDMS column containing data with the type OBI_CHAR, using the index of the element in the line. * * @param column a pointer as returned by obi_create_column() * @warning Pointers returned by obi_open_column() don't allow writing. * * @param line_nb the number of the line where the value should be set * * @param element_idx the index of the element that should be set in the line * * @param value the value that should be set * * @return an integer value indicating the success of the operation. * * @retvalue 0 on success * @retvalue -1 on failure and the `obi_errno` variable is set. * * @since July 2015 * @author Celine Mercier (celine.mercier@metabarcoding.org) */ int obi_column_set_obichar_with_elt_idx(OBIDMS_column_p column, size_t line_nb, size_t element_idx, obichar_t* value); /** * @brief Recovers a value in an OBIDMS column containing data with the type OBI_CHAR. * * @param column a pointer as returned by obi_create_column() * * @param line_nb the number of the line where the value should be recovered * * @param element_idx the index of the element that should be recovered in the line * * @return the recovered value * * @since July 2015 * @author Celine Mercier (celine.mercier@metabarcoding.org) */ obichar_t* obi_column_get_obichar_with_elt_idx(OBIDMS_column_p column, size_t line_nb, size_t element_idx); /** * @brief Sets a value in an OBIDMS column containing data with the type OBI_CHAR, using the name of the element in the line. * * @param column a pointer as returned by obi_create_column() * @warning Pointers returned by obi_open_column() don't allow writing. * * @param line_nb the number of the line where the value should be set * * @param element_name the name of the element that should be set in the line * If empty, it is checked that there is only one element per line * * @param value the value that should be set * * @return an integer value indicating the success of the operation. * * @retvalue 0 on success * @retvalue -1 on failure and the `obi_errno` variable is set. * * @since August 2015 * @author Celine Mercier (celine.mercier@metabarcoding.org) */ int obi_column_set_obichar_with_elt_name(OBIDMS_column_p column, size_t line_nb, char* element_name, obichar_t value); /** * @brief Recovers a value in an OBIDMS column containing data with the type OBI_CHAR, using the name of the element in the line. * * @param column a pointer as returned by obi_create_column() * * @param line_nb the number of the line where the value should be recovered * * @param element_name the name of the element that should be recovered in the line * If empty, it is checked that there is only one element per line * * @return the recovered value * @retvalue NULL on failure and the `obi_errno` variable is set. TODO an other value should be chosen maybe * * @since August 2015 * @author Celine Mercier (celine.mercier@metabarcoding.org) */ obichar_t obi_column_get_obichar_with_elt_name(OBIDMS_column_p column, size_t line_nb, char* element_name);