|
|
typedef double | ccs_float_t |
| | A CCS floating point type.
|
| |
|
typedef int64_t | ccs_int_t |
| | A CCS integer type.
|
| |
|
typedef int32_t | ccs_bool_t |
| | A CCS boolean type.
|
| |
|
typedef uint32_t | ccs_hash_t |
| | A CCS hashing value type.
|
| |
|
typedef struct _ccs_rng_s * | ccs_rng_t |
| | An opaque type defining a CCS random generator.
|
| |
|
typedef struct _ccs_distribution_s * | ccs_distribution_t |
| | An opaque type defining a CCS distribution.
|
| |
|
typedef struct _ccs_parameter_s * | ccs_parameter_t |
| | An opaque type defining a CCS parameter.
|
| |
|
typedef struct _ccs_expression_s * | ccs_expression_t |
| | An opaque type defining a CCS expression.
|
| |
|
typedef struct _ccs_context_s * | ccs_context_t |
| | An opaque type defining a CCS context.
|
| |
|
typedef struct _ccs_distribution_space_s * | ccs_distribution_space_t |
| | An opaque type defining a CCS distribution space.
|
| |
|
typedef struct _ccs_search_space_s * | ccs_search_space_t |
| | An opaque type defining a CCS search space.
|
| |
|
typedef struct _ccs_configuration_space_s * | ccs_configuration_space_t |
| | An opaque type defining a CCS configuration space.
|
| |
|
typedef struct _ccs_binding_s * | ccs_binding_t |
| | An opaque type defining a CCS binding.
|
| |
|
typedef struct _ccs_search_configuration_s * | ccs_search_configuration_t |
| | An opaque type defining a CCS search space configuration.
|
| |
|
typedef struct _ccs_configuration_s * | ccs_configuration_t |
| | An opaque type defining a CCS configuration.
|
| |
|
typedef struct _ccs_feature_space_s * | ccs_feature_space_t |
| | An opaque type defining a CCS feature space.
|
| |
|
typedef struct _ccs_features_s * | ccs_features_t |
| | An opaque type defining a CCS features.
|
| |
|
typedef struct _ccs_objective_space_s * | ccs_objective_space_t |
| | An opaque type defining a CCS objective space.
|
| |
|
typedef struct _ccs_evaluation_s * | ccs_evaluation_t |
| | An opaque type defining a CCS evaluation.
|
| |
|
typedef struct _ccs_tuner_s * | ccs_tuner_t |
| | An opaque type defining a CCS tuner.
|
| |
|
typedef struct _ccs_map_s * | ccs_map_t |
| | An opaque type defining a CCS key-value store.
|
| |
|
typedef struct _ccs_error_stack_s * | ccs_error_stack_t |
| | An opaque type defining a CCS error stack.
|
| |
|
typedef struct _ccs_tree_s * | ccs_tree_t |
| | An opaque type defining a CCS tree.
|
| |
|
typedef struct _ccs_tree_space_s * | ccs_tree_space_t |
| | An opaque type defining a CCS tree space.
|
| |
|
typedef struct _ccs_tree_configuration_s * | ccs_tree_configuration_t |
| | An opaque type defining a CCS tree space configuration.
|
| |
|
typedef enum ccs_result_e | ccs_result_t |
| | A commodity type to represent CCS errors and returned by most functions.
|
| |
|
typedef int32_t | ccs_evaluation_result_t |
| | The result type used for evaluations.
|
| |
|
typedef enum ccs_object_type_e | ccs_object_type_t |
| | A commodity type to represent CCS object types.
|
| |
|
typedef enum ccs_data_type_e | ccs_data_type_t |
| | A commodity type to represent CCS data types.
|
| |
|
typedef enum ccs_datum_flag_e | ccs_datum_flag_t |
| | A commodity type to represent CCS datum flags.
|
| |
|
typedef uint32_t | ccs_datum_flags_t |
| | A type representing the combination of flags that can be attached to a CCS datum.
|
| |
|
typedef enum ccs_numeric_type_e | ccs_numeric_type_t |
| | A commodity type to represent CCS numeric types.
|
| |
|
typedef void * | ccs_object_t |
| | A type representing a generic CCS object.
|
| |
|
typedef union ccs_numeric_u | ccs_numeric_t |
| | A commodity type to represent CCS numeric values.
|
| |
|
typedef union ccs_value_u | ccs_value_t |
| | A commodity type to represent a CCS datum value.
|
| |
|
typedef struct ccs_datum_s | ccs_datum_t |
| | A commodity type to represent a CCS datum.
|
| |
|
typedef void(* | ccs_object_destroy_callback_t) (ccs_object_t object, void *user_data) |
| | The type of CCS object destruction callbacks.
|
| |
| typedef ccs_result_t(* | ccs_object_serialize_callback_t) (ccs_object_t object, size_t serialize_data_size, void *serialize_data, size_t *serialize_data_size_ret, void *callback_user_data) |
| | The type of CCS object serialization callbacks.
|
| |
|
typedef enum ccs_serialize_format_e | ccs_serialize_format_t |
| | A commodity type to represent CCS serialization formats.
|
| |
|
typedef enum ccs_serialize_operation_e | ccs_serialize_operation_t |
| | A commodity type to represent CCS serialization operations.
|
| |
|
typedef enum ccs_deserialize_operation_e | ccs_deserialize_operation_t |
| | A commodity type to represent CCS deserialization operations.
|
| |
|
typedef enum ccs_serialize_option_e | ccs_serialize_option_t |
| | A commodity type to represent CCS serialization options.
|
| |
| typedef ccs_result_t(* | ccs_object_deserialize_data_callback_t) (ccs_object_t object, size_t serialize_data_size, const char *serialize_data, void *callback_user_data) |
| | The type of CCS object data deserialization callbacks.
|
| |
| typedef ccs_result_t(* | ccs_object_deserialize_vector_callback_t) (ccs_object_type_t type, const char *name, void *callback_user_data, void **vector_ret, void **data_ret) |
| | The type of CCS user object vector deserialization callbacks.
|
| |
|
typedef enum ccs_deserialize_option_e | ccs_deserialize_option_t |
| | A commodity type to represent CCS deserialization options.
|
| |
|
| enum | ccs_result_e {
CCS_RESULT_MAX = 2
, CCS_RESULT_AGAIN = 1
, CCS_RESULT_SUCCESS = 0
, CCS_RESULT_ERROR_INVALID_OBJECT = -1
,
CCS_RESULT_ERROR_INVALID_VALUE = -2
, CCS_RESULT_ERROR_INVALID_TYPE = -3
, CCS_RESULT_ERROR_INVALID_SCALE = -4
, CCS_RESULT_ERROR_INVALID_DISTRIBUTION = -5
,
CCS_RESULT_ERROR_INVALID_EXPRESSION = -6
, CCS_RESULT_ERROR_INVALID_PARAMETER = -7
, CCS_RESULT_ERROR_INVALID_CONFIGURATION = -8
, CCS_RESULT_ERROR_INVALID_NAME = -9
,
CCS_RESULT_ERROR_INVALID_CONDITION = -10
, CCS_RESULT_ERROR_INVALID_TUNER = -11
, CCS_RESULT_ERROR_INVALID_GRAPH = -12
, CCS_RESULT_ERROR_TYPE_NOT_COMPARABLE = -13
,
CCS_RESULT_ERROR_INVALID_BOUNDS = -14
, CCS_RESULT_ERROR_OUT_OF_BOUNDS = -15
, CCS_RESULT_ERROR_SAMPLING_UNSUCCESSFUL = -16
, CCS_RESULT_ERROR_OUT_OF_MEMORY = -17
,
CCS_RESULT_ERROR_UNSUPPORTED_OPERATION = -18
, CCS_RESULT_ERROR_INVALID_EVALUATION = -19
, CCS_RESULT_ERROR_INVALID_FEATURES = -20
, CCS_RESULT_ERROR_INVALID_FILE_PATH = -21
,
CCS_RESULT_ERROR_NOT_ENOUGH_DATA = -22
, CCS_RESULT_ERROR_DUPLICATE_HANDLE = -23
, CCS_RESULT_ERROR_INVALID_HANDLE = -24
, CCS_RESULT_ERROR_SYSTEM = -25
,
CCS_RESULT_ERROR_EXTERNAL = -26
, CCS_RESULT_ERROR_INVALID_TREE = -27
, CCS_RESULT_ERROR_INVALID_TREE_SPACE = -28
, CCS_RESULT_ERROR_INVALID_DISTRIBUTION_SPACE = -29
,
CCS_RESULT_MIN = -30
, CCS_RESULT_FORCE_32BIT = INT32_MAX
} |
| | The different possible return codes of a CCS function. More...
|
| |
| enum | ccs_object_type_e {
CCS_OBJECT_TYPE_RNG
, CCS_OBJECT_TYPE_DISTRIBUTION
, CCS_OBJECT_TYPE_PARAMETER
, CCS_OBJECT_TYPE_EXPRESSION
,
CCS_OBJECT_TYPE_CONFIGURATION_SPACE
, CCS_OBJECT_TYPE_CONFIGURATION
, CCS_OBJECT_TYPE_OBJECTIVE_SPACE
, CCS_OBJECT_TYPE_EVALUATION
,
CCS_OBJECT_TYPE_TUNER
, CCS_OBJECT_TYPE_FEATURE_SPACE
, CCS_OBJECT_TYPE_FEATURES
, CCS_OBJECT_TYPE_MAP
,
CCS_OBJECT_TYPE_ERROR_STACK
, CCS_OBJECT_TYPE_TREE
, CCS_OBJECT_TYPE_TREE_SPACE
, CCS_OBJECT_TYPE_TREE_CONFIGURATION
,
CCS_OBJECT_TYPE_DISTRIBUTION_SPACE
, CCS_OBJECT_TYPE_MAX
, CCS_OBJECT_TYPE_FORCE_32BIT = INT32_MAX
} |
| | CCS object types. More...
|
| |
| enum | ccs_data_type_e {
CCS_DATA_TYPE_NONE
, CCS_DATA_TYPE_INT
, CCS_DATA_TYPE_FLOAT
, CCS_DATA_TYPE_BOOL
,
CCS_DATA_TYPE_STRING
, CCS_DATA_TYPE_INACTIVE
, CCS_DATA_TYPE_OBJECT
, CCS_DATA_TYPE_MAX
,
CCS_DATA_TYPE_FORCE_32BIT = INT32_MAX
} |
| | CCS supported data types. More...
|
| |
| enum | ccs_datum_flag_e {
CCS_DATUM_FLAG_DEFAULT = 0
, CCS_DATUM_FLAG_TRANSIENT = (1 << 0)
, CCS_DATUM_FLAG_UNPOOLED = (1 << 1)
, CCS_DATUM_FLAG_ID = (1 << 2)
,
CCS_DATUM_FLAG_FORCE_32BIT = INT32_MAX
} |
| | Flags that can be attached to a CCS datum. More...
|
| |
| enum | ccs_numeric_type_e { CCS_NUMERIC_TYPE_INT = CCS_DATA_TYPE_INT
, CCS_NUMERIC_TYPE_FLOAT = CCS_DATA_TYPE_FLOAT
, CCS_NUMERIC_TYPE_MAX
, CCS_NUMERIC_TYPE_FORCE_32BIT = INT32_MAX
} |
| | The subset of CCS data types that represent numerical data. More...
|
| |
| enum | ccs_serialize_format_e { CCS_SERIALIZE_FORMAT_BINARY
, CCS_SERIALIZE_FORMAT_MAX
, CCS_SERIALIZE_FORMAT_FORCE_32BIT = INT32_MAX
} |
| | The different serialization formats supported by CCS. More...
|
| |
| enum | ccs_serialize_operation_e {
CCS_SERIALIZE_OPERATION_SIZE
, CCS_SERIALIZE_OPERATION_MEMORY
, CCS_SERIALIZE_OPERATION_FILE
, CCS_SERIALIZE_OPERATION_FILE_DESCRIPTOR
,
CCS_SERIALIZE_OPERATION_MAX
, CCS_SERIALIZE_OPERATION_FORCE_32BIT = INT32_MAX
} |
| | The different serialization operations supported by CCS. More...
|
| |
| enum | ccs_deserialize_operation_e {
CCS_DESERIALIZE_OPERATION_MEMORY
, CCS_DESERIALIZE_OPERATION_FILE
, CCS_DESERIALIZE_OPERATION_FILE_DESCRIPTOR
, CCS_DESERIALIZE_OPERATION_MAX
,
CCS_DESERIALIZE_OPERATION_FORCE_32BIT = INT32_MAX
} |
| | CCS deserialization operations. More...
|
| |
| enum | ccs_serialize_option_e {
CCS_SERIALIZE_OPTION_END = 0
, CCS_SERIALIZE_OPTION_NON_BLOCKING
, CCS_SERIALIZE_OPTION_CALLBACK
, CCS_SERIALIZE_OPTION_MAX
,
CCS_SERIALIZE_OPTION_FORCE_32BIT = INT32_MAX
} |
| | The different serialization options. More...
|
| |
| enum | ccs_deserialize_option_e {
CCS_DESERIALIZE_OPTION_END = 0
, CCS_DESERIALIZE_OPTION_HANDLE_MAP
, CCS_DESERIALIZE_OPTION_MAP_HANDLES
, CCS_DESERIALIZE_OPTION_VECTOR_CALLBACK
,
CCS_DESERIALIZE_OPTION_NON_BLOCKING
, CCS_DESERIALIZE_OPTION_DATA_CALLBACK
, CCS_DESERIALIZE_OPTION_MAX
, CCS_DESERIALIZE_OPTION_FORCE_32BIT = INT32_MAX
} |
| | The different deserialization options. More...
|
| |
|
| static ccs_datum_t | ccs_bool (ccs_bool_t v) |
| | A helper function to construct a datum containing a boolean value.
|
| |
| static ccs_datum_t | ccs_float (ccs_float_t v) |
| | A helper function to construct a datum containing a floating point value.
|
| |
| static ccs_datum_t | ccs_int (ccs_int_t v) |
| | A helper function to construct a datum containing an integer value.
|
| |
| static ccs_datum_t | ccs_object (ccs_object_t v) |
| | A helper function to construct a datum containing a CCS object value.
|
| |
| static ccs_datum_t | ccs_string (const char *v) |
| | A helper function to construct a datum containing a string value.
|
| |
| static int | ccs_datum_cmp (const ccs_datum_t a, const ccs_datum_t b) |
| | A helper function providing a strict ordering of datum.
|
| |
| ccs_result_t | ccs_init (void) |
| | The library initialization function.
|
| |
| ccs_result_t | ccs_fini (void) |
| | The library deinitialization function.
|
| |
| ccs_result_t | ccs_get_result_name (ccs_result_t result, const char **name) |
| | Return the string corresponding to the provided CCS result.
|
| |
| ccs_version_t | ccs_get_version (void) |
| | Query the library API version.
|
| |
| const char * | ccs_get_version_string (void) |
| | Query the library version string.
|
| |
| ccs_result_t | ccs_retain_object (ccs_object_t object) |
| | Retain a CCS object, incrementing the internal reference counting.
|
| |
| ccs_result_t | ccs_release_object (ccs_object_t object) |
| | Release a CCS object, decrementing the internal reference counting.
|
| |
| ccs_result_t | ccs_object_get_type (ccs_object_t object, ccs_object_type_t *type_ret) |
| | Get a CCS object type.
|
| |
| ccs_result_t | ccs_object_get_refcount (ccs_object_t object, int32_t *refcount_ret) |
| | Get an object internal reference counting.
|
| |
| ccs_result_t | ccs_object_set_destroy_callback (ccs_object_t object, ccs_object_destroy_callback_t callback, void *user_data) |
| | Attach a destruction callback to a CCS object.
|
| |
| ccs_result_t | ccs_object_set_user_data (ccs_object_t object, void *user_data) |
| | Set the associated user_data pointer of a CCS object.
|
| |
| ccs_result_t | ccs_object_get_user_data (ccs_object_t object, void **user_data_ret) |
| | Get the associated user_data pointer of a CCS object.
|
| |
| ccs_result_t | ccs_object_set_serialize_callback (ccs_object_t object, ccs_object_serialize_callback_t callback, void *user_data) |
| | Set the object serialization callback.
|
| |
| ccs_result_t | ccs_object_serialize (ccs_object_t object, ccs_serialize_format_t format, ccs_serialize_operation_t operation,...) |
| | Perform a serialization operation on a CCS object.
|
| |
| ccs_result_t | ccs_object_deserialize (ccs_object_t *object_ret, ccs_serialize_format_t format, ccs_deserialize_operation_t operation,...) |
| | Perform a deserialization operation and return a new CCS object.
|
| |
Base definition of CCS objects and types.