Skip to content
Snippets Groups Projects

ENH: Add datatypes and value classes to Extern C interface

Merged Florian Spreckelsen requested to merge f-consolidate-c into dev
All threads resolved!
Files
3
+ 36
12
@@ -325,17 +325,25 @@ int caosdb_entity_entity_get_id(caosdb_entity_entity *entity, char **out);
int caosdb_entity_entity_get_role(caosdb_entity_entity *entity, char **out);
int caosdb_entity_entity_get_name(caosdb_entity_entity *entity, char **out);
int caosdb_entity_entity_get_description(caosdb_entity_entity *entity, char **out);
int caosdb_entity_entity_get_datatype(caosdb_entity_entity *entity, char **out);
/**
* Get the name of the entity's datatype, whether it is a reference, and whether it is a list.
*/
int caosdb_entity_entity_get_datatype(caosdb_entity_entity *entity, char **name, bool *is_ref,
bool *is_list);
int caosdb_entity_entity_get_unit(caosdb_entity_entity *entity, char **out);
int caosdb_entity_entity_get_int_value(caosdb_entity_entity *entity, long *out);
int caosdb_entity_entity_get_double_value(caosdb_entity_entity *entity, double *out);
int caosdb_entity_entity_get_boolean_value(caosdb_entity_entity *entity, bool *out);
int caosdb_entity_entity_get_string_value(caosdb_entity_entity *entity, char **out);
int caosdb_entity_entity_get_int_list_value(caosdb_entity_entity *entity, long *out);
int caosdb_entity_entity_get_double_list_value(caosdb_entity_entity *entity, double *out);
int caosdb_entity_entity_get_boolean_list_value(caosdb_entity_entity *entity, bool *out);
int caosdb_entity_entity_get_string_list_value(caosdb_entity_entity *entity, char **out);
int caosdb_entity_entity_get_int_list_value_at(caosdb_entity_entity *entity, long *out,
const int index);
int caosdb_entity_entity_get_double_list_value_at(caosdb_entity_entity *entity, double *out,
const int index);
int caosdb_entity_entity_get_boolean_list_value_at(caosdb_entity_entity *entity, bool *out,
const int index);
int caosdb_entity_entity_get_string_list_value_at(caosdb_entity_entity *entity, char **out,
const int index);
int caosdb_entity_entity_get_value_list_length(caosdb_entity_entity *entity, int *out);
int caosdb_entity_entity_get_version_id(caosdb_entity_entity *entity, char **out);
@@ -359,17 +367,25 @@ int caosdb_entity_property_get_id(caosdb_entity_property *property, char **out);
int caosdb_entity_property_get_name(caosdb_entity_property *property, char **out);
int caosdb_entity_property_get_description(caosdb_entity_property *property, char **out);
int caosdb_entity_property_get_importance(caosdb_entity_property *property, char **out);
int caosdb_entity_property_get_datatype(caosdb_entity_property *property, char **out);
/**
* Get the name of the property's datatype, whether it is a reference, and whether it is a list.
*/
int caosdb_entity_property_get_datatype(caosdb_entity_property *property, char **name, bool *is_ref,
bool *is_list);
int caosdb_entity_property_get_unit(caosdb_entity_property *property, char **out);
int caosdb_entity_property_get_int_value(caosdb_entity_property *property, long *out);
int caosdb_entity_property_get_double_value(caosdb_entity_property *property, double *out);
int caosdb_entity_property_get_boolean_value(caosdb_entity_property *property, bool *out);
int caosdb_entity_property_get_string_value(caosdb_entity_property *property, char **out);
int caosdb_entity_property_get_int_list_value(caosdb_entity_property *property, long **out);
int caosdb_entity_property_get_double_list_value(caosdb_entity_property *property, double *out);
int caosdb_entity_property_get_boolean_list_value(caosdb_entity_property *property, bool *out);
int caosdb_entity_property_get_string_list_value(caosdb_entity_property *property, char ***out);
int caosdb_entity_property_get_int_list_value_at(caosdb_entity_property *property, long *out,
const int index);
int caosdb_entity_property_get_double_list_value_at(caosdb_entity_property *property, double *out,
const int index);
int caosdb_entity_property_get_boolean_list_value_at(caosdb_entity_property *property, bool *out,
const int index);
int caosdb_entity_property_get_string_list_value_at(caosdb_entity_property *property, char **out,
const int index);
int caosdb_entity_property_get_value_list_length(caosdb_entity_property *property, int *out);
int caosdb_entity_parent_get_id(caosdb_entity_parent *parent, char **out);
@@ -391,7 +407,11 @@ int caosdb_entity_delete_parent(caosdb_entity_parent *out);
int caosdb_entity_entity_set_role(caosdb_entity_entity *entity, const char *role);
int caosdb_entity_entity_set_name(caosdb_entity_entity *entity, const char *name);
int caosdb_entity_entity_set_description(caosdb_entity_entity *entity, const char *description);
int caosdb_entity_entity_set_datatype(caosdb_entity_entity *entity, const char *datatype);
/**
* Set the entity's datatype by name, and whether it is a reference or a list.
*/
int caosdb_entity_entity_set_datatype(caosdb_entity_entity *entity, const char *datatype,
const bool is_ref, const bool is_list);
int caosdb_entity_entity_set_unit(caosdb_entity_entity *entity, const char *unit);
// TODO(fspreck) replace by more specific setters
int caosdb_entity_entity_set_int_value(caosdb_entity_entity *entity, const long value);
@@ -415,7 +435,11 @@ int caosdb_entity_entity_remove_property(caosdb_entity_entity *entity, int index
int caosdb_entity_property_set_id(caosdb_entity_property *property, const char *id);
int caosdb_entity_property_set_name(caosdb_entity_property *property, const char *name);
int caosdb_entity_property_set_datatype(caosdb_entity_property *property, const char *datatype);
/**
* Set the property's datatype by name, and whether it is a reference or a list.
*/
int caosdb_entity_property_set_datatype(caosdb_entity_property *property, const char *datatype,
const bool is_ref, const bool is_list);
int caosdb_entity_property_set_importance(caosdb_entity_property *property, const char *importance);
int caosdb_entity_property_set_unit(caosdb_entity_property *property, const char *unit);
Loading