1.5 The VDisplay class

The VDisplay class is an abstraction over the VIPS im_col_display type which gives convenient and safe representation of VIPS display profiles.

VIPS display profiles are now mostly obsolete. You’re better off using the ICC colour management VImage member functions ICC_export() and ICC_import().

1.5.1 Constructors

There are two constructors for VDisplay:

VDisplay( const char ⋆name );  
VDisplay();

The first form initialises the display from one of the standard VIPS display types. For example:

VDisplay fred( "sRGB" );  
VDisplay jim( "ultra2-20/2/98" );

Makes fred a profile for making images in sRGB format, and jim a profile representing my workstation display, as of 20/2/98. The second form of constructor makes an uninitialised display.

1.5.2 Projection functions

A set of member functions of VDisplay provide read and write access to the fields in the display.

char ⋆name();  
VDisplayType &type();  
matrix &mat();  
float &YCW();  
float &xCW();  
float &yCW();  
float &YCR();  
float &YCG();  
float &YCB();  
int &Vrwr();  
int &Vrwg();  
int &Vrwb();  
float &Y0R();  
float &Y0G();  
float &Y0B();  
float &gammaR();  
float &gammaG();  
float &gammaB();  
float &B();  
float &P();

Where VDisplayType is defined as:

enum VDisplayType {  
    BARCO,  
    DUMB  
};

And matrix is defined as:

typedef float matrix[3][3];

For a description of all the fields in a VIPS display profile, see the manual page for im_XYZ2RGB().