![]() |
Data Structures | |
struct | oyStruct_s |
Oyranos base structureAll Oyranos structures should be castable to this basic one. More... | |
struct | oyName_s |
Oyranos name structure. More... | |
struct | oyObject_s |
Oyranos structure baseThe base object of Oyranos object system is self contained. It can be handled by the belonging function set. Complex objects for user interaction should almost all be derived from this struct. The memory management can be controlled by the user and will affect internal and derived data. More... | |
Enumerations | |
enum | oyOBJECT_e { , oyOBJECT_OBJECT_S, oyOBJECT_MONITOR_S, oyOBJECT_NAMED_COLOUR_S, oyOBJECT_NAMED_COLOURS_S, oyOBJECT_PROFILE_S, oyOBJECT_PROFILE_TAG_S, oyOBJECT_PROFILES_S, oyOBJECT_OPTION_S, oyOBJECT_OPTIONS_S, oyOBJECT_REGION_S, oyOBJECT_IMAGE_S, oyOBJECT_ARRAY2D_S, oyOBJECT_COLOUR_CONVERSION_S, oyOBJECT_CONNECTOR_S, oyOBJECT_FILTER_PLUG_S, oyOBJECT_FILTER_PLUGS_S, oyOBJECT_FILTER_SOCKET_S, oyOBJECT_FILTER_S, oyOBJECT_FILTERS_S, oyOBJECT_FILTER_NODE_S, oyOBJECT_PIXEL_ACCESS_S, oyOBJECT_CONVERSION_S, oyOBJECT_CMM_HANDLE_S = 50, oyOBJECT_CMM_POINTER_S, oyOBJECT_CMM_INFO_S, oyOBJECT_CMM_API_S, oyOBJECT_CMM_API1_S, oyOBJECT_CMM_API2_S, oyOBJECT_CMM_API3_S, oyOBJECT_CMM_API4_S, oyOBJECT_CMM_API5_S, oyOBJECT_CMM_DATA_TYPES_S, oyOBJECT_CMM_API_MAX, oyOBJECT_ICON_S = 80, oyOBJECT_MODULE_S, oyOBJECT_EXTERNFUNC_S, oyOBJECT_NAME_S, oyOBJECT_COMP_S_, oyOBJECT_FILE_LIST_S_, oyOBJECT_HASH_S, oyOBJECT_HANDLE_S, oyOBJECT_STRUCT_LIST_S } |
Oyranos structure type. More... | |
enum | oyNAME_e { oyNAME_NAME, oyNAME_NICK, oyNAME_DESCRIPTION } |
describe the base types of a oyObject_s name More... | |
Functions | |
const char * | oyStruct_TypeToText (const oyStruct_s *oy_struct) |
Objects type to small string. | |
oyName_s * | oyName_new (oyObject_s object) |
oyName_s new | |
oyName_s * | oyName_copy (oyName_s *obj, oyObject_s object) |
oyName_s copy | |
int | oyName_release (oyName_s **obj) |
oyName_s deallocation | |
int | oyTextboolean_ (const char *text_a, const char *text_b, oyBOOLEAN_e type) |
test a boolean operator | |
int | oyName_boolean (oyName_s *name_a, oyName_s *name_b, oyNAME_e name_type, oyBOOLEAN_e type) |
test a boolean operator | |
oyStruct_s * | oyStructList_GetRefType (oyStructList_s *list, int pos, oyOBJECT_e type) |
oyStructList_s pointer access | |
int | oyStructList_Count (oyStructList_s *list) |
oyStructList_s count | |
int | oyName_s::oyName_releaseMembers (oyName_s **obj) |
release only members | |
const char * | oyStructList_s::oyStructList_GetID (oyStructList_s *s, int intent_spaces, uint32_t flags) |
eventually build and obtain the lists member names | |
const char * | oyStructList_s::oyStructList_GetText (oyStructList_s *s, oyNAME_e name_type, int intent_spaces, uint32_t flags) |
build and obtain the lists member names | |
int | oyStructList_s::oyStructList_Clear (oyStructList_s *s) |
release all listed objects | |
int | oyStructList_s::oyStructList_CopyFrom (oyStructList_s *list, oyStructList_s *from, oyObject_s object) |
clean "list" and copy all listed objects from "from" to "list". | |
oyObject_s | oyObject_s::oyObject_New (void) |
object management | |
oyObject_s | oyObject_s::oyObject_NewWithAllocators (oyAlloc_f allocateFunc, oyDeAlloc_f deallocateFunc) |
object management | |
oyObject_s | oyObject_s::oyObject_NewFrom (oyObject_s object) |
object management | |
oyObject_s | oyObject_s::oyObject_Copy (oyObject_s object) |
object management | |
int | oyObject_s::oyObject_Release (oyObject_s *obj) |
release an Oyranos object | |
oyObject_s | oyObject_s::oyObject_SetParent (oyObject_s o, oyOBJECT_e type, oyPointer parent) |
custom object memory managers | |
int | oyObject_s::oyObject_SetName (oyObject_s object, const char *text, oyNAME_e type) |
object naming | |
int | oyObject_s::oyObject_SetNames (oyObject_s object, const char *nick, const char *name, const char *description) |
object naming | |
const oyChar * | oyObject_s::oyObject_GetName (const oyObject_s obj, oyNAME_e type) |
object get names | |
int | oyObject_s::oyObject_Lock (oyObject_s object, const char *marker, int line) |
Lock a object. | |
int | oyObject_s::oyObject_UnLock (oyObject_s object, const char *marker, int line) |
Unlock a object. | |
int | oyObject_s::oyObject_UnSetLocking (oyObject_s object, const char *marker, int line) |
remove a object's lock pointer | |
int | oyObject_s::oyObject_GetId (oyObject_s obj) |
get the identification number of a object |
enum oyNAME_e |
describe the base types of a oyObject_s name
enum oyOBJECT_e |
Oyranos structure type.
int oyName_boolean | ( | oyName_s * | name_a, | |
oyName_s * | name_b, | |||
oyNAME_e | name_type, | |||
oyBOOLEAN_e | type | |||
) |
test a boolean operator
The function requires to receive proper object arguments and valid ranges.
References oyName_s::description, oyName_s::name, oyName_s::nick, oyBOOLEAN_UNION, oyNAME_DESCRIPTION, oyNAME_NAME, oyNAME_NICK, and oyTextboolean_().
oyName_s* oyName_copy | ( | oyName_s * | obj, | |
oyObject_s | object | |||
) |
oyName_s copy
References oyName_s::description, oyName_s::lang, oyName_s::name, oyName_s::nick, oyNAME_DESCRIPTION, oyNAME_NAME, oyName_new(), and oyNAME_NICK.
Referenced by oyName_new().
oyName_s* oyName_new | ( | oyObject_s | object | ) |
oyName_s new
References oyName_copy(), oyName_release(), oyOBJECT_NAME_S, and oyName_s::release.
Referenced by oyName_copy().
int oyName_release | ( | oyName_s ** | obj | ) |
oyName_s deallocation
Referenced by oyName_new().
int oyName_releaseMembers | ( | oyName_s ** | obj | ) | [related, inherited] |
release only members
Function oyName_releaseMembers
Useful to release the member strings but not the struct itself, which can in this case be static. Deallocation uses oyDeAllocateFunc_().
References oyName_s::description, oyName_s::name, and oyName_s::nick.
oyObject_s oyObject_Copy | ( | oyObject_s | object | ) | [related, inherited] |
object management
[in] | object | the object |
Referenced by oyArray2d_s::oyArray2d_Copy(), oyConnector_s::oyConnector_Copy(), oyConversion_s::oyConversion_Copy(), oyFilter_s::oyFilter_Copy(), oyFilterNode_s::oyFilterNode_Copy(), oyFilterPlug_s::oyFilterPlug_Copy(), oyFilterPlugs_s::oyFilterPlugs_Copy(), oyFilters_s::oyFilters_Copy(), oyFilterSocket_s::oyFilterSocket_Copy(), oyImage_s::oyImage_Copy(), oyNamedColours_s::oyNamedColours_Copy(), oyObject_s::oyObject_New(), oyObject_s::oyObject_NewWithAllocators(), oyOption_s::oyOption_Copy(), oyOptions_s::oyOptions_Copy(), oyPixelAccess_s::oyPixelAccess_Copy(), oyProfile_s::oyProfile_Copy(), oyProfile_s::oyProfile_SetChannelNames(), and oyRegion_s::oyRegion_Copy().
int oyObject_GetId | ( | oyObject_s | obj | ) | [related, inherited] |
get the identification number of a object
Function oyObject_GetId
Referenced by oyConversion_s::oyConversion_FilterAdd(), oyFilterNode_s::oyFilterNode_Create(), oyFilterPlug_s::oyFilterPlug_Callback(), oyFilterSocket_s::oyFilterSocket_Callback(), and oyMessageFunc_().
const oyChar * oyObject_GetName | ( | const oyObject_s | obj, | |
oyNAME_e | type | |||
) | [related, inherited] |
object get names
Function oyObject_GetName
[in] | obj | the object |
[in] | type | name type |
Referenced by oyFilter_s::oyFilter_GetText(), oyFilterNode_s::oyFilterNode_GetText(), oyNamedColour_s::oyNamedColour_GetName(), oyOption_s::oyOption_GetText(), oyOption_s::oyOption_GetValueText(), oyOptions_s::oyOptions_GetText(), oyProfile_s::oyProfile_GetChannelName(), oyProfile_s::oyProfile_GetID(), oyProfile_s::oyProfile_GetText(), oyStruct_GetCMMPtr_(), oyStructList_s::oyStructList_GetID(), and oyStructList_s::oyStructList_GetText().
int oyObject_Lock | ( | oyObject_s | object, | |
const char * | marker, | |||
int | line | |||
) | [related, inherited] |
Lock a object.
Function oyObject_Lock
[in] | object | the object |
[in] | marker | debug hints, e.g. __FILE__ |
[in] | line | source line number, e.g. __LINE__ |
Referenced by oyProfile_s::oyProfile_AddTag(), oyProfile_s::oyProfile_GetMem(), oyProfile_s::oyProfile_GetTagById(), oyProfile_s::oyProfile_GetTagByPos(), oyProfile_s::oyProfile_TagReleaseAt(), and oyProfileTag_s::oyProfileTag_Copy().
oyObject_s oyObject_New | ( | void | ) | [related, inherited] |
object management
References oyObject_s::oyObject_Copy(), oyOBJECT_OBJECT_S, oyObject_s::oyObject_Release(), and oyVersion().
Referenced by oyFilter_s::oyFilter_ShowConnector().
oyObject_s oyObject_NewFrom | ( | oyObject_s | object | ) | [related, inherited] |
object management
[in] | object | the object |
Referenced by oyArray2d_s::oyArray2d_New(), oyConnector_s::oyConnector_New(), oyFilterNode_s::oyFilterNode_New(), oyFilterPlug_s::oyFilterPlug_New(), oyFilterPlugs_s::oyFilterPlugs_New(), oyFilters_s::oyFilters_New(), oyFilterSocket_s::oyFilterSocket_New(), oyImage_s::oyImage_Create(), oyNamedColour_s::oyNamedColour_Create(), oyNamedColour_s::oyNamedColour_CreateWithName(), oyNamedColours_s::oyNamedColours_New(), oyOption_s::oyOption_New(), oyOptions_s::oyOptions_New(), oyProfile_s::oyProfile_GetChannelNames(), oyProfiles_s::oyProfiles_New(), and oyProfileTag_s::oyProfileTag_New().
oyObject_s oyObject_NewWithAllocators | ( | oyAlloc_f | allocateFunc, | |
oyDeAlloc_f | deallocateFunc | |||
) | [related, inherited] |
object management
References oyObject_s::oyObject_Copy(), oyOBJECT_OBJECT_S, oyObject_s::oyObject_Release(), and oyVersion().
int oyObject_Release | ( | oyObject_s * | obj | ) | [related, inherited] |
release an Oyranos object
References oyOBJECT_OBJECT_S.
Referenced by oyConnector_s::oyConnector_Release(), oyConversion_s::oyConversion_Release(), oyFilter_s::oyFilter_Release(), oyFilter_s::oyFilter_ShowConnector(), oyFilterNode_s::oyFilterNode_Release(), oyFilterPlug_s::oyFilterPlug_Release(), oyFilterPlugs_s::oyFilterPlugs_Release(), oyFilters_s::oyFilters_Release(), oyFilterSocket_s::oyFilterSocket_Release(), oyImage_s::oyImage_Release(), oyNamedColour_s::oyNamedColour_CreateWithName(), oyNamedColour_s::oyNamedColour_Release(), oyNamedColours_s::oyNamedColours_Release(), oyObject_s::oyObject_New(), oyObject_s::oyObject_NewWithAllocators(), oyOption_s::oyOption_Release(), oyOptions_s::oyOptions_Release(), oyPixelAccess_s::oyPixelAccess_Release(), oyProfile_s::oyProfile_Release(), oyProfiles_s::oyProfiles_Release(), oyProfileTag_s::oyProfileTag_Release(), and oyRegion_s::oyRegion_Release().
int oyObject_SetName | ( | oyObject_s | object, | |
const char * | text, | |||
oyNAME_e | type | |||
) | [related, inherited] |
object naming
[in] | object | the object |
[in] | text | the name to set |
[in] | type | the kind of name |
Referenced by oyFilter_s::oyFilter_GetText(), oyFilterNode_s::oyFilterNode_GetText(), oyNamedColour_s::oyNamedColour_GetName(), oyObject_s::oyObject_SetNames(), oyOption_s::oyOption_GetText(), oyOptions_s::oyOptions_GetText(), oyProfile_s::oyProfile_GetID(), oyProfile_s::oyProfile_GetText(), and oyStructList_s::oyStructList_GetText().
int oyObject_SetNames | ( | oyObject_s | object, | |
const char * | nick, | |||
const char * | name, | |||
const char * | description | |||
) | [related, inherited] |
object naming
[in] | object | the object |
[in] | nick | short name, about 1-4 letters |
[in] | name | the name should fit into usual labels |
[in] | description | the description |
References oyNAME_DESCRIPTION, oyNAME_NAME, oyNAME_NICK, and oyObject_s::oyObject_SetName().
Referenced by oyNamedColour_s::oyNamedColour_CreateWithName(), and oyProfile_s::oyProfile_GetChannelNames().
oyObject_s oyObject_SetParent | ( | oyObject_s | o, | |
oyOBJECT_e | type, | |||
oyPointer | parent | |||
) | [related, inherited] |
custom object memory managers
Normally a sub object should not know about its parent structure, but follow a hierarchical design. We break this here to allow the observation of all objects including the parents structures as a feature in oyObject_s. Then we just need a list of all oyObject_s objects and have an overview. This facility is intented to work even without debugging tools.
[in] | o | the object to modify |
[in] | type | the parents struct type |
[in] | parent | a pointer to the parent struct |
Referenced by oyArray2d_s::oyArray2d_New(), oyConnector_s::oyConnector_New(), oyFilterNode_s::oyFilterNode_New(), oyFilterPlug_s::oyFilterPlug_New(), oyFilterPlugs_s::oyFilterPlugs_New(), oyFilters_s::oyFilters_New(), oyFilterSocket_s::oyFilterSocket_New(), oyImage_s::oyImage_Create(), oyNamedColour_s::oyNamedColour_Create(), oyNamedColours_s::oyNamedColours_New(), oyOption_s::oyOption_New(), oyOptions_s::oyOptions_New(), oyProfiles_s::oyProfiles_New(), and oyProfileTag_s::oyProfileTag_New().
int oyObject_UnLock | ( | oyObject_s | object, | |
const char * | marker, | |||
int | line | |||
) | [related, inherited] |
Unlock a object.
Function oyObject_UnLock
[in] | object | the object |
[in] | marker | debug hints, e.g. __FILE__ |
[in] | line | source line number, e.g. __LINE__ |
Referenced by oyProfile_s::oyProfile_AddTag(), oyProfile_s::oyProfile_GetMem(), oyProfile_s::oyProfile_GetTagById(), oyProfile_s::oyProfile_GetTagByPos(), oyProfile_s::oyProfile_TagReleaseAt(), and oyProfileTag_s::oyProfileTag_Copy().
int oyObject_UnSetLocking | ( | oyObject_s | object, | |
const char * | marker, | |||
int | line | |||
) | [related, inherited] |
remove a object's lock pointer
Function oyObject_UnSetLocking
[in] | object | the object |
[in] | marker | debug hints, e.g. __FILE__ |
[in] | line | source line number, e.g. __LINE__ |
const char* oyStruct_TypeToText | ( | const oyStruct_s * | oy_struct | ) |
Objects type to small string.
Function oyStruct_TypeToText
References oyOBJECT_ARRAY2D_S, oyOBJECT_CMM_API1_S, oyOBJECT_CMM_API2_S, oyOBJECT_CMM_API3_S, oyOBJECT_CMM_API4_S, oyOBJECT_CMM_API5_S, oyOBJECT_CMM_API_MAX, oyOBJECT_CMM_API_S, oyOBJECT_CMM_DATA_TYPES_S, oyOBJECT_CMM_HANDLE_S, oyOBJECT_CMM_INFO_S, oyOBJECT_CMM_POINTER_S, oyOBJECT_COLOUR_CONVERSION_S, oyOBJECT_COMP_S_, oyOBJECT_CONNECTOR_S, oyOBJECT_CONVERSION_S, oyOBJECT_EXTERNFUNC_S, oyOBJECT_FILE_LIST_S_, oyOBJECT_FILTER_NODE_S, oyOBJECT_FILTER_PLUG_S, oyOBJECT_FILTER_PLUGS_S, oyOBJECT_FILTER_S, oyOBJECT_FILTER_SOCKET_S, oyOBJECT_FILTERS_S, oyOBJECT_HANDLE_S, oyOBJECT_HASH_S, oyOBJECT_ICON_S, oyOBJECT_IMAGE_S, oyOBJECT_MODULE_S, oyOBJECT_MONITOR_S, oyOBJECT_NAME_S, oyOBJECT_NAMED_COLOUR_S, oyOBJECT_NAMED_COLOURS_S, oyOBJECT_OBJECT_S, oyOBJECT_OPTION_S, oyOBJECT_OPTIONS_S, oyOBJECT_PIXEL_ACCESS_S, oyOBJECT_PROFILE_S, oyOBJECT_PROFILE_TAG_S, oyOBJECT_PROFILES_S, oyOBJECT_REGION_S, oyOBJECT_STRUCT_LIST_S, and oyStruct_s::type_.
Referenced by oyMessageFunc_().
int oyStructList_Clear | ( | oyStructList_s * | s | ) | [related, inherited] |
release all listed objects
Function oyStructList_Clear
References oyOBJECT_STRUCT_LIST_S.
Referenced by oyStructList_s::oyStructList_CopyFrom().
int oyStructList_CopyFrom | ( | oyStructList_s * | list, | |
oyStructList_s * | from, | |||
oyObject_s | object | |||
) | [related, inherited] |
clean "list" and copy all listed objects from "from" to "list".
Function oyStructList_CopyFrom
References oyStruct_s::copy, oyOBJECT_STRUCT_LIST_S, and oyStructList_s::oyStructList_Clear().
Referenced by oyOptions_s::oyOptions_DoFilter().
int oyStructList_Count | ( | oyStructList_s * | list | ) |
oyStructList_s count
References oyOBJECT_STRUCT_LIST_S.
Referenced by oyFilterPlugs_s::oyFilterPlugs_Count(), oyFilters_s::oyFilters_Count(), oyNamedColours_s::oyNamedColours_Count(), oyOption_s::oyOption_GetValueText(), oyProfile_s::oyProfile_GetMem(), oyProfile_s::oyProfile_GetTagByPos_(), oyProfile_s::oyProfile_GetTagCount(), oyProfiles_s::oyProfiles_Count(), oyProfileTag_s::oyProfileTag_GetText(), and oyStructList_s::oyStructList_GetText().
const char * oyStructList_GetID | ( | oyStructList_s * | s, | |
int | intent_spaces, | |||
uint32_t | flags | |||
) | [related, inherited] |
eventually build and obtain the lists member names
Function oyStructList_GetID
References oyNAME_NICK, oyObject_s::oyObject_GetName(), and oyStructList_s::oyStructList_GetText().
oyStruct_s* oyStructList_GetRefType | ( | oyStructList_s * | list, | |
int | pos, | |||
oyOBJECT_e | type | |||
) |
oyStructList_s pointer access
Function oyStructList_GetRefType
References oyStruct_s::oy_, oyStruct_s::release, and oyStruct_s::type_.
Referenced by oyFilterPlugs_s::oyFilterPlugs_Get(), oyFilters_s::oyFilters_Get(), oyNamedColours_s::oyNamedColours_Get(), oyOptions_s::oyOptions_Get(), and oyProfileTag_s::oyProfileTag_GetText().
const char * oyStructList_GetText | ( | oyStructList_s * | s, | |
oyNAME_e | name_type, | |||
int | intent_spaces, | |||
uint32_t | flags | |||
) | [related, inherited] |
build and obtain the lists member names
Function oyStructList_GetText
References oyStruct_s::oy_, oyObject_s::oyObject_GetName(), oyObject_s::oyObject_SetName(), and oyStructList_Count().
Referenced by oyStructList_s::oyStructList_GetID().
int oyTextboolean_ | ( | const char * | text_a, | |
const char * | text_b, | |||
oyBOOLEAN_e | type | |||
) |
test a boolean operator
The function requires to receive proper object arguments and valid ranges.
References oyBOOLEAN_DIFFERENZ, oyBOOLEAN_SUBSTRACTION, and oyBOOLEAN_UNION.
Referenced by oyName_boolean(), and oyOptions_s::oyOptions_FromBoolean().