Platforms to show: All Mac Windows Linux Cross-Platform

Back to LCMS2PipelineMBS class.

LCMS2PipelineMBS.Append(p as LCMS2PipelineMBS) as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 11.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Appends pipeline l2 at the end of pipeline l1.

Channel count must match.
Returns true on success and false on failure.

LCMS2PipelineMBS.CheckAndRetreiveStages(type1 as Integer, byref stage1 as LCMS2StageMBS) as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 20.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Checks for some specific stages and returns them via byref parameters.

This function is quite useful to analyze the structure of a Pipeline and retrieve the Stage elements that conform the Pipeline. It should be called with the Pipeline, the number of expected elements and then a list of expected types followed with a list of double pointers to Stage elements. If the function founds a match with current pipeline, it fills the parameters and returns true if not, returns false without touching anything.

See also:

LCMS2PipelineMBS.CheckAndRetreiveStages(type1 as Integer, type2 as Integer, byref stage1 as LCMS2StageMBS, byref stage2 as LCMS2StageMBS) as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 20.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Checks for some specific stages and returns them via byref parameters.

This function is quite useful to analyze the structure of a Pipeline and retrieve the Stage elements that conform the Pipeline. It should be called with the Pipeline, the number of expected elements and then a list of expected types followed with a list of double pointers to Stage elements. If the function founds a match with current pipeline, it fills the parameters and returns true if not, returns false without touching anything.

See also:

LCMS2PipelineMBS.CheckAndRetreiveStages(type1 as Integer, type2 as Integer, type3 as Integer, byref stage1 as LCMS2StageMBS, byref stage2 as LCMS2StageMBS, byref stage3 as LCMS2StageMBS) as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 20.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Checks for some specific stages and returns them via byref parameters.
Example
// load a profile
Dim file As FolderItem = SpecialFolder.Desktop.child("test.icc")
Dim profile As LCMS2ProfileMBS = LCMS2ProfileMBS.OpenProfileFromFile( file, False )

// get the pipeline
Dim pipeline As LCMS2PipelineMBS = profile.ReadPipeline( LCMS2MBS.kcmsSigBToA1Tag )

// get curves
Dim CurveIn As LCMS2StageMBS
Dim CLUT As LCMS2StageMBS
Dim CurveOut As LCMS2StageMBS

Dim ok As Boolean = pipeline.CheckAndRetreiveStages(_
LCMS2MBS.kcmsSigCurveSetElemType, _
LCMS2MBS.kcmsSigCLutElemType, _
LCMS2MBS.kcmsSigCurveSetElemType, _
CurveIn, CLUT, CurveOut)

Break // check the three entries

This function is quite useful to analyze the structure of a Pipeline and retrieve the Stage elements that conform the Pipeline. It should be called with the Pipeline, the number of expected elements and then a list of expected types followed with a list of double pointers to Stage elements. If the function founds a match with current pipeline, it fills the parameters and returns true if not, returns false without touching anything.

See also:

LCMS2PipelineMBS.Constructor(context as LCMS2ContextMBS, InputChannels as UInt32, OutputChannels as UInt32)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 11.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Allocates an empty pipeline.

Final Input and output channels must be specified at creation time.

context: A user-defined context cargo.
InputChannels, OutputChannels: Number of channels on input and output.

LCMS2PipelineMBS.Eval16(In as Ptr, Out as Ptr)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 11.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Evaluates a pipeline usin 16-bit numbers, optionally using the optimized path.

In: Input values.
Out: Output values.

For in and out you can use memoryblocks with UInt16 values.
We use Ptr for maximum performance. Please make sure the memoryblocks have right size. An UInt16 value has 2 bytes.

LCMS2PipelineMBS.EvalFloat(In as Ptr, Out as Ptr)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 11.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Evaluates a pipeline using floating point numbers.

In: Input values.
Out: Output values.

For in and out you can use memoryblocks with single values.
We use Ptr for maximum performance. Please make sure the memoryblocks have right size. A single value has 4 bytes.

Some examples using this method:

LCMS2PipelineMBS.EvalReverseFloat(Target as Ptr, Result as Ptr, Hint as Ptr)

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 11.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Evaluates a pipeline in the reverse direction, using Newton's method.

Target: Input values.
Result: Output values.
Hint: Where begin the search.

For target, result and hint you can use memoryblocks with single values.
We use Ptr for maximum performance. Please make sure the memoryblocks have right size. A single value has 4 bytes.

Returns true on success, false on error.

LCMS2PipelineMBS.InsertStage(where as Integer, stage as LCMS2StageMBS) as boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 11.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Inserts a stage on either the head or the tail of a given pipeline.

where: enumerated constant, either kAtBegin or kAtEnd.
stage: Pointer to a stage object

Some examples using this method:

LCMS2PipelineMBS.SetSaveAs8bitsFlag(save8bit as boolean) as Boolean

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 11.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Sets an internal flag that marks the pipeline to be saved in 8 bit precision.

By default all pipelines are saved on 16 bits precision on AtoB/BToA tags and in floating point precision on DToB/BToD tags.

save8bit: State of the flag, true=Save as 8 bits, false=Save as 16 bits

Returns true on success, false on error

LCMS2PipelineMBS.Stages as LCMS2StageMBS()

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 11.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Returns an array with all stage objects.

Some examples using this method:

LCMS2PipelineMBS.UnlinkStage(where as Integer) as LCMS2StageMBS

Type Topic Plugin Version macOS Windows Linux iOS Targets
method LCMS2 MBS Images Plugin 11.3 ✅ Yes ✅ Yes ✅ Yes ✅ Yes All
Removes the stage from the pipeline.

Returns the removed stage object.
where can be kAtBegin or kAtEnd values.

The items on this page are in the following plugins: MBS Images Plugin.


The biggest plugin in space...