| Oyranos Colour Management System API

- Main Page
- Related Pages
- Modules
- Data Structures
- Files

- Data Structures
- Data Structure Index
- Class Hierarchy
- Data Fields

Public Member Functions | Data Fields
oyArray2d_s Struct Reference
Image Container API

2d data array More...

`#include <oyArray2d_s.h>`

Inheritance diagram for oyArray2d_s:
Collaboration diagram for oyArray2d_s:

## Public Member Functions

OYAPI oyArray2d_s *OYEXPORT | oyArray2d_New (oyObject_s object)
| allocate a new Array2d object More...
OYAPI oyArray2d_s *OYEXPORT | oyArray2d_Copy (oyArray2d_s *array2d, oyObject_s object)
| copy or reference a Array2d object More...
OYAPI int OYEXPORT | oyArray2d_Release (oyArray2d_s **array2d)
| release and possibly deallocate a oyArray2d_s object More...
OYAPI oyArray2d_s *OYEXPORT | oyArray2d_Create (oyPointer data, int width, int height, oyDATATYPE_e data_type, oyObject_s object)
| Allocate and initialise a oyArray2d_s object. More...
OYAPI oyPointer OYEXPORT | oyArray2d_GetData (oyArray2d_s *obj)
| Get the data blob. More...
OYAPI int OYEXPORT | oyArray2d_SetData (oyArray2d_s *obj, oyPointer data)
| Set the data blob and (re-)initialise the object. More...
OYAPI int OYEXPORT | oyArray2d_SetRows (oyArray2d_s *obj, oyPointer *rows, int do_copy)
| Set the data and (re-)initialise the object. More...
int | oyArray2d_SetFocus (oyArray2d_s *array, oyRectangle_s *rectangle)
| Move a arrays active area to a given rectangle. More...
OYAPI int OYEXPORT | oyArray2d_Reset (oyArray2d_s *array, int width, int height, oyDATATYPE_e data_type)
| Reinitialise Array. More...
OYAPI double OYEXPORT | oyArray2d_GetDataGeo1 (oyArray2d_s *array, int x_y_w_h)
| Get Geometry of the data rectangle. More...
OYAPI int OYEXPORT | oyArray2d_GetWidth (oyArray2d_s *array)
| Get data Width. More...
OYAPI int OYEXPORT | oyArray2d_GetHeight (oyArray2d_s *array)
| Get data Height. More...
OYAPI oyDATATYPE_e OYEXPORT | oyArray2d_GetType (oyArray2d_s *array)
| Get data Type. More...
int | oyImage_WritePPM (oyImage_s *image, const char *file_name, const char *free_text)
| implement oyCMMFilter_GetNext_f() More...
Public Member Functions inherited from oyStruct_s
const char * | oyStruct_GetText (oyStruct_s *obj, oyNAME_e name_type, uint32_t flags)
| get a text dump More...

## Data Fields

oyStruct_Copy_f | copy
oyStruct_Release_f | release
Data Fields inherited from oyStruct_s
oyStruct_Copy_f | copy
oyStruct_Release_f | release

## Detailed Description

2d data array

oyArray2d_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.

The oyArray2d_s::data pointer should be observed in order to be signaled about its invalidation.

Version
  Oyranos: 0.1.8

Since
  2008/08/23 (Oyranos: 0.1.8)

Date
  2008/08/23

## Member Function Documentation

OYAPI oyArray2d_s *OYEXPORT oyArray2d_Copy | ( | oyArray2d_s * | array2d,
|  | oyObject_s | object
| ) |  |

copy or reference a Array2d object

Function oyArray2d_Copy

The function is for copying and for referencing. The reference is the most often used way, which saves resourcs and time.

Parameters

  [in] | array2d | Array2d struct object
  | object | NULL - means reference, the optional object triggers a real copy

References oyOBJECT_ARRAY2D_S.

Referenced by oyPixelAccess_s::oyPixelAccess_GetArray(), and oyPixelAccess_s::oyPixelAccess_SetArray().

OYAPI oyArray2d_s *OYEXPORT oyArray2d_Create | ( | oyPointer | data,
|  | int | width,
|  | int | height,
|  | oyDATATYPE_e | data_type,
|  | oyObject_s | object
| ) |  |

Allocate and initialise a oyArray2d_s object.

Function oyArray2d_Create

Version
  Oyranos: 0.1.8

Since
  2008/08/23 (Oyranos: 0.1.8)

Date
  2008/08/23

References oyArray2d_SetData().

Referenced by oyImage_s::oyImage_Create(), and oyImage_s::oyImage_SetCritical().

OYAPI oyPointer OYEXPORT oyArray2d_GetData | ( | oyArray2d_s * | obj | ) |

Get the data blob.

Function oyArray2d_GetData

Parameters

  [in,out] | obj | struct object

Returns
  the data, remains in the property of the object

Version
  Oyranos: 0.5.0

Date
  2012/09/25

Since
  2012/09/25 (Oyranos: 0.5.0)

References oyOBJECT_ARRAY2D_S.

OYAPI double OYEXPORT oyArray2d_GetDataGeo1 | ( | oyArray2d_s * | array,
|  | int | x_y_w_h
| ) |  |

Get Geometry of the data rectangle.

Function oyArray2d_GetDataGeo1

The function informs about reserves and possible offsets.

Parameters

  [in,out] | array | the pixel array

Returns
  the position or dimension

Version
  Oyranos: 0.5.0

Date
  2012/10/05

Since
  2012/10/03 (Oyranos: 0.5.0)

References oyRectangle_s::oyRectangle_GetGeo1().

OYAPI int OYEXPORT oyArray2d_GetHeight | ( | oyArray2d_s * | array | ) |

Get data Height.

Function oyArray2d_GetHeight

Parameters

  [in,out] | array | the pixel array

Returns
  the height

Version
  Oyranos: 0.5.0

Date
  2012/10/05

Since
  2012/10/05 (Oyranos: 0.5.0)

OYAPI oyDATATYPE_e OYEXPORT oyArray2d_GetType | ( | oyArray2d_s * | array | ) |

Get data Type.

Function oyArray2d_GetType

Parameters

  [in,out] | array | the pixel array

Returns
  the data type

Version
  Oyranos: 0.9.0

Date
  2012/10/11

Since
  2012/10/11 (Oyranos: 0.9.0)

OYAPI int OYEXPORT oyArray2d_GetWidth | ( | oyArray2d_s * | array | ) |

Get data Width.

Function oyArray2d_GetWidth

Parameters

  [in,out] | array | the pixel array

Returns
  the width

Version
  Oyranos: 0.5.0

Date
  2012/10/05

Since
  2012/10/05 (Oyranos: 0.5.0)

OYAPI oyArray2d_s *OYEXPORT oyArray2d_New | ( | oyObject_s | object | ) |

allocate a new Array2d object

Function oyArray2d_New

References oyOBJECT_OBJECT_S.

OYAPI int OYEXPORT oyArray2d_Release | ( | oyArray2d_s ** | array2d | ) |

release and possibly deallocate a oyArray2d_s object

Function oyArray2d_Release

Parameters

  [in,out] | array2d | Array2d struct object

References oyOBJECT_ARRAY2D_S.

Referenced by oyConversion_s::oyConversion_RunPixels(), oyImage_s::oyImage_FillArray(), and oyPixelAccess_s::oyPixelAccess_SetArray().

OYAPI int OYEXPORT oyArray2d_Reset | ( | oyArray2d_s * | array,
|  | int | width,
|  | int | height,
|  | oyDATATYPE_e | data_type
| ) |  |

Reinitialise Array.

Function oyArray2d_Reset

Version
  Oyranos: 0.9.0

Since
  2012/10/20 (Oyranos: 0.9.0)

Date
  2012/10/20

References oyOBJECT_ARRAY2D_S.

Referenced by oyImage_s::oyImage_FillArray().

OYAPI int OYEXPORT oyArray2d_SetData | ( | oyArray2d_s * | obj,
|  | oyPointer | data
| ) |  |

Set the data blob and (re-)initialise the object.

Function oyArray2d_SetData

Parameters

  [in,out] | obj | struct object
  [in] | data | the data, remains in the property of the caller

Version
  Oyranos: 0.1.8

Since
  2008/08/23 (Oyranos: 0.1.8)

Date
  2008/08/23

References oyOBJECT_ARRAY2D_S.

Referenced by oyArray2d_Create().

int oyArray2d_SetFocus | ( | oyArray2d_s * | array,
|  | oyRectangle_s * | rectangle
| ) |  |

Move a arrays active area to a given rectangle.

Function oyArray2d_SetFocus

Parameters

  [in,out] | array | the pixel array
  [in] | rectangle | the new region in the array's wholes data

Returns
  error

Version
  Oyranos: 0.3.0

Since
  2011/04/19 (Oyranos: 0.3.0)

Date
  2011/04/19

Referenced by oyImage_s::oyImage_FillArray().

OYAPI int OYEXPORT oyArray2d_SetRows | ( | oyArray2d_s * | obj,
|  | oyPointer * | rows,
|  | int | do_copy
| ) |  |

Set the data and (re-)initialise the object.

Function oyArray2d_SetRows

Parameters

  [in,out] | obj | struct object
  [in] | data | the data

  [in]

  do_copy

  - 0 : take the memory as is
  - 1 : copy the memory monolithic
  - 2 : copy the memory chunky

Version
  Oyranos: 0.1.11

Since
  2010/09/07 (Oyranos: 0.1.11)

Date
  2010/09/07

References oyOBJECT_ARRAY2D_S.

int oyImage_WritePPM | ( | oyImage_s * | image,
|  | const char * | file_name,
|  | const char * | free_text
| ) |  |

implement oyCMMFilter_GetNext_f()

oyImage_WritePPM

Parameters

  [in] | image | the image
  [in] | file_name | a writeable file name, The file can contain "%d" to include the image ID.
  [in] | free_text | A text to include as comment.

Version
  Oyranos: 0.3.1

Since
  2008/10/07 (Oyranos: 0.1.8)

Date
  2011/05/12

References oyLAYOUT, oyNAME_DESCRIPTION, oyOBJECT_IMAGE_S, oyProfile_s::oyProfile_GetChannelsCount(), oyProfile_s::oyProfile_GetText(), oyToChannels_m, oyToDataType_m, and oyVersionString().

## Field Documentation

oyStruct_Copy_f oyArray2d_s::copy

copy function

oyStruct_Release_f oyArray2d_s::release

release function