dip_matlab_interface.h file
This file should be included in each MEX-file. It defines the dml namespace.
Contents
- Reference
Namespaces
Classes
-
class dml::
MatlabInterface - This class is the
dip::ExternalInterfacefor the MATLAB interface. more... -
class dml::
streambuf - An output stream buffer for MEX-files. more...
Enums
-
enum class dml::
ArrayConversionMode: dip::uint8 dml::GetImagecan optionally turn an input numeric array to a tensor image. If the numeric array is a short vector (up to 5 elements) or a small matrix (up to 5x5 elements) it will be seen as a 0D tensor image. more...-
enum class dml::
GetImageMode: dip::uint8 dml::GetImagecan optionally create a shared copy of the inputmxArray, which extends its lifetime. This is useful if the MEX-file needs to keep a reference to the object. more...
Functions
-
auto dml::
CreateDouble2Vector(dip::dfloat v0, dip::dfloat v1) -> mxArray* - Create a two-element mxArray and write the two values in it.
-
auto dml::
GetArray(bool in) -> mxArray* - Convert an boolean from
booltomxArrayby copy. -
auto dml::
GetArray(dip::uint in) -> mxArray* - Convert an unsigned integer from
dip::uinttomxArrayby copy. -
auto dml::
GetArray(dip::sint in) -> mxArray* - Convert a signed integer from
dip::sinttomxArrayby copy. -
auto dml::
GetArray(dip::dfloat in) -> mxArray* - Convert a floating-point number from
dip::dfloattomxArrayby copy. -
auto dml::
GetArray(dip::dcomplex in) -> mxArray* - Convert a complex floating-point number from
dip::dcomplextomxArrayby copy. -
template<typename T, typename <SFINAE>>auto dml::
GetArray(dip::DimensionArray const& in) -> mxArray* - Convert a numeric array from
dip::DimensionArraytomxArrayby copy. Works fordip::UnsignedArray,dip::IntegerArrayanddip::FloatArray. -
auto dml::
GetArray(dip::CoordinateArray const& in) -> mxArray* - Convert a coordinates array from
mxArraytodip::CoordinateArrayby copy. more... -
auto dml::
GetArray(dip::String const& in) -> mxArray* - Convert a string from
dip::StringtomxArrayby copy. -
auto dml::
GetArray(dip::StringArray const& in) -> mxArray* - Convert a string array from
dip::StringArraytomxArrayby copy. -
auto dml::
GetArray(dip::Image::Sample const& in) -> mxArray* - Convert a sample from
dip::Image::SampletomxArrayby copy. -
auto dml::
GetArray(dip::Image::Pixel const& in) -> mxArray* - Convert a set of samples from
dip::Image::PixeltomxArrayby copy. -
auto dml::
GetArray(dip::PixelSize const& pixelSize) -> mxArray* - Convert a pixel size object
dip::PixelSizetomxArrayby copy. -
auto dml::
GetArray(dip::FileInformation const& fileInformation) -> mxArray* - Convert a
dip::FileInformationstructure tomxArrayby copy. -
auto dml::
GetArray(dip::Distribution const& in) -> mxArray* - Convert a
dip::Distributionobject tomxArrayby copy. -
auto dml::
GetArray(dip::Image const& img, bool doNotSetToTrue = false) -> mxArray* - Find the
mxArraythat holds the data for thedip::Imageimg, and create a MATLABdip_imageobject around it. -
auto dml::
GetArrayAsArray(dip::Image const& img, bool doNotSetToTrue = false) -> mxArray* - Find the
mxArraythat holds the data for thedip::Imageimg. -
auto dml::
GetArrayUnicode(dip::String const& in) -> mxArray* - Convert a UTF-8 encoded string from
dip::StringtomxArrayby copy. -
auto dml::
GetBoolean(mxArray const* mx) -> bool - Convert a boolean (logical) from
mxArraytoboolby copy. Accepts"yes"and"no"as well. -
auto dml::
GetBooleanArray(mxArray const* mx) -> dip::BooleanArray - Convert a boolean (logical) array from
mxArraytodip::BooleanArrayby copy. -
auto dml::
GetComplex(mxArray const* mx) -> dip::dcomplex - Convert a complex floating-point number from
mxArraytodip::dcomplexby copy. -
auto dml::
GetCoordinateArray(mxArray const* mx) -> dip::CoordinateArray - Convert a coordinates array from
mxArraytodip::CoordinateArrayby copy. more... -
auto dml::
GetFloat(mxArray const* mx) -> dip::dfloat - Convert a floating-point number from
mxArraytodip::dfloatby copy. -
auto dml::
GetFloatArray(mxArray const* mx) -> dip::FloatArray - Convert a floating-point array from
mxArraytodip::FloatArrayby copy. -
auto dml::
GetFloatCoordinateArray(mxArray const* mx) -> dip::FloatCoordinateArray - Convert a coordinates array from
mxArraytodip::FloatCoordinateArrayby copy. more... -
auto dml::
GetHistogramConfiguration(mxArray const* mx) -> dip::Histogram::Configuration - Reads a histogram
Configurationstruct from a cellmxArraywith key-value pairs. -
auto dml::
GetImage(mxArray const* mx, dml::GetImageMode mode = GetImageMode::REFERENCE, dml::ArrayConversionMode conversion = ArrayConversionMode::STANDARD) -> dip::Image - Passing an
mxArrayto DIPlib, keeping ownership of the data. more... -
auto dml::
GetImageArray(mxArray const* mx) -> dip::ImageArray - Convert a cell array of images from
mxArraytodip::ImageArray, usingdml::GetImagefor each element of the cell array. -
auto dml::
GetInteger(mxArray const* mx) -> dip::sint - Convert a signed integer from
mxArraytodip::sintby copy. -
auto dml::
GetIntegerArray(mxArray const* mx) -> dip::IntegerArray - Convert a signed integer array from
mxArraytodip::IntegerArrayby copy. -
template<typename K>auto dml::
GetKernel(int nrhs, mxArray const*[] prhs, int& index, dip::uint nDims) -> K - Gets a structuring element or kernel from the input argument(s) at
index, andindex+1.indexis updated to point to the next unused input argument. -
auto dml::
GetPixel(mxArray const* mx) -> dip::Image::Pixel - Convert a numeric array from
mxArraytodip::Image::Pixelby copy. -
template<typename T>auto dml::
GetPreference(dip::String const& preference) -> T - Get the value of a property, equivalent to calling
dipgetprefin MATLAB. more... -
auto dml::
GetProcessArray(mxArray const* mx, dip::uint nDims) -> dip::BooleanArray - Convert an unsigned integer
mxArrayto adip::BooleanArray, where elements of the input are indices where the output array is set. The output array hasnDimselements. In MATLAB, dimensions start with 1. Ifmxis empty, all dimensions are to be processed. -
auto dml::
GetRange(mxArray const* mx) -> dip::Range - Convert an integer array from
mxArraytodip::Rangeby copy. more... -
auto dml::
GetRangeArray(mxArray const* mx) -> dip::RangeArray - Convert a cell array of integer array from
mxArraytodip::RangeArrayby copy. -
template<typename T>auto dml::
GetStdVector(mxArray const* mx) -> std::vector<T> - Convert a 1D real-valued numeric array from
mxArraytostd::vector< T >by copy. Data is cast as usual from doubles to the target type (seedip::clamp_cast). -
auto dml::
GetStdVectorOfFloats(mxArray const* mx) -> std::vector<dip::dfloat> deprecated - Convert a floating-point array from
mxArraytostd::vector<dip::dfloat>by copy. -
auto dml::
GetString(mxArray const* mx) -> dip::String - Convert a string from
mxArraytodip::Stringby copy. -
auto dml::
GetStringArray(mxArray const* mx) -> dip::StringArray - Convert a cell array of strings from
mxArraytodip::StringArrayby copy. -
auto dml::
GetStringSet(mxArray const* mx) -> dip::StringSet - Convert a cell array of string from
mxArraytodip::StringSetby copy. -
auto dml::
GetStringUnicode(mxArray const* mx) -> dip::String - Convert a string from
mxArrayto a UTF-8 encodeddip::Stringby copy. -
auto dml::
GetUnsigned(mxArray const* mx) -> dip::uint - Convert an unsigned integer from
mxArraytodip::uintby copy. -
auto dml::
GetUnsignedArray(mxArray const* mx) -> dip::UnsignedArray - Convert an unsigned integer array from
mxArraytodip::UnsignedArrayby copy. -
auto dml::
HandleNewStyleString(mxArray const* mx) -> mxArray const* - If
mxis a “string” class object, return a char vector or a cell array of char vectors. -
auto dml::
IsScalar(mxArray const* mx) -> bool - True if array is scalar (has single value)
-
auto dml::
IsString(mxArray const* mx) -> bool - True if
mxis a string (char vector or string class) -
auto dml::
IsVector(mxArray const* mx) -> bool - True if empty or a one-dimensional array
Macros
- #define DML_CATCH
- Catch exceptions thrown in a MEX-file. more...
- #define DML_MAX_ARGS
- Tests to ensure the MEX-file has not been called with too many inputs. more...
- #define DML_MIN_ARGS
- Tests to ensure the MEX-file has been called with sufficient inputs. more...