|
ACF $AcfVersion:0$
|
Interface for tristimulus-based color specifications. More...
#include <ITristimulusSpecification.h>
Public Member Functions | |
| virtual std::shared_ptr< IIlluminant > | GetIlluminant () const =0 |
| Gets the illuminant (light source) used by this specification. | |
| virtual ObserverType | GetObserverType () const =0 |
| Gets the standard observer type used for color calculations. | |
| virtual AstmTableType | GetMethod () const =0 |
| Gets the ASTM table type used for spectral calculations. | |
| virtual std::shared_ptr< ISpectralColorSpecification > | GetBaseSpecification () const =0 |
| Gets the base spectral specification, if one exists. | |
Public Member Functions inherited from icmm::IColorSpecification | |
| I_DECLARE_ENUM (SpecType, Tristimulus, Spectral) | |
Public Member Functions inherited from iser::IObject | |
| virtual QByteArray | GetFactoryId () const |
Public Member Functions inherited from iser::ISerializable | |
| virtual bool | Serialize (IArchive &archive)=0 |
| Load or store state of this object as a archive stream. | |
| virtual quint32 | GetMinimalVersion (int versionId) const |
| Get minimal needed version to correct storing of this data. | |
Public Member Functions inherited from istd::IChangeable | |
| virtual int | GetSupportedOperations () const |
| Get set of flags for supported operations. | |
| virtual bool | CopyFrom (const IChangeable &object, CompatibilityMode mode=CM_WITHOUT_REFS) |
| Copy this object from another one. | |
| virtual bool | IsEqual (const IChangeable &object) const |
| Compare this object with another object. | |
| virtual istd::TUniqueInterfacePtr< istd::IChangeable > | CloneMe (CompatibilityMode mode=CM_WITHOUT_REFS) const |
| Make a copy of this object. | |
| virtual bool | ResetData (CompatibilityMode mode=CM_WITHOUT_REFS) |
| Reset data to its default state. | |
| virtual void | BeginChanges (const ChangeSet &changeSet) |
| Starts the change transaction. | |
| virtual void | EndChanges (const ChangeSet &changeSet) |
| Ends the change transaction. | |
| virtual void | BeginChangeGroup (const ChangeSet &changeSet) |
| Starts group of changes. | |
| virtual void | EndChangeGroup (const ChangeSet &changeSet) |
| Ends group of changes. | |
Public Member Functions inherited from istd::IPolymorphic | |
| virtual | ~IPolymorphic () |
Protected Member Functions | |
| virtual SpecType | GetSpecificationType () const final |
| Gets the logical type of the specification. | |
Protected Member Functions inherited from istd::IChangeable | |
| virtual void | OnBeginChanges () |
| Callback function for begin change event. | |
| virtual void | OnEndChanges (const ChangeSet &changeSet) |
| Callback function for end change event. | |
Additional Inherited Members | |
Public Types inherited from icmm::IColorSpecification | |
| enum | SpecType { Tristimulus , Spectral } |
| typedef std::shared_ptr< const IColorSpecification > | ConstColorSpecPtr |
| typedef std::shared_ptr< IColorSpecification > | ColorSpecPtr |
Public Types inherited from istd::IChangeable | |
| enum | ChangeFlags { CF_ACF_INTERNAL = 0 , CF_ALL_DATA , CF_ANY , CF_DESTROYING , CF_DELEGATED , CF_NO_UNDO } |
| Data model change notification flags. More... | |
| enum | SupportedOperations { SO_NONE = 0 , SO_OBSERVE = 1 << 0 , SO_COPY = 1 << 1 , SO_CLONE = 1 << 2 , SO_COMPARE = 1 << 3 , SO_RESET = 1 << 4 } |
| Flags for supported operations. More... | |
| enum | CompatibilityMode { CM_STRICT , CM_WITHOUT_REFS , CM_WITH_REFS , CM_CONVERT } |
| Control how relationship betweeen objects are interpreted. More... | |
| typedef QMultiMap< QByteArray, QVariant > | ChangeInfoMap |
Static Public Member Functions inherited from istd::IChangeable | |
| static const ChangeSet & | GetNoChanges () |
| Get empty set of changes. | |
| static const ChangeSet & | GetAnyChange () |
| Get anonymous change set. | |
| static const ChangeSet & | GetAllChanges () |
| Get anonymous change set. | |
| static const ChangeSet & | GetDelegatedChanges () |
| Get delegated change set. | |
Interface for tristimulus-based color specifications.
ITristimulusSpecification extends IColorSpecification for color spaces based on tristimulus values (three-component color representation like XYZ or RGB). It provides access to the illuminant (light source), observer type (standard observer), and calculation method used for color conversions.
Tristimulus values are based on the trichromatic theory of human color vision:
Illuminant:**
Critical for chromatic adaptation
Observer Type:**
CIE 1964 (10 degrees) for larger fields
Calculation Method:**
sRGB (web/display standard):**
Primaries: Rec. 709
Adobe RGB (photography):**
Wider gamut than sRGB
Print workflows:**
Definition at line 187 of file ITristimulusSpecification.h.
|
pure virtual |
Gets the base spectral specification, if one exists.
Some tristimulus specifications are derived from spectral data, which provides higher accuracy for certain conversions. If available, the base spectral specification can be used for improved accuracy.
Implemented in icmm::CTristimulusSpecification.
|
pure virtual |
Gets the illuminant (light source) used by this specification.
The illuminant defines the reference white point and viewing conditions. Common illuminants include D65 (daylight), D50 (print), and A (tungsten).
Implemented in icmm::CTristimulusSpecification.
|
pure virtual |
Gets the ASTM table type used for spectral calculations.
The method determines wavelength range and resolution for converting between spectral and tristimulus representations.
Implemented in icmm::CTristimulusSpecification.
|
pure virtual |
Gets the standard observer type used for color calculations.
The observer type defines the color matching functions used:
Implemented in icmm::CTristimulusSpecification.
|
inlinefinalprotectedvirtual |
Gets the logical type of the specification.
Returns whether this is a tristimulus-based specification (3 values like RGB) or a spectral-based specification (full wavelength distribution).
Implements icmm::IColorSpecification.
Definition at line 246 of file ITristimulusSpecification.h.
References icmm::IColorSpecification::Tristimulus.