oyranos_alpha.h File Reference

#include "oyranos.h"
#include "oyranos_icc.h"
#include <inttypes.h>

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...
union  oyValue_u
 a value More...
struct  oyOption_s
 Option for rendering. More...
struct  oyOptions_s
 generic OptionsOptions can be any flag or rendering intent and other informations needed to configure a process. The object contains a list of oyOption_s objects. More...
struct  oyProfile_s
 a profile and its attributes More...
struct  oyProfiles_s
 tell about the conversion profiles More...
struct  oyProfileTag_s
 a profile constituting element More...
struct  oyRegion_s
 start with a simple rectangle More...
struct  oyArray2d_s
 2d data arrayoyArray2d_s is a in memory data view. The array2d holds pointers to lines in the original memory blob. The arrays contained in array2d represent the samples. There is no information in which order the samples appear. No pixel layout or meaning is provided. Given the coordinates x and y, a samples memory adress can be accessed by &array2d[y][x] . This adress must be converted to the data type provided in oyArray2d_s::t. More...
struct  oyImage_s
 a reference struct to gather information for image transformationas we dont target a complete imaging solution, only raster is supported More...
struct  oyConnector_s
 a filter connection description structureThis structure holds informations about the connection capabilities. It holds common structure members of oyFilterPlug_s and oyFilterSocket_s. More...
struct  oyFilterSocket_s
 a filter connection structureThe passive output version of a oyConnector_s. More...
struct  oyFilterPlug_s
 a filter connection structureThe active input version of a oyConnector_s. Each plug can connect to exact one socket. More...
struct  oyFilterPlugs_s
 a FilterPlugs list More...
struct  oyFilter_s
 a filter to manipulate a imageThis is the Oyranos filter object. Filters are categorised into basic classes of filters described in the filter_type_ member. Filters implement a container for data and options. Filters can be manipulated by changing their options or data set. More...
struct  oyFilters_s
 a Filters list More...
struct  oyFilterNode_s
 a FilterNode objectFilter nodes chain filters into a oyConversion_s graph. The filter nodes use plugs and sockets for creating connections. Each plug can only connect to one socket. More...
struct  oyPixelAccess_s
 control pixel access orderA struct to control pixel access. It is a kind of flexible pixel iterator. The order or pattern of access is defined by the array_xy and start_[x,y] variables. More...
struct  oyConversion_s
 a filter chain or graph to manipulate a imageOrder of filters matters. The processing direction is a bit like raytracing as nodes request their parent. More...
struct  oyColourConversion_s
struct  oyNamedColour_s
 colour patch with meta informationsData management on library side. User can control memory management at creation time. More...
struct  oyNamedColours_s
 list of colour patchesData management on library side. User can control memory management at creation time. More...
struct  oyIcon_s
 icon dataSince: 0.1.8 More...
struct  oyCMMInfo_s
 the CMM API resources struct to implement and set by a CMMGiven an example CMM with name "little cms", which wants to use the four-char ID 'lcms', the CMM can register itself to Oyranos as follows: The CMM module file must be named something_lcms_cmm_module_something.something . On Linux this could be "liboyranos_lcms_cmm_module.so.0.1.8". The four-chars 'lcms' must be prepended with OY_MODULE_NAME alias "_cmm_module". More...

Defines

#define OY_IN_PLANING
#define OY_NO_CACHE_READ   0x01
#define OY_TYPE_123_8   (oyChannels_m(3)|oyDataType_m(oyUINT8))

Typedefs

typedef oyPointer(* oyImage_GetPoint_f )(oyImage_s *image, int point_x, int point_y, int channel, int *is_allocated)
typedef oyPointer(* oyImage_GetLine_f )(oyImage_s *image, int line_y, int *height, int channel, int *is_allocated)
typedef oyPointer *(* oyImage_GetTile_f )(oyImage_s *image, int tile_x, int tile_y, int channel, int *is_allocated)
typedef uint32_t oyPixel_t

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...
enum  oyBOOLEAN_e { , oyBOOLEAN_SUBSTRACTION, oyBOOLEAN_DIFFERENZ, oyBOOLEAN_UNION }
 

boolean operations

More...
enum  oyVALUETYPE_e { , oyVAL_DOUBLE }
 

a value type

More...
enum  oyOPTIONSOURCE_e { oyOPTIONSOURCE_NONE = 0, oyOPTIONSOURCE_FILTER = 2, oyOPTIONSOURCE_DATA = 4, oyOPTIONSOURCE_USER = 8 }
 

a option source type

More...
enum  oyOPTIONATTRIBUTE_e { , oyOPTIONATTRIBUTE_EDIT = 32, oyOPTIONATTRIBUTE_AUTOMATIC = 64 , oyOPTIONATTRIBUTE_FRONT = 256, oyOPTIONATTRIBUTE_DOUBLE = 512 }
 

usage type

The types of Oyranos default settings to include into the options set. So proofing makes no sense for toolkit widgets, but for advanced graphics displaying. All other Oyranos behaviour settings should be taken over untouched.

More...
enum  oySIGNATURE_TYPE_e {
  oySIGNATURE_COLOUR_SPACE, oySIGNATURE_PCS, oySIGNATURE_SIZE, oySIGNATURE_CMM,
  oySIGNATURE_VERSION, oySIGNATURE_CLASS, oySIGNATURE_MAGIC, oySIGNATURE_PLATFORM,
  oySIGNATURE_OPTIONS, oySIGNATURE_MANUFACTURER, oySIGNATURE_MODEL, oySIGNATURE_INTENT,
  oySIGNATURE_CREATOR, oySIGNATURE_DATETIME_YEAR, oySIGNATURE_DATETIME_MONTH, oySIGNATURE_DATETIME_DAY,
  oySIGNATURE_DATETIME_HOURS, oySIGNATURE_DATETIME_MINUTES, oySIGNATURE_DATETIME_SECONDS
}
 

general profile infos

use for oyProfile_GetSignature

More...
enum  oyDATALAYOUT_e { ,
  oyDATALAYOUT_CURVE, oyDATALAYOUT_MATRIX, oyDATALAYOUT_TABLE, oyDATALAYOUT_ARRAY,
  oyDATALAYOUT_MAX
}
 

ideas for basic data arrangements

More...
enum  oyDATATYPE_e {
  oyUINT8, oyUINT16, oyUINT32, oyHALF,
  oyFLOAT, oyDOUBLE
}
 

basic data types for anonymous pointers

More...
enum  oyCHANNELTYPE_e { oyCHANNELTYPE_UNDEFINED }
 

channels types

More...
enum  oyFILTER_TYPE_e {
  oyFILTER_TYPE_NONE, oyFILTER_TYPE_COLOUR, oyFILTER_TYPE_TONEMAP, oyFILTER_TYPE_IMAGE,
  oyFILTER_TYPE_GENERIC
}
 

basic filter classes

These types are basic ones and valid to Oyranos and its usage as CMM framework.

More...
enum  oyFILTER_REG_e { ,
  oyFILTER_REG_TOP, oyFILTER_REG_DOMAIN, oyFILTER_REG_TYPE, oyFILTER_REG_APPLICATION,
  oyFILTER_REG_OPTION
}
enum  oyCONNECTOR_e {
  oyCONNECTOR_MANIPULATOR, oyCONNECTOR_GENERATOR, oyCONNECTOR_IMAGE, oyCONNECTOR_OBSERVER,
  oyCONNECTOR_SPLITTER, oyCONNECTOR_COMPOSITOR, oyCONNECTOR_CONVERTOR_PIXELDATA, oyCONNECTOR_CONVERTOR_PIXELDATA_LOSSY,
  oyCONNECTOR_COMPOSITOR_CHANNEL, oyCONNECTOR_SPLITTER_CHANNEL, oyCONNECTOR_ANALYSIS
}
 

basic connector classes

More...
enum  oyCONNECTOR_EVENT_e {
  oyCONNECTOR_EVENT_OK, oyCONNECTOR_EVENT_CONNECTED, oyCONNECTOR_EVENT_RELEASED, oyCONNECTOR_EVENT_IMAGE_DATA_CHANGED,
  oyCONNECTOR_EVENT_IMAGE_STORAGE_CHANGED, oyCONNECTOR_EVENT_INCOMPATIBLE_IMAGE, oyCONNECTOR_EVENT_INCOMPATIBLE_PROFILE, oyCONNECTOR_EVENT_INCOMPLETE_GRAPH
}
 

connector events types

More...
enum  oyPIXEL_ACCESS_TYPE_e { , oyPIXEL_ACCESS_POINT, oyPIXEL_ACCESS_LINE }
 

pixel access types

More...

Functions

void oyLab2XYZ (const double *CIElab, double *XYZ)
void oyXYZ2Lab (const double *XYZ, double *CIElab)
void oyCIEabsXYZ2ICCrelXYZ (const double *CIEXYZ, double *ICCXYZ, const double *XYZmin, const double *XYZmax, const double *XYZwhite)
 CIE absolute colourimetric to ICC relative colorimetric.
void oyICCXYZrel2CIEabsXYZ (const double *ICCXYZ, double *CIEXYZ, const double *XYZmin, const double *XYZmax, const double *XYZwhite)
 ICC relative colourimetric to CIE absolute colorimetric.
const char * oyStruct_TypeToText (const oyStruct_s *oy_struct)
 Objects type to small string.
oyName_soyName_new (oyObject_s object)
 oyName_s new
oyName_soyName_copy (oyName_s *obj, oyObject_s object)
 oyName_s copy
int oyName_release (oyName_s **obj)
 oyName_s deallocation
int oyName_boolean (oyName_s *name_a, oyName_s *name_b, oyNAME_e name_type, oyBOOLEAN_e type)
 test a boolean operator
oyStruct_soyStructList_GetRefType (oyStructList_s *list, int pos, oyOBJECT_e type)
 oyStructList_s pointer access
int oyStructList_Count (oyStructList_s *list)
 oyStructList_s count
const char * oyFilterTypeToText (oyFILTER_TYPE_e filter_type, oyNAME_e type)
 oyFILTER_TYPE_e to small text
char * oyFilterRegistrationToText (const char *registration, oyFILTER_REG_e type, oyAlloc_f allocateFunc)
 analyse registration string
oyFILTER_TYPE_e oyFilterRegistrationToType (const char *registration)
 analyse registration string
int oyFilterRegistrationMatch (const char *registration, const char *pattern)
 analyse registration string and compare with a given pattern
void oyCopyColour (const double *from, double *to, int n, oyProfile_s *profile_ref, int channels_n)
 copy pure colours
int oyModulRegisterXML (oyGROUP_e group, const char *xml)
char ** oyModulsGetNames (int *count, oyAlloc_f allocateFunc)
const char * oyModulGetOptions (const char *cmm, oyObject_s object)
char * oyDumpColourToCGATS (const double *channels, size_t n, oyProfile_s *prof, oyAlloc_f allocateFunc, const char *DESCRIPTOR)
 create CGATS text from double value array and a profile

Variables

const char * oy_domain_codeset
 codeset for Oyranos

Detailed Description

Oyranos is an open source Colour Management System

Copyright (C) 2004-2008 Kai-Uwe Behrmann


Define Documentation

#define OY_IN_PLANING
Date:
25. 11. 2004
#define OY_NO_CACHE_READ   0x01

oyIO_t parametric type as shorthand for IO flags

should fit into a 32bit type, usual unsigned int or uint32_t

------ W R

R no cache read
W no cache write

#define OY_TYPE_123_8   (oyChannels_m(3)|oyDataType_m(oyUINT8))

define some common types


Typedef Documentation

typedef oyPointer(* oyImage_GetLine_f)(oyImage_s *image, int line_y, int *height, int channel, int *is_allocated)

param[out] is_allocated are the lines always newly allocated

typedef oyPointer(* oyImage_GetPoint_f)(oyImage_s *image, int point_x, int point_y, int channel, int *is_allocated)

param[out] is_allocated are the points always newly allocated

typedef oyPointer*(* oyImage_GetTile_f)(oyImage_s *image, int tile_x, int tile_y, int channel, int *is_allocated)

param[out] is_allocated are the tiles always newly allocated


Enumeration Type Documentation

boolean operations

Version:
Oyranos: 0.1.8
Since:
2008/06/28 (Oyranos: 0.1.8)
Date:
2008/06/28
Enumerator:
oyBOOLEAN_SUBSTRACTION 

and, the part covered by A and B

oyBOOLEAN_DIFFERENZ 

minus, the part covered by A but not by B

oyBOOLEAN_UNION 

xor, exclusive parts of A and B or, the parts covered by A or B or both

ideas for basic data arrangements

Version:
Oyranos: 0.1.8
Since:
2008/00/00 (Oyranos: 0.1.8)
Date:
2008/00/00
Enumerator:
oyDATALAYOUT_CURVE 

equally spaced curve, oyDATALAYOUT_e[0], size[1], min[2], max[3], elements[4]...

oyDATALAYOUT_MATRIX 

3x3 matrix, oyDATALAYOUT_e[0], a1[1],a2[2],a3,b1,b2,b3,c1,c2,c3

oyDATALAYOUT_TABLE 

CLUT, oyDATALAYOUT_e[0], table dimensions in[1], array out[2], size of first dimension[3], size of second [4], ... size of last[n], elements[n+1]...

oyDATALAYOUT_ARRAY 

value array, oyDATALAYOUT_e[0], size[1], elements[2]...

oyDATALAYOUT_MAX 

paired curve, layout as in oyDATA_LAYOUT_CURVE but with elements grouped to two oyDATALAYOUT_e[0], triangle count[1], indixes[2], XYZ triples[3..5]..., followed by interwoven index + normale + midpoint triples[n]...

a option source type

Version:
Oyranos: 0.1.9
Since:
2008/11/13 (Oyranos: 0.1.9)
Date:
2008/11/27
Enumerator:
oyOPTIONSOURCE_NONE 

not clear

oyOPTIONSOURCE_FILTER 

internal defaults, e.g. filter

oyOPTIONSOURCE_DATA 

external defaults, e.g. policy

oyOPTIONSOURCE_USER 

user settings, e.g. elektra

pixel access types

Version:
Oyranos: 0.1.8
Since:
2008/00/00 (Oyranos: 0.1.8)
Date:
2008/00/00
Enumerator:
oyPIXEL_ACCESS_POINT 

dont use

oyPIXEL_ACCESS_LINE 

dont use

a value type

See also:
oyValue_u
Version:
Oyranos: 0.1.8
Since:
2008/02/16 (Oyranos: 0.1.x)
Date:
2008/02/16
Enumerator:
oyVAL_DOUBLE 

IEEE double precission floating point number


Function Documentation

const char* oyModulGetOptions ( const char *  cmm,
oyObject_s  object 
)

Query for available options for a cmm

Parameters:
[in] cmm the 4 char CMM ID or zero for the current CMM
[in] object the optional base
Returns:
available options
int oyModulRegisterXML ( oyGROUP_e  group,
const char *  xml 
)
char** oyModulsGetNames ( int *  count,
oyAlloc_f  allocateFunc 
)

obtain 4 char CMM identifiers and count of CMM's


Variable Documentation

const char* oy_domain_codeset

codeset for Oyranos

set here the codeset part, e.g. "UTF-8", which shall be delivered from Oyranos string translations. Set this variable before any call to Oyranos.


Generated on 19 Feb 2010 for Oyranos by  doxygen 1.6.1