CdIt8

CdIt8 — Read and write IT8 color sample exchange files

Functions

Types and Values

#define CD_IT8_ERROR
#define CD_IT8_TYPE_ERROR
#define CD_TYPE_IT8
struct CdIt8Class
enum CdIt8Error
enum CdIt8Kind
  CdIt8

Description

This object represents .ti1 and .ti3 files which can contain raw or normalized sample data.

Functions

cd_it8_error_quark ()

GQuark
cd_it8_error_quark (void);

Returns

An error quark.

Since: 0.1.0


cd_it8_new ()

CdIt8 *
cd_it8_new (void);

Creates a new CdIt8 object.

Returns

a new CdIt8 object.

Since: 0.1.20


cd_it8_new_with_kind ()

CdIt8 *
cd_it8_new_with_kind (CdIt8Kind kind);

Creates a new CdIt8 object.

Parameters

kind

a CdIt8Kind, e.g CD_IT8_KIND_TI3.

 

Returns

a new CdIt8 object.

Since: 0.1.20


cd_it8_load_from_data ()

gboolean
cd_it8_load_from_data (CdIt8 *it8,
                       const gchar *data,
                       gsize size,
                       GError **error);

Loads a it8 file from data.

Parameters

it8

a CdIt8 instance.

 

data

text data.

[array length=size]

size

the size of text data

 

error

a GError, or NULL

 

Returns

TRUE if a valid it8 file was read.

Since: 0.1.20


cd_it8_load_from_file ()

gboolean
cd_it8_load_from_file (CdIt8 *it8,
                       GFile *file,
                       GError **error);

Loads a it8 file from disk.

Parameters

it8

a CdIt8 instance.

 

file

a GFile

 

error

a GError, or NULL

 

Returns

TRUE if a valid it8 file was read.

Since: 0.1.20


cd_it8_save_to_file ()

gboolean
cd_it8_save_to_file (CdIt8 *it8,
                     GFile *file,
                     GError **error);

Saves a it8 file to disk

Parameters

it8

a CdIt8 instance.

 

file

a GFile

 

error

a GError, or NULL

 

Returns

TRUE if it8 file was saved.

Since: 0.1.20


cd_it8_save_to_data ()

gboolean
cd_it8_save_to_data (CdIt8 *it8,
                     gchar **data,
                     gsize *size,
                     GError **error);

Saves a it8 file to an area of memory.

Parameters

it8

a CdIt8 instance.

 

data

a pointer to returned data.

[array length=size]

size

size of data

 

error

a GError, or NULL

 

Returns

TRUE if it8 file was saved.

Since: 0.1.26


cd_it8_set_kind ()

void
cd_it8_set_kind (CdIt8 *it8,
                 CdIt8Kind kind);

Set the kind of IT8 file.

Parameters

it8

a CdIt8 instance.

 

kind

a CdIt8Kind, e.g CD_IT8_KIND_TI3.

 

Since: 0.1.20


cd_it8_set_normalized ()

void
cd_it8_set_normalized (CdIt8 *it8,
                       gboolean normalized);

Sets if normalized data should be written to the .it8 file.

Parameters

it8

a CdIt8 instance.

 

normalized

If the data is normalized

 

Since: 0.1.20


cd_it8_set_originator ()

void
cd_it8_set_originator (CdIt8 *it8,
                       const gchar *originator);

Sets the program name that created the .it8 file

Parameters

it8

a CdIt8 instance.

 

originator

the program name, e.g. "gcm-calibrate"

 

Since: 0.1.20


cd_it8_set_title ()

void
cd_it8_set_title (CdIt8 *it8,
                  const gchar *title);

Sets the display name for the file.

Parameters

it8

a CdIt8 instance.

 

title

the title name, e.g. "Factory calibration"

 

Since: 0.1.20


cd_it8_set_spectral ()

void
cd_it8_set_spectral (CdIt8 *it8,
                     gboolean spectral);

Sets if spectral data should be written to the .it8 file.

Parameters

it8

a CdIt8 instance.

 

spectral

If the data is spectral

 

Since: 0.1.20


cd_it8_set_instrument ()

void
cd_it8_set_instrument (CdIt8 *it8,
                       const gchar *instrument);

Sets the measuring instrument that created the .it8 file

Parameters

it8

a CdIt8 instance.

 

instrument

the instruemnt name, e.g. "huey"

 

Since: 0.1.20


cd_it8_set_reference ()

void
cd_it8_set_reference (CdIt8 *it8,
                      const gchar *reference);

Sets the reference that as used to create the .it8 reference

Parameters

it8

a CdIt8 instance.

 

reference

the instruemnt name, e.g. "colormunki"

 

Since: 0.1.20


cd_it8_set_enable_created ()

void
cd_it8_set_enable_created (CdIt8 *it8,
                           gboolean enable_created);

Sets if the 'CREATED' attribute should be written. This is mainly useful in the self test programs where we want to string compare the output data with a known reference.

Parameters

it8

a CdIt8 instance.

 

enable_created

Is 'CREATED' should be written

 

Since: 0.1.33


cd_it8_add_data ()

void
cd_it8_add_data (CdIt8 *it8,
                 const CdColorRGB *rgb,
                 const CdColorXYZ *xyz);

Adds a reading to this object. If either of rgb or xyz is NULL then a black reading (0.0, 0.0, 0.0) is added instead.

Parameters

it8

a CdIt8 instance.

 

rgb

a CdColorRGB, or NULL

 

xyz

a CdColorXYZ, or NULL

 

Since: 0.1.20


cd_it8_add_option ()

void
cd_it8_add_option (CdIt8 *it8,
                   const gchar *option);

Sets any extra options that have to be set in the CCMX file

Parameters

it8

a CdIt8 instance.

 

option

A IT8 option, e.g. "TYPE_LCD"

 

Since: 0.1.20


cd_it8_set_matrix ()

void
cd_it8_set_matrix (CdIt8 *it8,
                   const CdMat3x3 *matrix);

Set the calibration matrix in the it8 file.

Parameters

it8

a CdIt8 instance.

 

matrix

a CdMat3x3.

 

Since: 0.1.20


cd_it8_set_spectrum_array ()

void
cd_it8_set_spectrum_array (CdIt8 *it8,
                           GPtrArray *data);

Set the spectral data

Parameters

it8

a CdIt8 instance.

 

data

the spectral data.

[transfer container][element-type CdSpectrum]

Since: 1.1.6


cd_it8_add_spectrum ()

void
cd_it8_add_spectrum (CdIt8 *it8,
                     CdSpectrum *spectrum);

Adds a spectrum to the spectral array.

Parameters

it8

a CdIt8 instance.

 

spectrum

the spectral data

 

Since: 1.1.6


cd_it8_get_matrix ()

const CdMat3x3 *
cd_it8_get_matrix (CdIt8 *it8);

Gets the calibration matrix in the it8 file.

Parameters

it8

a CdIt8 instance.

 

Returns

a CdMat3x3.

Since: 0.1.20


cd_it8_get_kind ()

CdIt8Kind
cd_it8_get_kind (CdIt8 *it8);

Gets the kind of IT8 file.

Parameters

it8

a CdIt8 instance.

 

Returns

a CdIt8Kind, e.g CD_IT8_KIND_TI3.

Since: 0.1.20


cd_it8_get_normalized ()

gboolean
cd_it8_get_normalized (CdIt8 *it8);

Gets if the data should be written normlaised to y=100.

Parameters

it8

a CdIt8 instance.

 

Returns

TRUE if the data should be normalised.

Since: 0.1.20


cd_it8_get_originator ()

const gchar *
cd_it8_get_originator (CdIt8 *it8);

Gets the file orginator.

Parameters

it8

a CdIt8 instance.

 

Returns

The originator, or NULL if unset

Since: 0.1.20


cd_it8_get_title ()

const gchar *
cd_it8_get_title (CdIt8 *it8);

Gets the file title.

Parameters

it8

a CdIt8 instance.

 

Returns

The title, or NULL if unset

Since: 0.1.20


cd_it8_get_spectral ()

gboolean
cd_it8_get_spectral (CdIt8 *it8);

Gets if the data is spectral or XYZ.

Parameters

it8

a CdIt8 instance.

 

Returns

TRUE if the data is in spectral bands.

Since: 0.1.20


cd_it8_get_instrument ()

const gchar *
cd_it8_get_instrument (CdIt8 *it8);

Gets the instrument the file was created by.

Parameters

it8

a CdIt8 instance.

 

Returns

The instrument, or NULL if unset

Since: 0.1.20


cd_it8_get_reference ()

const gchar *
cd_it8_get_reference (CdIt8 *it8);

Gets the reference the file was created against.

Parameters

it8

a CdIt8 instance.

 

Returns

The reference, or NULL if unset

Since: 0.1.20


cd_it8_get_enable_created ()

gboolean
cd_it8_get_enable_created (CdIt8 *it8);

Gets if the 'CREATED' attribute will be written. This is typically only set in the self test programs.

Parameters

it8

a CdIt8 instance.

 

Returns

The reference, or NULL if unset

Since: 0.1.33


cd_it8_get_data_size ()

guint
cd_it8_get_data_size (CdIt8 *it8);

Gets the data size.

Parameters

it8

a CdIt8 instance.

 

Returns

The number of RGB-XYZ readings in this object.

Since: 0.1.20


cd_it8_get_data_item ()

gboolean
cd_it8_get_data_item (CdIt8 *it8,
                      guint idx,
                      CdColorRGB *rgb,
                      CdColorXYZ *xyz);

Gets a specific bit of data from this object. The returned data are absolute readings and are not normalised.

Parameters

it8

a CdIt8 instance.

 

idx

the item index

 

rgb

the returned RGB value

 

xyz

the returned XYZ value

 

Returns

TRUE if the index existed.

Since: 0.1.20


cd_it8_get_spectrum_array ()

GPtrArray *
cd_it8_get_spectrum_array (CdIt8 *it8);

Gets the spectral data of IT8 file.

Parameters

it8

a CdIt8 instance.

 

Returns

spectral data.

[transfer container][element-type CdSpectrum]

Since: 1.1.6


cd_it8_get_spectrum_by_id ()

CdSpectrum *
cd_it8_get_spectrum_by_id (CdIt8 *it8,
                           const gchar *id);

Gets a specific spectrum in an IT8 file.

Parameters

it8

a CdIt8 instance.

 

id

the spectrum ID value

 

Returns

spectrum, or NULL.

[transfer none]

Since: 1.1.6


cd_it8_has_option ()

gboolean
cd_it8_has_option (CdIt8 *it8,
                   const gchar *option);

Finds an option in the file.

Parameters

it8

a CdIt8 instance.

 

option

a option, e.g. "TYPE_CRT"

 

Returns

TRUE if the option is set

Since: 0.1.20


cd_it8_get_xyz_for_rgb ()

CdColorXYZ *
cd_it8_get_xyz_for_rgb (CdIt8 *it8,
                        gdouble R,
                        gdouble G,
                        gdouble B,
                        gdouble delta);

Gets the XYZ value for a specific RGB value.

Parameters

it8

a CdIt8 instance.

 

R

the red value

 

G

the green value

 

B

the blue value

 

delta

the smallest difference between colors, e.g. 0.01f

 

Returns

A CdColorXYZ, or NULL if the sample does not exist.

[transfer none]

Since: 1.2.6

Types and Values

CD_IT8_ERROR

#define CD_IT8_ERROR		(cd_it8_error_quark ())

CD_IT8_TYPE_ERROR

#define CD_IT8_TYPE_ERROR (cd_it8_error_get_type ())

CD_TYPE_IT8

#define CD_TYPE_IT8 (cd_it8_get_type ())

struct CdIt8Class

struct CdIt8Class {
	GObjectClass		 parent_class;
};

enum CdIt8Error

Errors that can be thrown

Members

CD_IT8_ERROR_FAILED

the transaction failed for an unknown reason

 

CD_IT8_ERROR_INVALID_FORMAT

   

CD_IT8_ERROR_UNKNOWN_KIND

   

enum CdIt8Kind

The kind of IT8 file.

Members

CD_IT8_KIND_UNKNOWN

   

CD_IT8_KIND_TI1

   

CD_IT8_KIND_TI3

   

CD_IT8_KIND_CCMX

   

CD_IT8_KIND_CAL

   

CD_IT8_KIND_CCSS

   

CD_IT8_KIND_SPECT

   

CD_IT8_KIND_CMF

   

CdIt8

typedef struct _CdIt8 CdIt8;