![]() |
Oyranos Color Management System API |
generic Options More...
#include <oyOptions_s.h>
Public Member Functions | |
OYAPI oyOptions_s *OYEXPORT | oyOptions_New (oyObject_s object) |
allocate a new Options object More... | |
OYAPI oyOptions_s *OYEXPORT | oyOptions_Copy (oyOptions_s *options, oyObject_s object) |
copy or reference a Options object More... | |
OYAPI int OYEXPORT | oyOptions_Release (oyOptions_s **options) |
release and possibly deallocate a oyOptions_s object More... | |
OYAPI int OYEXPORT | oyOptions_MoveIn (oyOptions_s *list, oyOption_s **obj, int pos) |
add an element to a Options list More... | |
OYAPI int OYEXPORT | oyOptions_ReleaseAt (oyOptions_s *list, int pos) |
release a element from a Options list More... | |
OYAPI oyOption_s *OYEXPORT | oyOptions_Get (oyOptions_s *list, int pos) |
get a element of a Options list More... | |
OYAPI int OYEXPORT | oyOptions_Count (oyOptions_s *list) |
count the elements in a Options list More... | |
OYAPI int OYEXPORT | oyOptions_Clear (oyOptions_s *list) |
clear the elements in a Options list More... | |
OYAPI int OYEXPORT | oyOptions_Sort (oyOptions_s *list, int32_t *rank_list) |
sort a list according to a rank_list More... | |
oyOptions_s * | oyOptions_FromBoolean (oyOptions_s *set_a, oyOptions_s *set_b, oyBOOLEAN_e type, oyObject_s object) |
boolean operations on two sets of option More... | |
oyOptions_s * | oyOptions_FromText (const char *text, uint32_t flags, oyObject_s object) |
deserialise a text file to oyOptions_s data More... | |
int | oyOptions_Add (oyOptions_s *options, oyOption_s *option, int pos, oyObject_s object) |
add a element to a Options list More... | |
int | oyOptions_Set (oyOptions_s *options, oyOption_s *option, int pos, oyObject_s object) |
set a element in a Options list More... | |
int | oyOptions_SetOpts (oyOptions_s *list, oyOptions_s *add) |
set options in a Options list More... | |
int | oyOptions_AppendOpts (oyOptions_s *list, oyOptions_s *append) |
Basic reference options from one list into an other. More... | |
int | oyOptions_CopyFrom (oyOptions_s **list, oyOptions_s *from, oyBOOLEAN_e type, oyFILTER_REG_e fields, oyObject_s object) |
copy from one option set to an other option set More... | |
int | oyOptions_Filter (oyOptions_s **add_list, int32_t *count, uint32_t flags, oyBOOLEAN_e type, const char *registration, oyOptions_s *src_list) |
filter options More... | |
const char * | oyOptions_GetText (oyOptions_s *options, oyNAME_e type) |
dump options to text More... | |
int | oyOptions_CountType (oyOptions_s *options, const char *registration, oyOBJECT_e type) |
search for options with special attributes More... | |
oyOption_s * | oyOptions_Find (oyOptions_s *options, const char *registration) |
search for a certain option key More... | |
const char * | oyOptions_FindString (oyOptions_s *options, const char *registration, const char *value) |
search for a certain option key and possibly value More... | |
int | oyOptions_SetFromText (oyOptions_s **obj, const char *registration, const char *value, uint32_t flags) |
change a value More... | |
int | oyOptions_FindInt (oyOptions_s *options, const char *registration, int pos, int32_t *result) |
get a value More... | |
int | oyOptions_SetFromInt (oyOptions_s **obj, const char *registration, int32_t value, int pos, uint32_t flags) |
change a value More... | |
int | oyOptions_FindDouble (oyOptions_s *options, const char *registration, int pos, double *result) |
get a value More... | |
int | oyOptions_SetFromDouble (oyOptions_s **obj, const char *registration, double value, int pos, uint32_t flags) |
change a value More... | |
oyStruct_s * | oyOptions_GetType (oyOptions_s *options, int pos, const char *registration, oyOBJECT_e type) |
select from options with special attribute More... | |
int | oyOptions_MoveInStruct (oyOptions_s **obj, const char *registration, oyStruct_s **oy_struct, uint32_t flags) |
change a value More... | |
int | oyOptions_SetFromData (oyOptions_s **options, const char *registration, oyPointer ptr, size_t size, uint32_t flags) |
set a data blob or plain pointer More... | |
int | oyOptions_FindData (oyOptions_s *options, const char *registration, oyPointer *result, size_t *size, oyAlloc_f allocateFunc) |
get a value More... | |
int | oyOptions_SetSource (oyOptions_s *options, oyOPTIONSOURCE_e source) |
set source attribute More... | |
OYAPI int OYEXPORT | oyOptions_ObserverAdd (oyOptions_s *object, oyStruct_s *observer, oyStruct_s *user_data, oyObserver_Signal_f signalFunc) |
observe options and its elements More... | |
OYAPI int OYEXPORT | oyOptions_ObserversDisable (oyOptions_s *object) |
disable signaling More... | |
OYAPI int OYEXPORT | oyOptions_ObserversEnable (oyOptions_s *object) |
disable signaling More... | |
OYAPI int OYEXPORT | oyOptions_SetDriverContext (oyOptions_s **options, oyPointer driver_context, const char *driver_context_type, size_t driver_context_size, oyObject_s object) |
set a device option from a given external context More... | |
oyOptions_s * | oyOptions_ForFilter (const char *registration, const char *cmm, uint32_t flags, oyObject_s object) |
provide Oyranos behaviour settings More... | |
oyOptions_s * | oyOptions_ForFilter_ (oyFilterCore_s_ *filter, uint32_t flags, oyObject_s object) |
Provide Oyranos behaviour settings. More... | |
OYAPI int OYEXPORT | oyOptions_SaveToDB (oyOptions_s *options, const char *registration, char **new_reg, oyAlloc_f allocateFunc) |
store a oyOptions_s in DB More... | |
int | oyOptions_DoFilter (oyOptions_s *opts, uint32_t flags, const char *filter_type) |
filter the options More... | |
![]() | |
const char * | oyStruct_GetTextFromModule (oyStruct_s *obj, oyNAME_e name_type, uint32_t flags) |
get object infos from a module More... | |
const char * | oyStruct_GetText (oyStruct_s *obj, oyNAME_e name_type, uint32_t flags) |
get a text dump More... | |
Data Fields | |
const oyOBJECT_e | type_ |
Type of object. More... | |
oyStruct_Copy_f | copy |
Copy function. More... | |
oyStruct_Release_f | release |
Release function. More... | |
oyObject_s | oy_ |
Oyranos internal object. More... | |
![]() | |
const oyOBJECT_e | type_ |
Type of object. More... | |
oyStruct_Copy_f | copy |
Copy function. More... | |
oyStruct_Release_f | release |
Release function. More... | |
oyObject_s | oy_ |
Oyranos internal object. More... | |
generic Options
Options can be any flag or rendering intent and other informations needed to configure a process. The object contains a list of oyOption_s objects.
int oyOptions_Add | ( | oyOptions_s * | options, |
oyOption_s * | option, | ||
int | pos, | ||
oyObject_s | object | ||
) |
add a element to a Options list
Function oyOptions_Add
We must not add any already listed option. (oyFILTER_REG_TOP)
Adding a new element without any checks is as simple as following code:
* tmp = oyOption_Copy( option, object ); * oyOptions_MoveIn( options, &tmp, -1 );
References oyFILTER_REG_TOP, oyFilterRegistrationToText(), oyOption_s::oyOption_Copy(), oyOption_s::oyOption_Release(), oyOptions_Count(), oyOptions_Get(), and oyOptions_MoveIn().
Referenced by oyConfigs_s::oyConfigs_FromDB(), oyOptions_DoFilter(), oyOptions_Filter(), and oyOptions_FromBoolean().
int oyOptions_AppendOpts | ( | oyOptions_s * | list, |
oyOptions_s * | append | ||
) |
Basic reference options from one list into an other.
Function oyOptions_AppendOpts
References oyOptions_Count(), oyOptions_Get(), and oyOptions_MoveIn().
Referenced by oyConfig_s::oyConfig_Count(), oyConfig_s::oyConfig_Get(), oyConfig_s::oyConfig_SaveToDB(), and oyOptions_ForFilter_().
OYAPI int OYEXPORT oyOptions_Clear | ( | oyOptions_s * | list | ) |
clear the elements in a Options list
Function oyOptions_Clear
[in,out] | list | the list |
References oyOBJECT_OPTIONS_S, and oyStructList_s::oyStructList_Clear().
Referenced by oyConfig_s::oyConfig_GetOptions(), oyOptions_DoFilter(), and oyProfiles_s::oyProfiles_DeviceRank().
OYAPI oyOptions_s *OYEXPORT oyOptions_Copy | ( | oyOptions_s * | options, |
oyObject_s | object | ||
) |
copy or reference a Options object
Function oyOptions_Copy
The function is for copying and for referencing. The reference is the most often used way, which saves resourcs and time.
[in] | options | Options struct object |
object | NULL - means reference, the optional object triggers a real copy |
References oyOBJECT_OPTIONS_S.
Referenced by oyConfig_s::oyConfig_GetFromDB(), oyConfigs_s::oyConfigs_FromDeviceClass(), oyFilterCore_s::oyFilterCore_NewWith(), oyFilterGraph_s::oyFilterGraph_GetOptions(), oyFilterNode_s::oyFilterNode_GetOptions(), oyFilterNode_s::oyFilterNode_GetTags(), oyImage_s::oyImage_GetTags(), oyImage_s::oyImage_SetCritical(), oyOptions_FromBoolean(), and oyPixelAccess_s::oyPixelAccess_GetRequestQueue().
int oyOptions_CopyFrom | ( | oyOptions_s ** | list, |
oyOptions_s * | from, | ||
oyBOOLEAN_e | type, | ||
oyFILTER_REG_e | fields, | ||
oyObject_s | object | ||
) |
copy from one option set to an other option set
Function oyOptions_CopyFrom
[out] | list | target |
[in] | from | source |
type | boolean operation before copy | |
fields | registration fields of each option | |
object | the optional object |
References oyBOOLEAN_DIFFERENZ, oyBOOLEAN_INTERSECTION, oyBOOLEAN_SUBSTRACTION, oyBOOLEAN_UNION, oyFilterRegistrationMatch(), oyFilterRegistrationToText(), oyOption_s::oyOption_Release(), oyOptions_Count(), oyOptions_Get(), oyOptions_MoveIn(), oyOptions_New(), oyOptions_Release(), oyOptions_SetOpts(), oyStructList_s::oyStructList_New(), and oyStructList_s::oyStructList_Release().
Referenced by oyFilterPlug_s::oyFilterPlug_ResolveImage(), and oyImage_ToFile().
OYAPI int OYEXPORT oyOptions_Count | ( | oyOptions_s * | list | ) |
count the elements in a Options list
Function oyOptions_Count
[in,out] | list | the list |
References oyOBJECT_OPTIONS_S, and oyStructList_s::oyStructList_Count().
Referenced by oyConfig_s::oyConfig_Compare(), oyConfig_s::oyConfig_Count(), oyDeviceGetInfo(), oyDeviceSetProfile(), oyDeviceToJSON(), oyOptions_Add(), oyOptions_AppendOpts(), oyOptions_CopyFrom(), oyOptions_CountType(), oyOptions_DoFilter(), oyOptions_Filter(), oyOptions_Find(), oyOptions_ForFilter_(), oyOptions_FromBoolean(), oyOptions_GetText(), oyOptions_GetType(), oyOptions_ObserversDisable(), oyOptions_ObserversEnable(), oyOptions_SaveToDB(), oyOptions_Set(), oyOptions_SetOpts(), oyOptions_SetSource(), and oyProfiles_s::oyProfiles_DeviceRank().
int oyOptions_CountType | ( | oyOptions_s * | options, |
const char * | registration, | ||
oyOBJECT_e | type | ||
) |
search for options with special attributes
Function oyOptions_CountType
References oyFilterRegistrationMatch(), oyOBJECT_OPTIONS_S, oyOption_s::oyOption_Release(), oyOptions_Count(), oyOptions_Get(), and oyVAL_STRUCT.
int oyOptions_DoFilter | ( | oyOptions_s * | opts, |
uint32_t | flags, | ||
const char * | filter_type | ||
) |
filter the options
Function oyOptions_DoFilter
The returned options are read in from the Elektra settings and if thats not available from the inbuild defaults. The later can explicitely selected with oyOPTIONSOURCE_FILTER passed as flags argument. advanced options can be filtered out by adding oyOPTIONATTRIBUTE_ADVANCED.
Modules should handle the advanced options as well but shall normally not act upon them. The convention to set them zero, keeps them inactive.
On the front end side the CMM cache has to include them, as they will influence the hash sum generation. The question arrises, whether to include these options marked as non visible along the path or require the CMM cache code to check each time for them on cache lookup. The oyOption_s::flags is already in place. So we use it and do inclusion. Front end options can be filtered as they do not affect the CMM cache.
opts | the options | |
[in] | flags | for inbuild defaults | oyOPTIONSOURCE_FILTER; for options marked as advanced | oyOPTIONATTRIBUTE_ADVANCED; for front end options | oyOPTIONATTRIBUTE_FRONT |
filter_type | the type level from a registration |
References oy_, oyFILTER_REG_TYPE, oyFilterRegistrationToText(), oyNAME_DESCRIPTION, oyOption_s::oyOption_GetRegistration(), oyOption_s::oyOption_GetText(), oyOption_s::oyOption_Release(), oyOption_s::oyOption_SetFromText(), oyOPTIONATTRIBUTE_ADVANCED, oyOPTIONATTRIBUTE_EDIT, oyOPTIONATTRIBUTE_FRONT, oyOptions_Add(), oyOptions_Clear(), oyOptions_Count(), oyOptions_Get(), oyOptions_MoveIn(), oyOptions_New(), oyOptions_Release(), oyOPTIONSOURCE_FILTER, and oyOPTIONSOURCE_USER.
Referenced by oyOptions_ForFilter_().
int oyOptions_Filter | ( | oyOptions_s ** | add_list, |
int32_t * | count, | ||
uint32_t | flags, | ||
oyBOOLEAN_e | type, | ||
const char * | registration, | ||
oyOptions_s * | src_list | ||
) |
filter options
Function oyOptions_Filter
Each option added to the add_list is a cheaply linked one.
[out] | add_list | the options list to add to |
[out] | count | the number of matching options |
[in] | flags | for inbuild defaults | oyOPTIONSOURCE_FILTER |
[in] | type | support are oyBOOLEAN_INTERSECTION and oyBOOLEAN_DIFFERENZ |
[in] | registration | a registration which shall be matched |
[in] | src_list | the options to select from |
References oyBOOLEAN_DIFFERENZ, oyBOOLEAN_INTERSECTION, oyBOOLEAN_UNION, oyFilterRegistrationMatch(), oyOBJECT_OPTIONS_S, oyOption_s::oyOption_Release(), oyOptions_Add(), oyOptions_Count(), oyOptions_Get(), oyOptions_New(), oyOPTIONSOURCE_DATA, oyOPTIONSOURCE_FILTER, and oyOPTIONSOURCE_USER.
Referenced by oyFilterNode_s::oyFilterNode_GetOptions(), oyFilterPlug_s::oyFilterPlug_ResolveImage(), and oyPixelAccess_s::oyPixelAccess_Create().
oyOption_s * oyOptions_Find | ( | oyOptions_s * | options, |
const char * | registration | ||
) |
search for a certain option key
Function oyOptions_Find
This function returns the first found option for a given key. The key is represented by a registrations option level.
options | set of options |
registration | registration or key |
References oyFilterRegistrationMatch(), oyOBJECT_OPTIONS_S, oyOption_s::oyOption_Release(), oyOptions_Count(), and oyOptions_Get().
Referenced by oyConfig_s::oyConfig_Find(), oyConfig_s::oyConfig_Has(), oyDeviceSelectSimiliar(), oyFilterGraph_s::oyFilterGraph_PrepareContexts(), oyOptions_FindData(), oyOptions_FindDouble(), oyOptions_FindInt(), oyOptions_FindString(), oyOptions_MoveInStruct(), oyOptions_SetFromData(), oyOptions_SetFromDouble(), oyOptions_SetFromInt(), oyOptions_SetFromText(), oyObserver_s::oyStruct_DisableSignalSend(), oyObserver_s::oyStruct_EnableSignalSend(), and oyObserver_s::oyStruct_ObserverSignal().
int oyOptions_FindData | ( | oyOptions_s * | options, |
const char * | registration, | ||
oyPointer * | result, | ||
size_t * | size, | ||
oyAlloc_f | allocateFunc | ||
) |
get a value
Function oyOptions_FindData
options | the options list or set to manipulate | |
registration | the options registration name, e.g. "org/my_org/openicc/my_app/my_opt" or simply a key, e.g. "my_opt" | |
[out] | result | the data; With size == zero, the pointer is static and owned somewhere else. With size set, the pointer is owned my
|
[out] | size | the data size |
[in] | allocateFunc | user allocator |
References oyOBJECT_OPTION_S, oyOBJECT_OPTIONS_S, oyOption_s::oyOption_GetData(), oyOption_s::oyOption_Release(), oyOptions_Find(), oyVAL_STRUCT, and oyOption_s::type_.
int oyOptions_FindDouble | ( | oyOptions_s * | options, |
const char * | registration, | ||
int | pos, | ||
double * | result | ||
) |
get a value
Function oyOptions_FindDouble
options | the options list or set to manipulate |
registration | the options registration name, e.g. "org/my_org/openicc/my_app/my_opt" or simple key, e.g. "my_opt" |
result | the double |
pos | the value position |
References oyOBJECT_OPTION_S, oyOBJECT_OPTIONS_S, oyOption_s::oyOption_GetValueDouble(), oyOption_s::oyOption_Release(), oyOptions_Find(), and oyVAL_DOUBLE.
int oyOptions_FindInt | ( | oyOptions_s * | options, |
const char * | registration, | ||
int | pos, | ||
int32_t * | result | ||
) |
get a value
Function oyOptions_FindInt
options | the options list or set to manipulate |
registration | the options registration name, e.g. "org/my_org/openicc/my_app/my_opt" or simple key, e.g. "my_opt" |
pos | the values position in a possible list |
result | the integer |
References oyOBJECT_OPTION_S, oyOBJECT_OPTIONS_S, oyOption_s::oyOption_GetValueInt(), oyOption_s::oyOption_Release(), oyOptions_Find(), and oyOption_s::type_.
Referenced by oyDeviceFromJSON(), oyFilterPlug_s::oyFilterPlug_ResolveImage(), and oyConfig_s::oyRankMapFromJSON().
const char * oyOptions_FindString | ( | oyOptions_s * | options, |
const char * | registration, | ||
const char * | value | ||
) |
search for a certain option key and possibly value
Function oyOptions_FindString
This function returns the first found value for a given key. The key is represented by the oyOption_s::name::nick The returned string is valid along the livetime of the particular option value.
References oyOBJECT_OPTION_S, oyOBJECT_OPTIONS_S, oyOption_s::oyOption_Release(), and oyOptions_Find().
Referenced by oyConfig_s::oyConfig_FindString(), oyConfigs_s::oyConfigs_FromDeviceClass(), oyConversion_s::oyConversion_RunPixels(), oyDeviceFromJSON(), oyDeviceGetInfo(), oyDeviceToJSON(), oyFilterGraph_s::oyFilterGraph_CountNodes(), oyFilterGraph_s::oyFilterGraph_GetNode(), oyProfile_s::oyProfile_AddDevice(), oyProfile_FromTaxiDB(), oyProfile_s::oyProfile_GetFileName(), oyProfile_Install(), and oyConfig_s::oyRankMapToJSON().
oyOptions_s * oyOptions_ForFilter | ( | const char * | registration, |
const char * | cmm, | ||
uint32_t | flags, | ||
oyObject_s | object | ||
) |
provide Oyranos behaviour settings
Function oyOptions_ForFilter
The returned options are read in from the Elektra settings and if thats not available from the inbuild defaults. The later can explicitely selected with oyOPTIONSOURCE_FILTER passed as flags argument. The key names map to the registration and XML syntax.
To obtain all advanced front end options from a meta module use:
* flags = oyOPTIONATTRIBUTE_ADVANCED | * oyOPTIONATTRIBUTE_FRONT | * OY_SELECT_COMMON
[in] | registration | the filter registration to search for |
[in] | cmm | a CMM to match |
[in] | flags | for inbuild defaults | oyOPTIONSOURCE_FILTER; for options marked as advanced | oyOPTIONATTRIBUTE_ADVANCED | OY_SELECT_FILTER | OY_SELECT_COMMON |
object | the optional object |
References oyFilterCore_s::oyFilterCore_Release(), oyOBJECT_CMM_API4_S, and oyOptions_ForFilter_().
oyOptions_s * oyOptions_ForFilter_ | ( | oyFilterCore_s_ * | filter, |
uint32_t | flags, | ||
oyObject_s | object | ||
) |
Provide Oyranos behaviour settings.
Function oyOptions_ForFilter_
References OY_SELECT_COMMON, OY_SELECT_FILTER, oyBOOLEAN_UNION, oyCMMapiFilters_s::oyCMMapiFilters_Count(), oyCMMapiFilters_s::oyCMMapiFilters_Get(), oyCMMapiFilters_s::oyCMMapiFilters_Release(), oyFILTER_REG_MODE_STRIP_IMPLEMENTATION_ATTR, oyFILTER_REG_TYPE, oyFilterRegistrationMatch(), oyFilterRegistrationToText(), oyOBJECT_CMM_API9_S, oyOption_s::oyOption_Release(), oyOptions_AppendOpts(), oyOptions_Count(), oyOptions_DoFilter(), oyOptions_FromBoolean(), oyOptions_FromText(), oyOptions_Get(), oyOptions_New(), oyOptions_Release(), and oyOPTIONSOURCE_FILTER.
Referenced by oyFilterNode_s::oyFilterNode_GetOptions(), and oyOptions_ForFilter().
oyOptions_s * oyOptions_FromBoolean | ( | oyOptions_s * | set_a, |
oyOptions_s * | set_b, | ||
oyBOOLEAN_e | type, | ||
oyObject_s | object | ||
) |
boolean operations on two sets of option
Function oyOptions_FromBoolean
[in] | set_a | options set A |
[in] | set_b | options set B |
[in] | type | the operation to perform |
object | the optional object |
References oyBOOLEAN_DIFFERENZ, oyBOOLEAN_UNION, oyFILTER_REG_OPTION, oyFilterRegistrationToText(), oyOption_s::oyOption_Release(), oyOptions_Add(), oyOptions_Copy(), oyOptions_Count(), oyOptions_Get(), and oyOptions_New().
Referenced by oyOptions_ForFilter_().
oyOptions_s * oyOptions_FromText | ( | const char * | text, |
uint32_t | flags, | ||
oyObject_s | object | ||
) |
deserialise a text file to oyOptions_s data
Function oyOptions_FromText
This function is based on libxml2.
[in] | text | the text to process |
[in] | flags | for future use |
object | the optional object |
References oyOptions_New().
Referenced by oyOptions_ForFilter_(), and oyOptions_SetDriverContext().
OYAPI oyOption_s *OYEXPORT oyOptions_Get | ( | oyOptions_s * | list, |
int | pos | ||
) |
get a element of a Options list
Function oyOptions_Get
[in,out] | list | the list |
pos | position |
References oyOBJECT_OPTION_S, oyOBJECT_OPTIONS_S, and oyStructList_s::oyStructList_GetRefType().
Referenced by oyConfig_s::oyConfig_Compare(), oyConfig_s::oyConfig_EraseFromDB(), oyConfig_s::oyConfig_Get(), oyDeviceGetInfo(), oyDeviceProfileFromDB(), oyDeviceSetProfile(), oyDeviceToJSON(), oyOptions_Add(), oyOptions_AppendOpts(), oyOptions_CopyFrom(), oyOptions_CountType(), oyOptions_DoFilter(), oyOptions_Filter(), oyOptions_Find(), oyOptions_ForFilter_(), oyOptions_FromBoolean(), oyOptions_GetText(), oyOptions_GetType(), oyOptions_ObserversDisable(), oyOptions_ObserversEnable(), oyOptions_SaveToDB(), oyOptions_Set(), oyOptions_SetOpts(), and oyOptions_SetSource().
const char * oyOptions_GetText | ( | oyOptions_s * | options, |
oyNAME_e | type | ||
) |
dump options to text
Function oyOptions_GetText
The type argument should select the following string in return:
[in,out] | options | the option |
type | oyNAME_NICK is equal to an ID |
References oy_, oyOption_s::oy_, oyNAME_DESCRIPTION, oyNAME_NAME, oyOption_s::oyOption_GetText(), oyOption_s::oyOption_GetValueText(), oyOption_s::oyOption_Release(), oyOptions_Count(), oyOptions_Get(), and oyVAL_STRUCT.
Referenced by oyContextCollectData_(), oyFilterGraph_s::oyFilterGraph_ToText(), and oyOption_s::oyOption_GetText().
oyStruct_s * oyOptions_GetType | ( | oyOptions_s * | options, |
int | pos, | ||
const char * | registration, | ||
oyOBJECT_e | type | ||
) |
select from options with special attribute
Function oyOptions_GetType
References oyStruct_s::copy, oyFilterRegistrationMatch(), oyOBJECT_OPTIONS_S, oyOption_s::oyOption_Release(), oyOptions_Count(), oyOptions_Get(), and oyVAL_STRUCT.
Referenced by oyImage_s::oyImage_CreateForDisplay().
OYAPI int OYEXPORT oyOptions_MoveIn | ( | oyOptions_s * | list, |
oyOption_s ** | obj, | ||
int | pos | ||
) |
add an element to a Options list
Function oyOptions_MoveIn
[in] | list | list |
[in,out] | obj | list element |
pos | position |
References oyOBJECT_OPTION_S, oyOBJECT_OPTIONS_S, oyObserver_s::oyStruct_IsObserved(), oyObserver_s::oyStruct_ObserverAdd(), oyStructList_s::oyStructList_Create(), oyStructList_s::oyStructList_MoveIn(), and oyOption_s::type_.
Referenced by oyOptions_Add(), oyOptions_AppendOpts(), oyOptions_CopyFrom(), oyOptions_DoFilter(), oyOptions_MoveInStruct(), oyOptions_Set(), oyOptions_SetDriverContext(), oyOptions_SetFromData(), oyOptions_SetFromDouble(), oyOptions_SetFromInt(), and oyOptions_SetFromText().
int oyOptions_MoveInStruct | ( | oyOptions_s ** | obj, |
const char * | registration, | ||
oyStruct_s ** | oy_struct, | ||
uint32_t | flags | ||
) |
change a value
Function oyOptions_MoveInStruct
obj | the options list or set to manipulate |
registration | the options registration name, e.g. "org/my_org/openicc/my_app/my_opt" |
oy_struct | the Oyranos style object to move in |
flags | can be OY_CREATE_NEW for a new option, or OY_ADD_ALWAYS |
Add a new option if the OY_CREATE_NEW flag is present.
References oyOBJECT_OPTIONS_S, oyOption_s::oyOption_FromRegistration(), oyOption_s::oyOption_MoveInStruct(), oyOption_s::oyOption_Release(), oyOptions_Find(), oyOptions_MoveIn(), oyOptions_New(), and type_.
Referenced by oyImage_s::oyImage_Create().
OYAPI oyOptions_s *OYEXPORT oyOptions_New | ( | oyObject_s | object | ) |
allocate a new Options object
Function oyOptions_New
References oyOBJECT_OBJECT_S.
Referenced by oyConfig_s::oyConfig_ClearDBData(), oyConfig_s::oyConfig_Count(), oyConfig_s::oyConfig_Get(), oyConfig_s::oyConfig_GetOptions(), oyConfig_s::oyConfig_SaveToDB(), oyDeviceAskProfile2(), oyDeviceBackendCall(), oyDeviceGet(), oyDeviceGetInfo(), oyDeviceSetup(), oyDevicesGet(), oyFilterNode_s::oyFilterNode_GetOptions(), oyFilterNode_s::oyFilterNode_GetTags(), oyOptions_CopyFrom(), oyOptions_DoFilter(), oyOptions_Filter(), oyOptions_ForFilter_(), oyOptions_FromBoolean(), oyOptions_FromText(), oyOptions_MoveInStruct(), oyOptions_SetDriverContext(), oyOptions_SetFromData(), oyOptions_SetFromDouble(), oyOptions_SetFromInt(), and oyOptions_SetFromText().
OYAPI int OYEXPORT oyOptions_ObserverAdd | ( | oyOptions_s * | object, |
oyStruct_s * | observer, | ||
oyStruct_s * | user_data, | ||
oyObserver_Signal_f | signalFunc | ||
) |
observe options and its elements
Function oyOptions_ObserverAdd
[in] | object | the options |
[in] | observer | the in observation intereressted object |
[in] | user_data | additional static informations |
[in] | signalFunc | the signal handler |
References oyObserver_s::oyStruct_ObserverAdd(), and oyStructList_s::oyStructList_ObserverAdd().
Referenced by oyFilterNode_s::oyFilterNode_GetOptions().
OYAPI int OYEXPORT oyOptions_ObserversDisable | ( | oyOptions_s * | object | ) |
disable signaling
Function oyOptions_ObserversDisable
[in] | object | the options |
References oyOption_s::oyOption_Release(), oyOptions_Count(), oyOptions_Get(), and oyObserver_s::oyStruct_DisableSignalSend().
OYAPI int OYEXPORT oyOptions_ObserversEnable | ( | oyOptions_s * | object | ) |
disable signaling
Function oyOptions_ObserversEnable
[in] | object | the options |
References oyOption_s::oyOption_Release(), oyOptions_Count(), oyOptions_Get(), and oyObserver_s::oyStruct_EnableSignalSend().
OYAPI int OYEXPORT oyOptions_Release | ( | oyOptions_s ** | options | ) |
release and possibly deallocate a oyOptions_s object
Function oyOptions_Release
[in,out] | options | Options struct object |
References oyOBJECT_OPTIONS_S.
Referenced by oyConfig_s::oyConfig_ClearDBData(), oyConfig_s::oyConfig_Count(), oyConfig_s::oyConfig_Get(), oyConfig_s::oyConfig_GetBestMatchFromTaxiDB(), oyConfig_s::oyConfig_GetFromDB(), oyConfig_s::oyConfig_SaveToDB(), oyConfigs_s::oyConfigs_FromDeviceClass(), oyConversion_CreateFromImage(), oyDeviceAskProfile2(), oyDeviceBackendCall(), oyDeviceGetInfo(), oyDeviceProfileFromDB(), oyDeviceSelectSimiliar(), oyDeviceSetProfile(), oyDeviceSetup(), oyDevicesFromTaxiDB(), oyDeviceUnset(), oyFilterGraph_s::oyFilterGraph_ToText(), oyFilterNode_s::oyFilterNode_GetUi(), oyFilterPlug_s::oyFilterPlug_ResolveImage(), oyImage_FromFile(), oyImage_s::oyImage_SetCritical(), oyImage_ToFile(), oyOptions_CopyFrom(), oyOptions_DoFilter(), oyOptions_ForFilter_(), and oyOptions_SetDriverContext().
OYAPI int OYEXPORT oyOptions_ReleaseAt | ( | oyOptions_s * | list, |
int | pos | ||
) |
release a element from a Options list
Function oyOptions_ReleaseAt
[in,out] | list | the list |
pos | position |
References oyOBJECT_OPTIONS_S, oyStructList_s::oyStructList_GetParentObjType(), and oyStructList_s::oyStructList_ReleaseAt().
OYAPI int OYEXPORT oyOptions_SaveToDB | ( | oyOptions_s * | options, |
const char * | registration, | ||
char ** | new_reg, | ||
oyAlloc_f | allocateFunc | ||
) |
store a oyOptions_s in DB
Function oyOptions_SaveToDB
[in] | options | the options |
[in] | registration | the registration |
[out] | new_reg | the new registration; optional |
[in] | alloc | the user allocator for new_reg; optional |
References OY_SLASH, oyFilterRegistrationToText(), oyOBJECT_BLOB_S, oyOption_s::oyOption_GetRegistration(), oyOption_s::oyOption_GetValueString(), oyOption_s::oyOption_Release(), oyOptions_Count(), oyOptions_Get(), oyVAL_STRUCT, and oyOption_s::type_.
Referenced by oyConfig_s::oyConfig_SaveToDB().
int oyOptions_Set | ( | oyOptions_s * | options, |
oyOption_s * | option, | ||
int | pos, | ||
oyObject_s | object | ||
) |
set a element in a Options list
Function oyOptions_Set
Already listed options are replaced by the new option. A option new to the existing set will be referenced if no object argument is given.
Adding a new element without any checks is as simple as following code:
* tmp = oyOption_Copy( option, object ); * oyOptions_MoveIn( options, &tmp, -1 );
References oyFilterRegistrationMatchKey(), oyOption_s::oyOption_Copy(), oyOption_s::oyOption_Release(), oyOptions_Count(), oyOptions_Get(), and oyOptions_MoveIn().
Referenced by oyDeviceSetup(), and oyOptions_SetOpts().
OYAPI int OYEXPORT oyOptions_SetDriverContext | ( | oyOptions_s ** | options, |
oyPointer | driver_context, | ||
const char * | driver_context_type, | ||
size_t | driver_context_size, | ||
oyObject_s | object | ||
) |
set a device option from a given external context
Function oyOptions_SetDriverContext
The options will be created in case they do not exist. The driver_context_type accepts "xml". The data in driver_context will be converted to a options set following the Oyranos options XML schemes with the help oyOptions_FromText(). Any other pointer will be converted to a oyBlob_s object. The name of that object will come from driver_context_type.
[in,out] | options | options for the device |
[in] | driver_context | driver context |
[in] | driver_context_type | "xml" or something related to the driver |
[in] | driver_context_size | size of driver_context |
[in] | object | a optional object |
References oyFilterRegistrationMatch(), oyOBJECT_OPTIONS_S, oyOption_s::oyOption_FromRegistration(), oyOption_s::oyOption_MoveInStruct(), oyOption_s::oyOption_SetFromData(), oyOptions_FromText(), oyOptions_MoveIn(), oyOptions_New(), and oyOptions_Release().
int oyOptions_SetFromData | ( | oyOptions_s ** | options, |
const char * | registration, | ||
oyPointer | ptr, | ||
size_t | size, | ||
uint32_t | flags | ||
) |
set a data blob or plain pointer
Function oyOptions_SetFromData
options | the options list or set to manipulate |
registration | the options registration name, e.g. "org/my_org/openicc/my_app/my_opt" |
ptr | the pointer |
size | the pointer size |
flags | can be OY_CREATE_NEW for a new option, or OY_ADD_ALWAYS |
Add a new option if the OY_CREATE_NEW flag is present.
References oyOBJECT_OPTIONS_S, oyOption_s::oyOption_FromRegistration(), oyOption_s::oyOption_Release(), oyOption_s::oyOption_SetFromData(), oyOptions_Find(), oyOptions_MoveIn(), and oyOptions_New().
int oyOptions_SetFromDouble | ( | oyOptions_s ** | obj, |
const char * | registration, | ||
double | value, | ||
int | pos, | ||
uint32_t | flags | ||
) |
change a value
Function oyOptions_SetFromDouble
obj | the options list or set to manipulate |
registration | the options registration name, e.g. "org/my_org/openicc/my_app/my_opt" |
value | the value to set |
pos | the position in a value list |
flags | can be OY_CREATE_NEW for a new option, OY_STRING_LIST or OY_ADD_ALWAYS |
Add a new option if the OY_CREATE_NEW flag is present.
References oyOBJECT_OPTIONS_S, oyOption_s::oyOption_FromRegistration(), oyOption_s::oyOption_Release(), oyOption_s::oyOption_SetFromDouble(), oyOptions_Find(), oyOptions_MoveIn(), and oyOptions_New().
int oyOptions_SetFromInt | ( | oyOptions_s ** | obj, |
const char * | registration, | ||
int32_t | value, | ||
int | pos, | ||
uint32_t | flags | ||
) |
change a value
Function oyOptions_SetFromInt
obj | the options list or set to manipulate |
registration | the options registration name, e.g. "org/my_org/openicc/my_app/my_opt" |
value | the value to set |
pos | the position in a value list |
flags | can be OY_CREATE_NEW for a new option, OY_STRING_LIST or OY_ADD_ALWAYS |
Add a new option if the OY_CREATE_NEW flag is present.
References oyOBJECT_OPTIONS_S, oyOption_s::oyOption_FromRegistration(), oyOption_s::oyOption_Release(), oyOption_s::oyOption_SetFromInt(), oyOptions_Find(), oyOptions_MoveIn(), and oyOptions_New().
Referenced by oyDevicesFromTaxiDB().
int oyOptions_SetFromText | ( | oyOptions_s ** | obj, |
const char * | registration, | ||
const char * | value, | ||
uint32_t | flags | ||
) |
change a value
Function oyOptions_SetFromText
obj | the options list or set to manipulate |
registration | the options registration name, e.g. "org/my_org/openicc/my_app/my_opt" |
value | the value to set |
flags | can be OY_CREATE_NEW for a new option, OY_STRING_LIST or OY_ADD_ALWAYS |
Add a new option if the OY_CREATE_NEW flag is present.
Flags are passed on to oyOption_SetFromText, e.g. OY_STRING_LIST.
References oyOBJECT_OPTIONS_S, oyOption_s::oyOption_FromRegistration(), oyOption_s::oyOption_Release(), oyOption_s::oyOption_SetFromText(), oyOptions_Find(), oyOptions_MoveIn(), oyOptions_New(), and type_.
Referenced by oyConfig_s::oyConfig_AddDBData(), oyDeviceGetInfo(), oyDeviceProfileFromDB(), oyDeviceSelectSimiliar(), oyDeviceSetProfile(), oyDeviceSetup(), oyDevicesFromTaxiDB(), oyDeviceUnset(), oyImage_s::oyImage_CreateForDisplay(), oyImage_FromFile(), oyImage_ToFile(), and oyProfile_s::oyProfile_GetFileName().
int oyOptions_SetOpts | ( | oyOptions_s * | list, |
oyOptions_s * | add | ||
) |
set options in a Options list
Function oyOptions_SetOpts
Already listed options are replaced by the new options.
References oy_, oyOption_s::oyOption_Release(), oyOptions_Count(), oyOptions_Get(), and oyOptions_Set().
Referenced by oyOptions_CopyFrom().
int oyOptions_SetSource | ( | oyOptions_s * | options, |
oyOPTIONSOURCE_e | source | ||
) |
set source attribute
Function oyOptions_SetSource
options | the options list or set to manipulate |
source | the options new source attribute |
References oyOBJECT_OPTIONS_S, oyOption_s::oyOption_Release(), oyOptions_Count(), oyOptions_Get(), and type_.
Referenced by oyConfigs_s::oyConfigs_FromDomain(), and oyProfile_s::oyProfile_GetDevice().
OYAPI int OYEXPORT oyOptions_Sort | ( | oyOptions_s * | list, |
int32_t * | rank_list | ||
) |
sort a list according to a rank_list
Function oyOptions_Sort
References oyOBJECT_OPTIONS_S, and oyStructList_s::oyStructList_Sort().
oyStruct_Copy_f oyOptions_s::copy |
Copy function.
oyObject_s oyOptions_s::oy_ |
Oyranos internal object.
Features name and hash. Do not change during object life time.
Referenced by oyImage_s::oyImage_SetCritical(), oyOptions_DoFilter(), oyOptions_GetText(), and oyOptions_SetOpts().
oyStruct_Release_f oyOptions_s::release |
Release function.
const oyOBJECT_e oyOptions_s::type_ |
Type of object.
The struct type tells Oyranos how to interprete hidden fields.
Referenced by oyOptions_MoveInStruct(), oyOptions_SetFromText(), and oyOptions_SetSource().