25 #include "libCZI_DimCoordinate.h" 26 #include "libCZI_Pixels.h" 52 ScalingInfo() :
scaleX(std::numeric_limits<double>::quiet_NaN()),
scaleY(std::numeric_limits<double>::quiet_NaN()),
scaleZ(std::numeric_limits<double>::quiet_NaN()) {}
70 virtual void GetInterval(
int* start,
int* end)
const = 0;
109 double Get(
int index)
const 113 case 0:
return this->
a;
114 case 1:
return this->
b;
115 case 2:
return this->
c;
116 case 3:
return this->
d;
119 return std::numeric_limits<double>::quiet_NaN();
137 virtual void EnumChannels(std::function<
bool(
int chIndex)> func)
const = 0;
209 virtual bool TryGetSplineData(std::vector<libCZI::IDisplaySettings::SplineData>* data)
const = 0;
252 std::vector<DimensionIndex> vec;
265 virtual std::string
GetXml() = 0;
270 virtual std::shared_ptr<libCZI::ICziMultiDimensionDocumentInfo>
GetDocumentInfo() = 0;
virtual IDisplaySettings::GradationCurveMode GetGradationCurveMode() const =0
std::wstring userName
Name of the user who created the document.
Definition: libCZI_Metadata.h:41
double scaleZ
The length of a pixel in y-direction in the unit meters. If unknown/invalid, this value is numeric_li...
Definition: libCZI_Metadata.h:55
virtual std::shared_ptr< IDimensionInfo > GetDimensionInfo(DimensionIndex dim)=0
std::vector< DimensionIndex > GetDimensions()
Definition: libCZI_Metadata.h:250
double b
The coefficient of the square.
Definition: libCZI_Metadata.h:100
virtual std::shared_ptr< IDisplaySettings > GetDisplaySettings() const =0
virtual std::shared_ptr< libCZI::IChannelDisplaySetting > GetChannelDisplaySettings(int chIndex) const =0
The defintion of the (piecewise) spline. The spline starts at xPos which is the normalized position (...
Definition: libCZI_Metadata.h:124
The gradation curve is a straight line (from white point to black point).
virtual void EnumDimensions(std::function< bool(DimensionIndex)> enumDimensions)=0
double y
The normalized y-coordinate of a spline control point.
Definition: libCZI_Metadata.h:85
double c
The coefficient of the linear term.
Definition: libCZI_Metadata.h:101
virtual GeneralDocumentInfo GetGeneralDocumentInfo() const =0
double x
The normalized x-coordinate of a spline control point.
Definition: libCZI_Metadata.h:84
std::wstring description
A text describing the document.
Definition: libCZI_Metadata.h:42
std::wstring comment
A text with comments on the document.
Definition: libCZI_Metadata.h:43
double a
The coefficient of the cube.
Definition: libCZI_Metadata.h:99
The display settings.
Definition: libCZI_Metadata.h:78
double Get(int index) const
Definition: libCZI_Metadata.h:109
double xPos
The (normalized) position for which this spline definition is valid.
Definition: libCZI_Metadata.h:127
std::wstring title
Title of the document.
Definition: libCZI_Metadata.h:40
Scaling information - gives the size of a pixel.
Definition: libCZI_Metadata.h:50
Base class for information about the dimension. (not yet implemented)
Definition: libCZI_Metadata.h:59
double d
The constant.
Definition: libCZI_Metadata.h:102
CubicSplineCoefficients coefficients
The spline coefficients for this piece.
Definition: libCZI_Metadata.h:130
A structure representing an R-G-B-color triple (as bytes).
Definition: libCZI_Pixels.h:110
The coefficients of a cubic spline defined by .
Definition: libCZI_Metadata.h:97
double scaleY
The length of a pixel in y-direction in the unit meters. If unknown/invalid, this value is numeric_li...
Definition: libCZI_Metadata.h:54
virtual void GetInterval(int *start, int *end) const =0
virtual bool GetIsEnabled() const =0
The gradation curve is defined by piecewise splines.
virtual bool TryGetSplineControlPoints(std::vector< libCZI::IDisplaySettings::SplineControlPoint > *ctrlPts) const =0
std::wstring name
Name of the document.
Definition: libCZI_Metadata.h:39
std::wstring keywords
List of keywords (should be separated by semicolons)
Definition: libCZI_Metadata.h:44
virtual bool TryGetTintingColorRgb8(libCZI::Rgb8Color *pColor) const =0
virtual DimensionIndex GetDimension() const =0
virtual libCZI::ScalingInfo GetScalingInfo() const =0
virtual void EnumChannels(std::function< bool(int chIndex)> func) const =0
virtual bool TryGetGamma(float *gamma) const =0
int rating
An integer specifying a "five-star-rating" (should be between 0 and 5).
Definition: libCZI_Metadata.h:45
virtual bool TryGetSplineData(std::vector< libCZI::IDisplaySettings::SplineData > *data) const =0
External interfaces, classes, functions and structs are found in the namespace "libCZI".
Definition: libCZI.h:44
The top-level interface for the CZI-metadata object.
Definition: libCZI_Metadata.h:215
DimensionIndex
Values that represent dimension indexes.
Definition: libCZI_DimCoordinate.h:34
The gradation curve is defined by a gamma.
The (normalized) control points of a spline.
Definition: libCZI_Metadata.h:82
The display-settings for a channel.
Definition: libCZI_Metadata.h:151
General document information - corresponding to Information/Document.
Definition: libCZI_Metadata.h:36
virtual void GetBlackWhitePoint(float *pBlack, float *pWhite) const =0
virtual float GetWeight() const =0
double scaleX
The length of a pixel in x-direction in the unit meters. If unknown/invalid, this value is numeric_li...
Definition: libCZI_Metadata.h:53
std::wstring creationDateTime
The creation date of the document (formatted as xml-datatype "dateTime").
Definition: libCZI_Metadata.h:46
GradationCurveMode
Values that represent the gradation curve modes.
Definition: libCZI_Metadata.h:89