obidmscolumn_seq.h 3.86 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
/****************************************************************************
 * OBIDMS_column_seq header file                                            *
 ****************************************************************************/

/**
 * @file obidsmcolumn_seq.h
 * @author Celine Mercier
 * @date Novemeber 18th 2015
 * @brief Header file for the functions handling OBIColumns containing data in the form of indices referring to DNA sequences.
 */


#ifndef OBIDMSCOLUMN_SEQ_H_
#define OBIDMSCOLUMN_SEQ_H_


#include <stdlib.h>
#include <stdio.h>

#include "obidmscolumn.h"
#include "obitypes.h"


/**
 * @brief Sets a value in an OBIDMS column containing data in the form of indices referring
Celine Mercier's avatar
Celine Mercier committed
26
 * to DNA sequences handled by an indexer, and using the index of the element in the column's line.
27 28 29 30 31 32 33 34 35 36 37 38 39 40 41
 *
 * @warning Pointers returned by obi_open_column() don't allow writing.
 *
 * @param column A pointer as returned by obi_create_column() or obi_clone_column().
 * @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.
 *
 * @returns An integer value indicating the success of the operation.
 * @retval 0 on success.
 * @retval -1 if an error occurred.
 *
 * @since November 2015
 * @author Celine Mercier (celine.mercier@metabarcoding.org)
 */
42
int obi_column_set_obiseq_with_elt_idx(OBIDMS_column_p column, index_t line_nb, index_t element_idx, const char* value);
43 44 45 46


/**
 * @brief Recovers a value in an OBIDMS column containing data in the form of indices referring
Celine Mercier's avatar
Celine Mercier committed
47
 * to DNA sequences handled by an indexer, and using the index of the element in the column's line.
48 49 50 51 52 53 54 55 56 57 58
 *
 * @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.
 *
 * @returns The recovered value.
 * @retval '\0' the NA value of the type if an error occurred and obi_errno is set.
 *
 * @since November 2015
 * @author Celine Mercier (celine.mercier@metabarcoding.org)
 */
59
char* obi_column_get_obiseq_with_elt_idx(OBIDMS_column_p column, index_t line_nb, index_t element_idx);
60 61 62 63


/**
 * @brief Sets a value in an OBIDMS column containing data in the form of indices referring
Celine Mercier's avatar
Celine Mercier committed
64
 * to DNA sequences handled by an indexer, using the name of the element in the line.
65 66 67 68 69 70 71 72 73 74 75 76 77 78 79
 *
 * @warning Pointers returned by obi_open_column() don't allow writing.
 *
 * @param column A pointer as returned by obi_create_column() or obi_clone_column().
 * @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.
 * @param value The value that should be set.
 *
 * @returns An integer value indicating the success of the operation.
 * @retval 0 on success.
 * @retval -1 if an error occurred.
 *
 * @since November 2015
 * @author Celine Mercier (celine.mercier@metabarcoding.org)
 */
80
int obi_column_set_obiseq_with_elt_name(OBIDMS_column_p column, index_t line_nb, const char* element_name, const char* value);
81 82 83 84


/**
 * @brief Recovers a value in an OBIDMS column containing data in the form of indices referring
Celine Mercier's avatar
Celine Mercier committed
85
 * to DNA sequences handled by an indexer, using the name of the element in the line.
86 87 88 89 90 91 92 93 94 95 96
 *
 * @param column A pointer as returned by obi_create_column() or obi_clone_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.
 *
 * @returns The recovered value.
 * @retval '\0' the NA value of the type if an error occurred and obi_errno is set.
 *
 * @since November 2015
 * @author Celine Mercier (celine.mercier@metabarcoding.org)
 */
97
char* obi_column_get_obiseq_with_elt_name(OBIDMS_column_p column, index_t line_nb, const char* element_name);
Celine Mercier's avatar
Celine Mercier committed
98 99


100 101
#endif /* OBIDMSCOLUMN_SEQ_H_ */