SDK Change Notes for Cinema 4D 2023.0

Summarizes the API and API documentation changes made between Cinema 4D versions S26.107 and 2023.0.0.

Overview

For an an overview of the required development environment for this release on Windows, MacOS, or Linux, see Development Environments.

Major Changes

Added
OCIO color management has been exposed in BaseDocument and OcioConverter.
Added
Watch folders have been exposed in the Asset API.
Removed
Multiple previously deprecated methods in maxon::GraphModelInterface and maxon::GraphNodeFunctions have been removed. Used must be now their already previously added replacements in maxon::GraphModelHelper.

Minor Changes

Added
Exposed plugin ID symbols ge_prepass.h and other header files for multiple missing legacy plugin types as for example the MoGraph plugins.
Updated
The release version naming of Cinema 4D scheme has changed, impacting ABI versioning, see Cinema 4D SDK for details. The new versioning scheme can be formatted with maxon::Application::FormatVersionString.

API Changes

Summarizes the technical changes made to the public APIs of Cinema 4D within the scope of these change notes.

asset.framework

Added:
MAXON_ATTRIBUTE(Int, CATEGORYCOUNT, "net.maxon.assetrepository.categorycount");
#define MAXON_ATTRIBUTE(TYPE, NAME, RID,...)
Definition: fid.h:156
maxon::Int Int
Definition: ge_sys_math.h:64
Added:
MAXON_ATTRIBUTE(Int, ASSETCOUNT, "net.maxon.assetrepository.assetcount");
Added:
MAXON_ATTRIBUTE(Int64, ASSETSIZE, "net.maxon.assetrepository.assetsize");
maxon::Int64 Int64
Definition: ge_sys_math.h:62
Added:
MAXON_ATTRIBUTE(DataDictionary, DETAILCOUNT, "net.maxon.assetrepository.detailcount");
Added:
{
EXISTS
Definition: assets.h:3
RUNNING
Definition: assets.h:2
#define MAXON_ENUM_LIST(E,...)
Definition: enumflags.h:137
@ PENDING
non-native state which is only available in the server when no machine is involved in a running job
REPOSITORYINDEXSTATE
Definition: assets.h:1577
Added:
#define MAXON_METHOD
Definition: interfacebase.h:1001
Added:
MAXON_REGISTRY(Class<AssetRepositoryRef>, AssetRepositoryTypes, "net.maxon.registry.assetrepositorytypes");
MAXON_REGISTRY(maxon::Class< ColorRef >, ColorClasses, "net.maxonexample.registry.colors")
Added:
namespace AssetRepositoryTypes
{
MAXON_DECLARATION(Class<AssetRepositoryRef>, AssetDatabase, "net.maxon.assets.repositorytype.database");
}
#define MAXON_DECLARATION(T, Name, id,...)
Definition: module.h:857
Added:
namespace AssetRepositoryTypes
{
MAXON_DECLARATION(Class<AssetRepositoryRef>, WatchFolder, "net.maxon.assets.repositorytype.watchfolder");
}
Added:
namespace URLFLAGS
{
MAXON_ATTRIBUTE(String, WATCHFOLDERNAME, "net.maxon.url.watchfolderstring");
}
Definition: c4d_string.h:39
Added:
MAXON_REGISTRY(Class<AssetRepositoryRef>, AssetRepositoryTypes, "net.maxon.registry.assetrepositorytypes");
Added:
MAXON_ATTRIBUTE(UniversalDateTime, TIMEWHENGENERATED, "net.maxon.asset.metaproperties.base.timewhengenerated");
Added:
HashInt GetHashCode() const;
UInt HashInt
Definition: apibase.h:337
Added:
MAXON_ATTRIBUTE(Id, ASSETREPOSITORYTYPE, "net.maxon.url.assetdatabasetype");
Added:
MAXON_ATTRIBUTE(InternedId, ASSETREPOSITORYCATEGORY, "net.maxon.url.repositorycategory");
Added:
MAXON_ATTRIBUTE(void, OTHER, "databases.other");
OTHER
Other types override enabled.
Definition: lib_takesystem.h:6
Added:
MAXON_ATTRIBUTE(void, USER, "databases.user");
USER
The meta data should be stored in user folder.
Definition: assets.h:5
Added:
MAXON_ATTRIBUTE(void, INTERNAL, "databases.internal");
INTERNAL
return a http internal error.
Definition: network_httperror.h:16
Added:
MAXON_ATTRIBUTE(void, PROJECTFOLDER, "databases.projectfolder");
Added:
MAXON_ATTRIBUTE(void, SEARCHPATH, "databases.searchpaths");
Added:
MAXON_OBSERVABLE_STATIC(Result<void>, ObservableQueryDatabases, (const ValueReceiver<const Url&>& databaseUrl), ObservableCombinerRunAllComponent);
#define MAXON_OBSERVABLE_STATIC(RETTYPE, NAME,...)
Definition: observable.h:740
Old:
static MAXON_METHOD Result<String> GetRepositoryName(const AssetRepositoryRef& repository, const LanguageRef& language, const String& fallbackName);
New:
static MAXON_METHOD Result<String> GetRepositoryName(const AssetRepositoryRef& repository, const LanguageRef& language, const String& fallbackName, Bool addDetails);
maxon::Bool Bool
Definition: ge_sys_math.h:55
Old:
MAXON_METHOD Result<String> GetRepositoryName(const LanguageRef& language);
New:
MAXON_METHOD Result<String> GetRepositoryName(const LanguageRef& language, Bool addDetails) const;
Old:
static MAXON_METHOD Result<UpdatableAssetRepositoryRef> CreateRepositoryFromUrl(const Id& rid, const Block<const AssetRepositoryRef>& bases, const Url& url, Bool writable, Bool derivedInPrefs, Bool tempRepository);
New:
static MAXON_METHOD Result<UpdatableAssetRepositoryRef> CreateRepositoryFromUrl(const Id& rid, const Class<AssetRepositoryRef>& repoType, const Block<const AssetRepositoryRef>& bases, const Url& url, Bool writable, Bool derivedInPrefs, Bool tempRepository, const BackgroundEntryTuple& backgroundJob = {});
Tuple< WeakRef< BackgroundProgressRef >, Int > BackgroundEntryTuple
Definition: backgroundentry.h:176
Old:
MAXON_METHOD Result<void> CompactInBackground(const BackgroundProgressRef & backgroundJob);
New:
MAXON_METHOD Result<void> CompactInBackground(const TimeValue& delay, const BackgroundProgressRef& backgroundJob);
Old:
static MAXON_METHOD Opt<const AssetRepositoryRef&> FindRepository(const Url& url);
New:
static MAXON_METHOD ForwardRef<AssetRepositoryRef> FindRepository(const Url& url);
Old:
static MAXON_METHOD Result<void> ReloadAssetRepositories();
New:
static MAXON_METHOD Result<void> ReloadAssetRepositories(Bool forceReload);

cinema.framework

Added:
void SetInternalProfile(const maxon::ColorProfile& profile);
Added:
Int32 GetColorSpaceIdFromName(Int32 category, const maxon::CString& name) const;
const char const char * name
Definition: abstract.h:195
Definition: string.h:1490
maxon::Int32 Int32
Definition: ge_sys_math.h:60
Added:
static void CopyLinearWorkflow(const BaseDocument *src, BaseDocument *dst, Bool isMaterialPreview);
Definition: c4d_basedocument.h:498
PyObject * src
Definition: abstract.h:305
Added:
#define BC_ID_COLOR_MODE 440000075
Added:
void SetColorMode(Int32 colorMode);
Added:
Int32 GetColorMode() const;
Added:
extern Vector32 TransformColor(const Vector32& input, COLORSPACETRANSFORMATION colortransformation);
Vector64 TransformColor(const Vector64 &input, COLORSPACETRANSFORMATION colortransformation)
COLORSPACETRANSFORMATION
Definition: ge_prepass.h:498
Added:
extern maxon::Color32 TransformColor(const maxon::Color32& input, COLORSPACETRANSFORMATION colortransformation);
A color consisting of three components R, G and B.
Definition: col.h:16
Added:
extern void TransformColors(Vector64* v, Int count, COLORSPACETRANSFORMATION colorSpaceTransformation);
Py_ssize_t count
Definition: abstract.h:640
PyObject PyObject * v
Definition: abstract.h:297
void TransformColors(Vector64 *v, Int count, COLORSPACETRANSFORMATION colorSpaceTransformation)
Added:
extern void TransformColors(Vector32* v, Int count, COLORSPACETRANSFORMATION colorSpaceTransformation);
Added:
void TransformColors(Vector64* v, Int count, COLORSPACETRANSFORMATION colorSpaceTransformation) const;
Added:
void TransformColors(Vector32* v, Int count, COLORSPACETRANSFORMATION colorSpaceTransformation) const;
Added:
#define VPcolormapping 1001194 ///< Videopost plugin 'Color Mapping'.
Added:
#define VPcolormapping 1001194 ///< Videopost plugin 'Color Mapping'.
Added:
#define VPnormalpass 1028398 ///< Videopost plugin 'Normal Pass'.
Added:
#define VPpositionpass 1027117 ///< Videopost plugin 'Position Pass'.
Added:
#define VPrsrenderer 1036219 ///< Videopost plugin 'Redshift'.
Added:
#define VPrsposteffects 1040189 ///< Videopost plugin 'Redshift Post-Effects'.
Added:
#define VPtoons 1011015 ///< Videopost plugin 'Sketch and Toon'.
Added:
#define VPvectormotionblur 1002008 ///< Videopost plugin 'Vector Motion Blur'.
Added:
#define VPwatermark 1025462 ///< Videopost plugin 'Watermark'.
Added:
#define MSG_VIDEOPOST_UPDATE_WORKFLOW 1056196 ///< Called to request Magic Bullet Looks Video Post to update its color management settings. @since 2023
Added:
Definition: ge_prepass.h:41
Added:
DOCUMENTINFOGUIALLOWED = (1 << 19) ///< Custom dialogs can be displayed while reacting to DocumentInfo Messages.
DOCUMENTINFOGUIALLOWED
Custom dialogs can be displayed while reacting to DocumentInfo Messages.
Definition: ge_prepass.h:18
Added:
#define Mpyroobject 1001005 ///< Material plugin 'PyroCluster'.
Added:
#define Mpyrovolume 1001006 ///< Material plugin 'PyroCluster - VolumeTracer'.
Added:
#define Mrsgraph 1036224 ///< Material plugin 'Redshift Shader Graph' (XPresso).
Added:
#define Msketch 1011014 ///< Material plugin 'Sketch'.
Added:
#define Moutline 1012041 ///< Material plugin 'TUOUTLINER'.
Added:
#define Obevel 431000028 ///< Object plugin 'Bevel Deformer'.
Added:
#define Obodycapture 1053360 ///< Object plugin 'Body Capture'.
Added:
#define Ovolumecachelayer 1050456 ///< Object plugin 'Volume Cache Layer'.
Added:
#define Ocacameraspacedeform 1024476 ///< Object plugin 'Camera Deformer'.
Added:
#define Omgcloner 1018544 ///< Object plugin 'Cloner'.
Added:
#define Ocloth 100004007 ///< Object plugin 'Cloth Surface'.
Added:
#define Ocacluster 1021283 ///< Object plugin 'Cluster'.
Added:
#define Omgcoffee 440000051 ///< Object plugin 'COFFEE'.
Added:
#define Ocacollision 1024544 ///< Object plugin 'Collision Deformer'.
Added:
#define Ocacomponent 1022292 ///< Object plugin 'Component'.
Added:
#define Oconnectorconstraint 180000011 ///< Object plugin 'Connector'.
Added:
#define Ocacorrection 1024542 ///< Object plugin 'Correction Deformer'.
Added:
#define Odatacapture 1056362 ///< Object plugin 'Data Capture'.
Added:
#define Omgdelay 1019234 ///< Object plugin 'Delay Effector'.
Added:
#define Odisplacer 1018685 ///< Object plugin 'Displacer Modifier'.
Added:
#define Odoodle 1022242 ///< Object plugin 'Doodle Object'.
Added:
#define Ofacecapture 1040464 ///< Object plugin 'Face Capture'.
Added:
#define Ofeathers 1018396 ///< Object plugin 'Feathers'.
Added:
#define Oforce 180000103 ///< Object plugin 'Force'.
Added:
#define Omgformula 1018883 ///< Object plugin 'Formula Effector'.
Added:
#define Omgfracture 1018791 ///< Object plugin 'Fracture'.
Added:
#define Ofur 1018958 ///< Object plugin 'Fur'.
Added:
#define Omgroup 1019351 ///< Object plugin 'Group'.
Added:
#define Oguide 1027657 ///< Object plugin 'Guide'.
Added:
#define Omginheritance 1018775 ///< Object plugin 'Inheritance Effector'.
Added:
#define Ocajiggle 1021284 ///< Object plugin 'Jiggle Deformer'.
Added:
#define Omgmatrix 1018545 ///< Object plugin 'Matrix'.
Added:
#define Ocamesh 1024543 ///< Object plugin 'Mesh'.
Added:
#define Omgextrude 1019358 ///< Object plugin 'MoExtrude'.
Added:
#define Omginstance 1018957 ///< Object plugin 'MoInstance'.
Added:
#define Ocamorph 1019768 ///< Object plugin 'Morph Deformer'.
Added:
#define Omgspline 1018774 ///< Object plugin 'Mograph Spline'.
Added:
#define Omotor 180000012 ///< Object plugin 'Motor'.
Added:
#define Ocaskin 1026352 ///< Object plugin 'MSkin'.
Added:
#define Ocamuscle 1026224 ///< Object plugin 'Muscle'.
Added:
#define Opivot 100004839 ///< Object plugin 'Pivot'.
Added:
#define Opivotmanipulator 431000170 ///< Object plugin 'Pivot Manipulator'.
Added:
#define Omgplain 1021337 ///< Object plugin 'Plain Effector'.
Added:
#define Oplanemanipulator 431000167 ///< Object plugin 'Plane Manipulator'.
Added:
#define Ocapointcache 1021318 ///< Object plugin 'Point Cache'.
Added:
#define Omgpolyfx 1019222 ///< Object plugin 'PolyFX'.
Added:
#define Omgpushapart 440000219 ///< Object plugin 'Push Apart Effector'.
Added:
#define Omgpython 1025800 ///< Object plugin 'Python Efector'.
Added:
#define Omgrandom 1018643 ///< Object plugin 'Random Effector'.
Added:
#define Orsbakeset 1040211 ///< Object plugin 'Redshift BakeSet'.
Added:
#define Orsenvironment 1036757 ///< Object plugin 'Redshift Environment'.
Added:
#define Orsproxy 1038649 ///< Object plugin 'Redshift Proxy'.
Added:
#define Orssky 1036754 ///< Object plugin 'Redshift Sky'.
Added:
#define Orsvolume 1038655 ///< Object plugin 'Redshift Volume'.
Added:
#define Omgreeffector 440000234 ///< Object plugin 'ReEffector Efector'.
Added:
#define Oremesh 1054750 ///< Object plugin 'Remesh'.
Added:
#define Omgshader 1018561 ///< Object plugin 'Shader Efector'.
Added:
#define Oshrinkwrap 1019774 ///< Object plugin 'Shrink Wrap Deformer'.
Added:
#define Oxrefsimple 200000118 ///< Object plugin 'Simple XRef'.
Added:
#define Osimulationscene 1057221 ///< Object plugin 'Simulation Scene'.
Added:
#define Ocasmooth 1024529 ///< Object plugin 'Smoothing Deformer'.
Added:
#define Omgsound 440000255 ///< Object plugin 'Sound Effector'.
Added:
#define Omgsplinemask 1019396 ///< Object plugin 'Spline Mask'.
Added:
#define Omgsplinewrap 1019221 ///< Object plugin 'Spline Wrap Deformer'.
Added:
#define Ospring 180000010 ///< Object plugin 'Spring'.
Added:
#define Ocasquash 1021280 ///< Object plugin 'Squash & Stretch Deformer'.
Added:
#define Omgstep 1018881 ///< Object plugin 'Step Effector'.
Added:
#define Ocastep 1026918 ///< Object plugin 'Step'.
Added:
#define Ocasurface 1024552 ///< Object plugin 'Surface Deformer'.
Added:
#define Omgeffectortarget 1018889 ///< Object plugin 'Target Effector'.
Added:
#define Omgtext 1019268 ///< Object plugin 'Text'.
Added:
#define Omgtime 1018935 ///< Object plugin 'Time Effector'.
Added:
#define Omgtracer 1018655 ///< Object plugin 'Tracer'.
Added:
#define Ovectorimport 1057899 ///< Object plugin 'Vector Import'.
Added:
#define Omgvolume 1021287 ///< Object plugin 'Volume'.
Added:
#define Omgvoronoifracture 1036557 ///< Object plugin 'Voronoi Fracture'.
Added:
#define Omotionclip 465003002 ///< Object plugin 'Motion Clip'.
Added:
#define Xart 1012161 ///< Shader plugin 'Art'.
Added:
#define Xmgbeat 1018654 ///< Shader plugin 'Beat Shader'.
Added:
#define Xmgcamera 440000050 ///< Shader plugin 'Camera Shader'.
Added:
#define Xcel 1012158 ///< Shader plugin 'Cel'.
Added:
#define Xmgcolor 1018767 ///< Shader plugin 'Color Shader'.
Added:
#define Xhatch 1012166 ///< Shader plugin 'Hatch'.
Added:
#define Xlensdistortion 1031708 ///< Shader plugin 'Lens Distortion'.
Added:
#define Xmovesface 1040942 ///< Shader plugin 'Moves Face Shader'.
Added:
#define Xmgmultishader 1019397 ///< Shader plugin 'Multi Shader'.
Added:
#define Xpavement 1024945 ///< Shader plugin 'Pavement'.
Added:
#define Xpolygonhair 1017667 ///< Shader plugin 'Polygon Hair'.
Added:
#define Xspots 1012160 ///< Shader plugin 'Spots'.
Added:
#define Tcameracalibrator 1026818 ///< Tag plugin 'Camera Calibrator'.
Added:
#define Tcameraorrientation 1029911 ///< Tag plugin 'Camera Orientation Constraint'.
Added:
#define Tcacomponent 1022113 ///< Tag plugin 'Character Component'.
Added:
#define Tcloth 100004020 ///< Tag plugin 'Cloth'.
Added:
#define Tclothbelt 100004022 ///< Tag plugin 'Cloth Belt'.
Added:
#define Tcollider 100004021 ///< Tag plugin 'Collider'.
Added:
#define Tconnector 1058895 ///< Tag plugin 'Connector'.
Added:
#define Tcaconstraint 1019364 ///< Tag plugin 'Constraint'.
Added:
#define Tdoodleimage 1022211 ///< Tag plugin 'Doodle Image'.
Added:
#define Tdriver 1019744 ///< Tag plugin 'Driver'.
Added:
#define Tdynamicsbody 180000102 ///< Tag plugin 'Dynamics Body'.
Added:
#define Tcaik 1019561 ///< Tag plugin 'IK'.
Added:
#define Tcaikspline 1019862 ///< Tag plugin 'IK-Spline'.
Added:
#define Tmaskconstraint 1029912 ///< Tag plugin 'Mask Constraint'.
Added:
#define Tmgcolor 1018768 ///< Tag plugin 'Motion Graphics Color Tag'.
Added:
#define Tmgdependence 1019352 ///< Tag plugin 'Motion Graphics Dependance Tag'.
Added:
#define Tmgtracer 1019326 ///< Tag plugin 'Motion Graphics Tracer Tag'.
Added:
#define Tmoveseye 1040866 ///< Tag plugin 'Moves Eye Tag'.
Added:
#define Tmovesposemorph 1040839 ///< Tag plugin 'Moves Pose Morph Helper'.
Added:
#define Tplanarconstraint 1029910 ///< Tag plugin 'Planar Constraint'.
Added:
#define Tcapointcache 1021302 ///< Tag plugin 'Point Cache'.
Added:
#define Tpositionconstraint 1029908 ///< Tag plugin 'Position Constraint'.
Added:
#define Trscamera 1036760 ///< Tag plugin 'Redshift Camera'.
Added:
#define Trsobject 1036222 ///< Tag plugin 'Redshift Object'.
Added:
#define Trender 1018385 ///< Tag plugin 'Render'.
Added:
#define Tretarget 100001735 ///< Tag plugin 'Retarget'.
Added:
#define Trope 1018068 ///< Tag plugin 'Rope'.
Added:
#define Tropebelt 1018074 ///< Tag plugin 'Rope Belt'.
Added:
#define Tscenenodes 180420300 ///< Tag plugin 'Scene Nodes Tag'.
Added:
#define Tsketchrender 1011961 ///< Tag plugin 'Sketch Render'.
Added:
#define Tsketchstyle 1011012 ///< Tag plugin 'Sketch Style'.
Added:
#define Tcatension 1018327 ///< Tag plugin 'Tension'.
Added:
#define Ttodo 465001537 ///< Tag plugin 'To Do'.
Added:
#define Tvectorconstraint 1029909 ///< Tag plugin 'Vector Constraint'.
Added:
#define Tcavisualselector 1026275 ///< Tag plugin 'Visual Selector'.
Added:
#define Tmotionsystem 465003000 ///< Tag plugin 'Motion System'.
Added:
#define CT2d 1029916 ///< Ctrack plugin '2D Tracks'.
Added:
#define CTdoodle 1022213 ///< Ctrack plugin 'Doodle Track'.
Added:
#define CTMask 1029915 ///< Ctrack plugin 'Mask Track'.
Added:
#define WPREF_WATCHFOLDER_AUTOMOUNT_SEARCHPATHS 1410 ///< ::Bool True if search paths should be mounted automatically as watch folders
Added:
#define WPREF_WATCHFOLDER_AUTOMOUNT_DOCUMENTS 1411 ///< ::Bool True if project relative watch folder paths should be mounted automatically as watch folders
Added:
#define VIEWCOLOR_SYMMETRY_SELECTION_HIGHLIGHT 113 ///< @since 2023.000
Added:
#define VIEWCOLOR_SYMMETRY_TOPOLOGY_LOOP_HIGHLIGHT 114 ///< @since 2023.000
Added:
#define VIEWCOLOR_SYMMETRY_PLANE_X 115 ///< @since 2023.000
Added:
#define VIEWCOLOR_SYMMETRY_PLANE_Y 116 ///< @since 2023.000
Added:
#define VIEWCOLOR_SYMMETRY_PLANE_Z 117 ///< @since 2023.000
Added:
#define FORMAT_USDIMPORT 1055178 ///< USD inport. @since R23
Added:
#define FORMAT_USDEXPORT 1055179 ///< USD export. @since R23
Added:
#define FORMAT_GOZIMPORT 1053589 ///< goz inport. @since S22
Added:
USEGLOBALSYMMETRY = (1 << 2) ///< Set to let the command to recieve the symmetry settings from the global context.
USEGLOBALSYMMETRY
Set to let the command to recieve the symmetry settings from the global context.
Definition: ge_prepass.h:3
Added:
FASTDETECTION = (1 << 31) ///< maps to FILEFORMATDETECTIONFLAGS::FASTDETECTION
FASTDETECTION
maps to FILEFORMATDETECTIONFLAGS::FASTDETECTION
Definition: ge_prepass.h:10
Added:
#define TREEVIEW_HIDE_HIERARCHY_LINES 'hihl' ///< <span style="font-weight:bold;">true</span> to hide the hierarchical lines. Note: only affects visibility of the lines, the indentation levels and fold/unfold symbols visibility remains unchanged.
Added:
#define QUICKTAB_LMB_LIKE_RMB 'lmrm' ///< ::Bool If true, left mouse button click only changes the clicked tab state, the rest of selected/unselected tabs remain unchanged (so it behaves like right mouse button click). @since 2023.000
Added:
Bool GetLineAndColumnHit(Int32 screenX, Int32 screenY, Int32& lineHit, Int32& columnHit);
Added:
#define ID_OPERATOR_MG_SAMPLE 1019296 ///< Node plugin 'Sample Effector'.
Added:
#define ID_OPERATOR_MG_DATA 1019010 ///< Node plugin 'Motion Graphics Data'.
Added:
#define ID_OPERATOR_MG_FALLOFF 1019302 ///< Node plugin 'Falloff'.
Added:
#define ID_OPERATOR_MG_SELECTION 1021344 ///< Node plugin 'MoGraph Selection'.
Added:
#define ID_OPERATOR_MG_WEIGHT 440000233 ///< Node plugin 'MoGraph Weight'.
Added:
GV_MESSAGE_OBJECT_RESOLVEPORTDESCID ///< allows to resolve the DescID of a port of the object node data contains a pointer to a ResolvePortDescId struct
@ GV_MESSAGE_OBJECT_RESOLVEPORTDESCID
allows to resolve the DescID of a port of the object node data contains a pointer to a ResolvePortDes...
Definition: c4d_graphview_def.h:488
Added:
// Helper structure used together with GV_MESSAGE_OBJECT_RESOLVEPORTDESCID
{
GvPort* inPort = nullptr;
};
Definition: lib_description.h:330
Definition: c4d_graphview.h:938
Helper structure used together with GV_MESSAGE_OBJECT_RESOLVEPORTDESCID.
Definition: c4d_graphview_def.h:494
DescID outDescId
description id of the outport
Definition: c4d_graphview_def.h:496
GvPort * inPort
connected port
Definition: c4d_graphview_def.h:495
Added:
New file
const char const char const char * file
Definition: object.h:439
Old:
const void* GetInternalProfile() const;
New:
const maxon::ColorProfile& GetInternalProfile() const;
Old:
Bool SetColorProfile(const ColorProfile* profile)
Definition: c4d_basebitmap.h:156
New:
Bool SetColorProfile(const ColorProfile* profile, Int32 index = COLORPROFILE_INDEX_IMAGE);
Py_ssize_t * index
Definition: abstract.h:374
Old:
const ColorProfile* GetColorProfile() const
New:
const ColorProfile* GetColorProfile(Int32 index = COLORPROFILE_INDEX_IMAGE) const;
Old:
void GetOcioConfigAndProfiles(maxon::OcioConfig& ocioConfig, maxon::ColorProfile& inputColorSpaceLow, maxon::ColorProfile& inputColorSpaceHigh, maxon::ColorProfile& renderingColorSpace, maxon::ColorProfile& displayColorSpace, maxon::ColorProfile& viewTransform, maxon::ColorProfile& viewTransformThumbnails) const;
New:
void GetOcioConfigAndProfiles(maxon::OcioConfig& ocioConfig, maxon::ColorProfile& renderingColorSpace, maxon::ColorProfile& displayColorSpace, maxon::ColorProfile& viewTransform, maxon::ColorProfile& viewTransformThumbnails) const;;
Old:
void GetActiveOcioColorSpacesNames(maxon::CString& inputColorSpaceLow, maxon::CString& inputColorSpaceHigh, maxon::CString& renderingColorSpace, maxon::CString& viewTransform, maxon::CString& displayColorSpace, maxon::CString& viewTransformThumbnails) const;
New:
void GetActiveOcioColorSpacesNames(maxon::CString& renderingColorSpace, maxon::CString& displayColorSpace, maxon::CString& viewTransform, maxon::CString& viewTransformThumbnails) const;
Old:
maxon::CString GetNameFromColorSpaceId(const Int32 category, const Int32 index);
New:
maxon::CString GetNameFromColorSpaceId(Int32 category, Int32 index) const;
Old:
void RenderViewportWithoutPostEffects(maxon::ImageRef& image) const
New:
void RenderViewportWithoutPostEffects(maxon::ImageRef& image, const maxon::ColorProfile& colorProfile) const;
Old:
Bool SetColorProfile(const ColorProfile& profile)
New:
Bool SetColorProfile(const ColorProfile& profile, Int32 index = COLORPROFILE_INDEX_IMAGE)
Old:
const ColorProfile& GetColorProfile() const
New:
const ColorProfile& GetColorProfile(Int32 index = COLORPROFILE_INDEX_IMAGE) const
Old:
extern Vector TransformColor(const Vector& input, COLORSPACETRANSFORMATION colortransformation, Bool force = false);
New:
extern Vector64 TransformColor(const Vector64& input, COLORSPACETRANSFORMATION colortransformation);
Old:
extern maxon::Color TransformColor(const maxon::Color& input, COLORSPACETRANSFORMATION colortransformation, Bool force = false);
New:
extern maxon::Color64 TransformColor(const maxon::Color64& input, COLORSPACETRANSFORMATION colortransformation);
Old:
Vector64 TransformColor(const Vector64 &v, COLORSPACETRANSFORMATION colortransformation, Bool force = false) const
New:
Vector64 TransformColor(const Vector64 &v, COLORSPACETRANSFORMATION colorSpaceTransformation) const;
Old:
Vector32 TransformColor(const Vector64 &v, COLORSPACETRANSFORMATION colortransformation, Bool force = false) const
New:
Vector32 TransformColor(const Vector64 &v, COLORSPACETRANSFORMATION colorSpaceTransformation) const;
Old:
void GetConverter(COLORSPACETRANSFORMATION colortransformation, maxon::ColorProfileConvert& converter) const
New:
void GetConverter(COLORSPACETRANSFORMATION colorSpaceTransformation, maxon::ColorProfileConvert& converter) const;
Old:
Vector TransformColor(const Vector& input, Bool force = false) const
New:
Vector TransformColor(const Vector& input) const
Old:
#define API_VERSION 26100
New:
#define API_VERSION 2022900

cinema_hybrid.framework

Added:
HIDEWATCHFOLDERS = (1 << 15), ///< Hides Watchfolder categories
HIDEWATCHFOLDERS
Hides Watchfolder categories.
Definition: assetmanagerinterface.h:14
Added:
MAXON_DECLARATION(UiConversions::EntryType, UiOcioColorSpace, "net.maxon.ui.ociocolorspace");
Old:
MAXON_METHOD Result<void> CreateC4DDescription(const DataType& dataType, Description& c4dDescription, const LanguageRef& language, const DataDictionary& dataEntry, const DataDictionary& guiEntry, const DataDescription& mainDataDescription, const DataDescription& stringDescription, const DescID& mainId, const DescID& groupId, const PatchC4DDescriptionEntryDelegate& patchEntryFunc, DescTranslation& translateIds, const BaseArray<InternedId>& parentIds, const DescID& parentFoldId, const GetDataCallbackType& getDataCallback, const GetExtraDataCallbackType& getExtraDataDelegate) const;
Definition: lib_description.h:530
Delegate< DelegateBase(const Id &)> GetExtraDataCallbackType
Definition: uiconversions.h:23
Delegate< Result< Data >(const InternedId &id, const DataDictionary &dataEntry, GETDATAFLAGS flags)> GetDataCallbackType
Definition: datadescriptiondefinition.h:26
Delegate< Result< void >(BaseContainer &param)> PatchC4DDescriptionEntryDelegate
Definition: uiconversions.h:24
New:
MAXON_METHOD Result<void> CreateC4DDescription(const DataType& dataType, Description& c4dDescription, const LanguageRef& language, const DataDictionary& dataEntry, const DataDictionary& guiEntry, const DataDescription& mainDataDescription, const DataDescription& stringDescription, const DescID& mainId, const DescID& groupId, const PatchC4DDescriptionEntryDelegate& patchEntryFunc, DescTranslation& translateIds, const BaseArray<InternedId>& parentIds, const DescID& parentFoldId, const GetDataCallbackType& getDataCallback, const GetExtraDataCallbackType& getExtraDataDelegate, BaseDocument* doc) const;
const char * doc
Definition: pyerrors.h:226
Old:
MAXON_METHOD Result<Tuple<Data, Bool>> ConvertToCore(const DataType& dataType, const GeData& data, const DescID& descIdSuffix, const DataDictionary& dataEntry, const DataDictionary& guiEntry, const Data& oldData, const GetExtraDataCallbackType& extraDataDelegate) const;
Definition: c4d_gedata.h:83
New:
MAXON_METHOD Result<Tuple<Data, Bool>> ConvertToCore(const DataType& dataType, const GeData& data, const DescID& descIdSuffix, const DataDictionary& dataEntry, const DataDictionary& guiEntry, const Data& oldData, const GetExtraDataCallbackType& extraDataDelegate, BaseDocument* doc) const;
Removed:
static MAXON_METHOD Result<void> CreateObjectsOnDrag(BaseDocument* doc, const Url& url, const AssetDescription& asset, Bool allowPreviewCube, Bool overwriteMatrix, const Matrix& overwriteMatrixMg, Float placementScale, BaseObject* parent = nullptr, BaseObject* prev = nullptr);
Definition: c4d_baseobject.h:225
maxon::Float Float
Definition: ge_sys_math.h:66
Removed:
static MAXON_METHOD Tuple<Bool, Id, Url, AssetDescription> GetAssetFilenameFromDragData(const void* dragData, Bool updateUsage, Bool showDownloadDialog, const Filter& filter = GetZeroRef<Filter>());

command.framework

Removed:
MAXON_FUNCTION Result<void> SetContext(CommandDataRef& data) const;
#define MAXON_FUNCTION
Definition: interfacebase.h:1022

core.framework

Added:
template <typename RET, typename CALLABLE, typename... ARGS> struct GetSignature<RET(CALLABLE::*)(ARGS...)>
Added:
template <typename RET, typename CALLABLE, typename... ARGS> struct GetSignature<RET(CALLABLE::*)(ARGS...) const>
Added:
template <typename T, typename = Bool> struct IsTriviallyHashable
Added:
template <typename T> struct IsTriviallyHashable<T, decltype(T::TriviallyHashable())>
Added:
TRIVIALLY_HASHABLE = 1LL << 41, ///< Values of the data type are trivially hashable (see IsTriviallyHashable).
TRIVIALLY_HASHABLE
Values of the data type are trivially hashable (see IsTriviallyHashable).
Definition: apibase.h:54
Added:
MAXON_FUNCTION ResultMem InsertBlock(Int index, const Block<const TYPE>& values)
ResultMemT< Bool > ResultMem
Definition: apibaseid.h:45
Added:
MAXON_FUNCTION ResultMem InsertBlock(Int index, const MoveBlock<TYPE>& values)
Added:
static MAXON_METHOD String FormatVersionString(Int rawVersionNumber);
Added:
template <typename COLLECTION, typename = typename std::enable_if<STD_IS_REPLACEMENT(same, typename std::decay<COLLECTION>::type, ArrayMap)>::type>
Result<void> CopyFromImpl(COLLECTION&& src, COLLECTION_RESIZE_FLAGS resizeFlags, OverloadRank4)
COLLECTION_RESIZE_FLAGS
Flags for Resize(). Depending on the type of collection the flags might be ignored (except for ON_GRO...
Definition: collection.h:126
PrivateOverloadRank4 * OverloadRank4
See OverloadRank0.
Definition: apibase.h:699
Added:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(Block<typename std::remove_const<T>::type>& values)
#define MAXON_ATTRIBUTE_FORCE_INLINE
Definition: apibase.h:111
PyObject ** type
Definition: pycore_pyerrors.h:34
Added:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(Block<const T>& values)
Added:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(const Block<typename std::remove_const<T>::type>& values)
Added:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(const Block<const T>& values)
Added:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(Block<typename std::remove_const<T>::type>&& values)
Added:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(Block<const T>&& values)
Added:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(MoveBlock<T>& values)
Added:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(const MoveBlock<T>& values)
Added:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(MoveBlock<T>&& values)
Added:
template <Int N> MAXON_IMPLICIT MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(typename std::remove_const<T>::type (&array)[N])
N
Get VPFragment::n.
Definition: ge_prepass.h:2
#define MAXON_IMPLICIT
Definition: apibase.h:172
Added:
template <Int N> MAXON_IMPLICIT MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(const T (&array)[N])
Added:
template <Int CS, BASEARRAYFLAGS MF, typename A> MAXON_IMPLICIT MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(BaseArray<T, CS, MF, A>& a)
Added:
template <Int CS, BASEARRAYFLAGS MF, typename A> MAXON_IMPLICIT MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(const BaseArray<T, CS, MF, A>& a)
Added:
template <Int CS, BASEARRAYFLAGS MF, typename A> MAXON_IMPLICIT MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(BaseArray<T, CS, MF, A>&& a)
Added:
UniqueHash GetUniqueHashCode() const
Added:
static constexpr Bool CONSTBLOCK = STD_IS_REPLACEMENT(const, T);
#define STD_IS_REPLACEMENT(name,...)
Definition: compilerdetection.h:276
Added:
static constexpr Bool BYTE_BLOCK = !STRIDED && std::is_same<const T, const Byte>::value;
PyObject * value
Definition: abstract.h:715
Added:
Py_ssize_t size
Definition: bytesobject.h:86
ANY
Definition: lib_substance.h:28
char ** ptr
Definition: pycore_dtoa.h:13
Added:
operator typename std::conditional<BYTE_OR_CHAR && !CONSTBLOCK, const Block<const SwapByteChar, STRIDED>, const DeleteReturnType09>::type&() const
Added:
UniqueHash GetUniqueHashCode() const
Added:
template <typename HASH = DefaultCompare> void CombineUniqueHash(UniqueHasher& hash) const
PyObject Py_hash_t hash
Definition: dictobject.h:35
Added:
Int GetCount(const ITERABLE &iterable)
Definition: collection.h:37
Added:
MAXON_METHOD Result<DataDictionary> FindEntry(const InternedId& id) const;
Added:
MAXON_METHOD UniqueHash GetUniqueHashCode() const;
Added:
MAXON_METHOD Result<void> EraseEntry(const InternedId& id);
Added:
MAXON_METHOD UniqueHash GetUniqueHashCode() const;
Added:
Result<void> InitializeNullValue();
Added:
enum class FLAGS
{
NONE = 0,
OWNS_NULL_VALUE
Definition: datatypebase.h:2
GLOBALLY_REFERENCED
The data type is globally referenced and AddReference() and RemoveReference() should not access its r...
Definition: datatypebase.h:1
#define MAXON_ENUM_FLAGS_CLASS(E,...)
Definition: enumflags.h:201
Added:
void ResetNullValue();
Added:
UniqueHash GetUniqueHashCode() const;
Added:
UniqueHash GetUniqueHashCode() const;
Added:
UniqueHash GetUniqueHashCode() const;
Added:
static UniqueHash GetUniqueHashCode(const DataTypeImpl* type, const void* a)
Added:
Result<void> Init(CString&& str);
void * str
Definition: bytesobject.h:77
Added:
{
NONE = 0,
FASTDETECTION = (1 << 0),
#define MAXON_ENUM_FLAGS(E,...)
Definition: enumflags.h:192
@ FASTDETECTION
maps to FILEFORMATDETECTIONFLAGS::FASTDETECTION
FILEFORMATDETECTIONFLAGS
Definition: fileformat.h:18
Added:
UniqueHash GetUniqueHashCode(const DataType& elementType) const;
Added:
UniqueHash GetUniqueHashCode() const
Added
maxon::RefBaseFn
Added:
UniqueHash GetUniqueHashCode() const
Added:
#define MAXON_USING_CONST(...)
Added:
const Char* _name;
maxon::Char Char
Definition: ge_sys_math.h:56
Added:
Int _nameLength
Added:
const Block<const Char>& GetName() const
Added:
void PrivateInitName(const Char* name);
Added:
Result<void> Then(JobInterface* next, JobQueueInterface* queue = JOBQUEUE_CURRENT)
static const JobQueueInterface::Current JOBQUEUE_CURRENT
Equivalent to calling GetDestinationQueue(), you just save a function call.
Definition: jobqueue.h:377
Added
jobgroup.h.h
Added:
WILL_RUN_FINALIZER
A single-threaded finalizer will run after waiting for the group.
Definition: jobgroup.h:1
Added:
MAXON_METHOD void AlwaysUseCurrentThread(UInt ownerId);
maxon::UInt UInt
Definition: ge_sys_math.h:65
Added:
MAXON_METHOD void AlwaysUseCurrentThread(UInt ownerId);
Added:
MAXON_METHOD void SetIdleSpinTime(UInt ownerId, TimeValue spinTime);
Added:
NO_EXCLUSIVE_RESOURCE = 8, ///< support cancellation etc. but do not span an exclusive resource around the lazy init threaded and all its sub-jobs
NO_EXCLUSIVE_RESOURCE
support cancellation etc. but do not span an exclusive resource around the lazy init threaded and all...
Definition: lazyinitthreaded.h:5
Added:
MAXON_FUNCTION UniqueHash GetUniqueHashCode() const
Added:
UniqueHash GetUniqueHashCode() const
Added:
MAXON_METHOD UniqueHash GetUniqueHashCode() const;
Added:
MAXON_METHOD Result<Block<Char>> Disconnect();
Added:
Block<const Char> ToBlock() const
Block< T > ToBlock(T(&array)[N])
Definition: block.h:950
Added:
PRIVATE_GARBAGE
Definition: system.h:6
Added
maxon::JOBOPTIONFLAGS
Added:
CONTINUATION = 4 ///< The job is a continuation and hence it must not have dependencies and somebody who didn't enqueue it might wait for it.
Added:
File added
Added
CONVERTTOUINAMEFLAGS
Added:
DONTADDDATABASE = 1 << 4, ///< Don't add the Database name in brackets behind the name.
DONTADDDATABASE
Don't add the Database name in brackets behind the name.
Definition: url.h:5
Added:
MAXON_METHOD Result<void> SetPath(const String& path, Bool convertWindowsBackslashes);
Added:
MAXON_METHOD CString ToCString() const;
Added:
MAXON_FUNCTION UniqueHash GetUniqueHashCode() const;
Added:
explicit Url(const CString& urlString)
Added:
MAXON_METHOD UniqueHash GetUniqueHashCode() const;
Added:
using UIntVector32 = Vec3<UInt32, 1>;
Vec3< UInt32, 1 > UIntVector32
Definition: vector.h:64
Added:
UniqueHash GetUniqueHashCode() const
Added:
UniqueHash GetUniqueHashCode() const
Added
math/colh.h
Added:
static constexpr Bool TriviallyHashable()
Added
math/colh.h
Added:
static constexpr Bool TriviallyHashable()
Added
math/colh.h
Added:
UniqueHash GetUniqueHashCode() const
Added
math/colh4.h
Added:
static constexpr Bool TriviallyHashable()
Added
math/colh4.h
Added:
UniqueHash GetUniqueHashCode() const
Added:
static constexpr Bool TriviallyHashable()
Added:
UniqueHash GetUniqueHashCode() const
Added:
static constexpr Bool TriviallyHashable()
Added:
UniqueHash GetUniqueHashCode() const
Added:
static constexpr Bool TriviallyHashable()
Added:
UniqueHash GetUniqueHashCode() const
Added:
UniqueHash GetUniqueHashCode() const
Added:
#define MAXON_OPERATOR_HASH(T, ...)
Added:
HashInt Finalize() const
Added:
HashInt Finalize() const
Added:
struct UniqueHash
Added:
class alignas(64) UniqueHasher
Old:
#define MAXON_API_ABI_VERSION 25004
New:
#define MAXON_API_ABI_VERSION 2022901
Old:
#define MAXON_CORE_FRAMEWORK_VERSION 26000
New:
#define MAXON_CORE_FRAMEWORK_VERSION 2022901
Old:
MAXON_METHOD Result<void> PrivateInsert(Int index, const StridedBlock<const TYPE>& values, Bool move);
New:
MAXON_METHOD Result<void> PrivateInsert(Int index, const StridedBlock<const TYPE>& values, Bool move, COLLECTION_RESIZE_FLAGS resizeFlags = COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY);
ON_GROW_RESERVE_CAPACITY
Allocate some extra capacity (based on ComputeArraySize()).
Definition: collection.h:5
Old:
MAXON_METHOD Result<void> PrivateInsert(Int index, const StridedBlock<const TYPE>& values, Bool move);
New:
MAXON_METHOD Result<void> PrivateInsert(Int index, const StridedBlock<const TYPE>& values, Bool move, COLLECTION_RESIZE_FLAGS resizeFlags = COLLECTION_RESIZE_FLAGS::ON_GROW_RESERVE_CAPACITY);
Old:
static MAXON_METHOD Result<ArrayInterface<Generic>*> NewBaseArray(const DataType& elementType, const Generic* src, Bool move);
New:
static MAXON_METHOD Result<Array<Generic>::NonConst> NewBaseArray(const DataType& elementType, const Generic* src, Bool move);
Old:
static Result<ArrayInterface<Generic>*> NewBaseArray(const DataType& type, Int size = 0, COLLECTION_RESIZE_FLAGS flags = COLLECTION_RESIZE_FLAGS::DEFAULT)
PyCompilerFlags * flags
Definition: ast.h:14
DEFAULT
Default.
Definition: lib_ca.h:4
New:
static Result<Array<Generic>::NonConst> NewBaseArray(const DataType& type, Int size = 0, COLLECTION_RESIZE_FLAGS flags = COLLECTION_RESIZE_FLAGS::DEFAULT)
Old:
static MAXON_METHOD Result<ArrayInterface<Generic>*> NewBaseArrayFromContainerType(const ContainerDataType<>& containerType, const Generic* src, Bool move);
New:
static MAXON_METHOD Result<Array<Generic>::NonConst> NewBaseArrayFromContainerType(const ContainerDataType<>& containerType, const Generic* src, Bool move);
Old:
template <typename T> static Result<Array<T>> NewBaseArray()
New:
template <typename T> static Result<typename Array<T>::NonConst> NewBaseArray()
Old:
template <typename T> static Result<Array<T>> NewBaseArray(const BaseArray<T>& src)
New:
template <typename T> static Result<typename Array<T>::NonConst> NewBaseArray(const BaseArray<T>& src)
Old:
template <typename T> static Result<Array<T>> NewBaseArray(BaseArray<T>&& src)
New:
template <typename T> static Result<typename Array<T>::NonConst> NewBaseArray(BaseArray<T>&& src)
Old:
static MAXON_METHOD Result<ArrayInterface<Generic>*> NewBlockArray(const DataType& elementType, const Generic* src, Bool move);
New:
static MAXON_METHOD Result<Array<Generic>::NonConst> NewBlockArray(const DataType& elementType, const Generic* src, Bool move);
Old:
template <typename T> static Result<Array<T>> NewBlockArray()
New:
template <typename T> static Result<typename Array<T>::NonConst> NewBlockArray()
Old:
static MAXON_METHOD Result<Array<Generic>> NewPagedArray(const DataType& elementType, const Generic* defaultValue = nullptr, Bool useRefCountForDefault = false);
New:
static MAXON_METHOD Result<Array<Generic>::NonConst> NewPagedArray(const DataType& elementType, const Generic* defaultValue = nullptr, Bool useRefCountForDefault = false);
Old:
static MAXON_METHOD Result<Array<Generic>> NewPagedArrayFromContainerType(const ContainerDataType<>& containerType, const Generic* defaultValue = nullptr, Bool useRefCountForDefault = false);
New:
static MAXON_METHOD Result<Array<Generic>::NonConst> NewPagedArrayFromContainerType(const ContainerDataType<>& containerType, const Generic* defaultValue = nullptr, Bool useRefCountForDefault = false);
Old:
template <typename T> static Result<Array<T>> NewPagedArray()
New:
template <typename T> static Result<typename Array<T>::NonConst> NewPagedArray()
Old:
static MAXON_METHOD Result<Array<Generic>> PrivateNewPagedArrayFromBase(const Array<Generic>& base, const Generic* defaultValue = nullptr, Bool useRefCountForDefault = false);
int base
Definition: abstract.h:611
New:
static MAXON_METHOD Result<Array<Generic>::NonConst> PrivateNewPagedArrayFromBase(const Array<Generic>& base, const Generic* defaultValue = nullptr, Bool useRefCountForDefault = false);
Old:
template <typename T> static Result<Array<T>> PrivateNewPagedArrayFromBase(const Array<T>& base)
New:
template <typename T> static Result<typename Array<T>::NonConst> PrivateNewPagedArrayFromBase(const Array<T>& base)
Old:
Result<void> PrivateInsert(Int index, const StridedBlock<const ValueType>& values, Bool move)
New:
Result<void> PrivateInsert(Int index, const StridedBlock<const ValueType>& values, Bool move, COLLECTION_RESIZE_FLAGS resizeFlags)
Old:
Result<Int> InitIterator(ViewIteratorMember* members, const MemberMap* map, Char* state, PersistentIdBuffer* idBuffer, Bool constAccess = false) const
BufferedBaseArray< Int64, 10 > PersistentIdBuffer
Definition: containerbase.h:26
Definition: grammar.h:37
New:
Result<Int> InitIterator(ViewIteratorMember* members, const MemberMap* map, Char* state, PersistentIdBuffer* idBuffer, Bool constAccess) const
Old:
MAXON_ATTRIBUTE_FORCE_INLINE ResultRef<T> Append()
New:
template <typename ARG> MAXON_ATTRIBUTE_FORCE_INLINE ResultRef<T> Append(ARG&& x)
PyObject * x
Definition: bytesobject.h:38
Old:
MAXON_ATTRIBUTE_FORCE_INLINE ResultRef<T> Append(const T& x)
New:
template <typename... ARGS> MAXON_ATTRIBUTE_FORCE_INLINE typename std::enable_if<sizeof...(ARGS) != 1, ResultRef<T>>::type Append(ARGS&&... args)
PyObject * args
Definition: abstract.h:159
Old:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> Append(const Block<const T>& values)
New:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> AppendBlock(const Block<const T>& values)
Old:
ResultPtr<T> Append(const MoveBlock<T>& values)
New:
MAXON_ATTRIBUTE_FORCE_INLINE ResultPtr<T> AppendBlock(const MoveBlock<T>& values)
Old:
MAXON_ATTRIBUTE_FORCE_INLINE ResultRef<T> Append()
MAXON_ATTRIBUTE_FORCE_INLINE ResultRef<T> Append(const T& x)
MAXON_ATTRIBUTE_FORCE_INLINE ResultRef<T> Append(T&& x)
New:
template <typename ARG> MAXON_ATTRIBUTE_FORCE_INLINE ResultRef<T> Append(ARG&& x),
template <typename... ARGS> MAXON_ATTRIBUTE_FORCE_INLINE typename std::enable_if<sizeof...(ARGS) != 1, ResultRef<T>>::type Append(ARGS&&... args)
Old:
BaseListNode() : _data()
explicit BaseListNode(const T& src) : _data(src)
explicit BaseListNode(T&& src) : _data(std::move(src))
Definition: apibase.h:541
New:
MAXON_IMPLICIT template <typename... ARGS> BaseListNode(ARGS&&... args) : _data(std::forward<ARGS>(args)...)
Updated
blockist.h
Old:
operator typename std::conditional<STRIDED || STD_IS_REPLACEMENT(const, T), DeleteReturnType02, Block<const T, true, MOVE>>::type() const
New:
operator typename std::conditional<STRIDED || CONSTBLOCK, DeleteReturnType02, Block<const T, true, MOVE>>::type() const
Updated
blockist.h
Old:
operator typename std::conditional<STD_IS_REPLACEMENT(const, T), DeleteReturnType03, const Block<const T, STRIDED, MOVE>&>::type() const
New:
operator typename std::conditional<CONSTBLOCK, DeleteReturnType03, const Block<const T, STRIDED, MOVE>&>::type() const
Updated
blockist.h
Old:
operator typename std::conditional<STRIDED || !MOVE || STD_IS_REPLACEMENT(const, T), DeleteReturnType05, Block<const T, true, false>>::type() const
New:
operator typename std::conditional<STRIDED || !MOVE || CONSTBLOCK, DeleteReturnType05, Block<const T, true, false>>::type() const
Updated
blockist.h
Old:
operator typename std::conditional<!MOVE || STD_IS_REPLACEMENT(const, T), DeleteReturnType06, const Block<const T, STRIDED, false>&>::type() const
New:
operator typename std::conditional<!MOVE || CONSTBLOCK, DeleteReturnType06, const Block<const T, STRIDED, false>&>::type() const
Old:
Int GetBlock(Int index, Block<T, false>& block)
New:
Int GetBlock(Int index, typename std::conditional<CONSTBLOCK, DeleteReturnType01, Block<T, false>&>::type block) const
Old:
Int GetBlock(Int index, StridedBlock<T>& block)
New:
Int GetBlock(Int index, typename std::conditional<CONSTBLOCK, DeleteReturnType02, StridedBlock<T>&>::type block) const
Old:
MAXON_METHOD HashValue GetHashValue() const;
New:
MAXON_METHOD UniqueHash GetUniqueHashCode() const;
Old:
MAXON_ATTRIBUTE(Id, CLASSIFICATION, "net.maxon.description.data.info.classification",
RESOURCE_DEFINE(ENUM_UNCLASSIFIED, Id("unclassified"))
RESOURCE_DEFINE(ENUM_NODE, Id("node"))
RESOURCE_DEFINE(ENUM_ATTRIBUTE, Id("attribute"))
RESOURCE_DEFINE(ENUM_PORTBUNDLE, Id("portbundle"))
RESOURCE_DEFINE(ENUM_TYPE, Id("type"))
RESOURCE_DEFINE(ENUM_ATTRIBUTE_TEMPLATES, Id("attribute_templates"))
RESOURCE_DEFINE(ENUM_DATATYPE_TEMPLATE, Id("datatype_template")));
#define RESOURCE_DEFINE(ID, VAL)
Definition: fid.h:103
New:
MAXON_ATTRIBUTE(Id, CLASSIFICATION, "net.maxon.description.data.info.classification",
RESOURCE_DEFINE(ENUM_UNCLASSIFIED, Id("unclassified"))
RESOURCE_DEFINE(ENUM_NODE, Id("node"))
RESOURCE_DEFINE(ENUM_ATTRIBUTE, Id("attribute"))
RESOURCE_DEFINE(ENUM_PORTBUNDLE, Id("portbundle"))
RESOURCE_DEFINE(ENUM_TYPE, Id("type"))
RESOURCE_DEFINE(ENUM_ATTRIBUTE_TEMPLATES, Id("attribute_templates"))
RESOURCE_DEFINE(ENUM_DESCRIPTION_TEMPLATE, Id("description_template")));
Old:
class DataDescriptionDefinitionInterface : MAXON_INTERFACE_BASES(ObserverObjectInterface)
#define MAXON_INTERFACE_BASES(...)
Definition: objectbase.h:1062
New:
class DataDescriptionDefinitionInterface : MAXON_INTERFACE_BASES(ObjectInterface)
Old:
static MAXON_METHOD Result<void> RegisterDatabaseWithUrl(const Id& databaseId, const Url& url, const CString& version);
New:
static MAXON_METHOD Result<void> RegisterDatabaseWithUrl(const Id& databaseId, const Url& url, const CString& version = CString::NullValue());
T NullValue()
Definition: nullvalue.h:210
Old:
MAXON_DATATYPE(HashValue, "net.maxon.datatype.hash");
#define MAXON_DATATYPE(type, id)
Definition: datatype.h:295
New:
MAXON_DATATYPE(UniqueHash, "net.maxon.datatype.hash");
Old:
const Generic* GetDefaultValue() const;
New:
const Generic* GetNullValue() const
Old:
HashValue GetHashValue(const void* s1) const
New:
UniqueHash GetUniqueHashCode(const void* s1) const
Old:
ConstDataPtr GetDefaultValue() const;
New:
ConstDataPtr GetNullValue() const;
Old:
static HashValue GetHashValue(const DataTypeImpl*, const void* s1)
New:
static UniqueHash GetUniqueHashCode(const DataTypeImpl*, const void* s1)
Old:
const HashValue& GetHashValue() const
New:
const UniqueHash& GetUniqueHashCode() const
Old:
class ThreadCancelledErrorInterface : MAXON_INTERFACE_BASES(ErrorInterface)
New:
class OperationCancelledErrorInterface : MAXON_INTERFACE_BASES(ErrorInterface)
Old:
static MAXON_METHOD Result<OutputStreamRef> CreateCStringOutputStream(CString& str, Int maxLength);
New:
static MAXON_METHOD Result<OutputStreamRef> CreateCStringOutputStream(CString& str, Int maxLength = LIMIT<Int>::MAX);
Definition: apibasemath.h:34
Old:
MAXON_METHOD Result<Bool> Detect(const Url& url, const InputStreamRef& probeStream) const;
New:
MAXON_METHOD Result<Bool> Detect(const Url& url, const InputStreamRef& probeStream, FILEFORMATDETECTIONFLAGS flags) const;
Old:
MAXON_METHOD Result<Bool> DetectFile(const Url& url, const Block<const DataType>& limitDetection);
New:
MAXON_METHOD Result<Bool> DetectFile(const Url& url, FILEFORMATDETECTIONFLAGS flags, const Block<const DataType>& limitDetection);
Old:
template <typename... LIMITTYPES> MAXON_WARN_UNUSED MAXON_FUNCTION Result<Bool> DetectFile(const Url& url);
#define MAXON_WARN_UNUSED
Definition: compilerdetection.h:291
New:
template <typename... LIMITTYPES> MAXON_WARN_UNUSED MAXON_FUNCTION Result<Bool> DetectFile(const Url& url, FILEFORMATDETECTIONFLAGS flags);
Old:
template <typename... LIMITTYPES> MAXON_WARN_UNUSED
static MAXON_FUNCTION Result<BaseArray<FileFormatHandler>> DetectAll(const Url& url, const DetectedCallback& detectedCallback);
New:
template <typename... LIMITTYPES> MAXON_WARN_UNUSED
static MAXON_FUNCTION Result<BaseArray<FileFormatHandler>> DetectAll(const Url& url, FILEFORMATDETECTIONFLAGS flags, const DetectedCallback& detectedCallback);
Old:
template <typename... LIMITTYPES> MAXON_WARN_UNUSED
static MAXON_FUNCTION Result<FileFormatHandler> Detect(const Url& url);
New:
template <typename... LIMITTYPES> MAXON_WARN_UNUSED
static MAXON_FUNCTION Result<FileFormatHandler> Detect(const Url& url, FILEFORMATDETECTIONFLAGS flags = FILEFORMATDETECTIONFLAGS::NONE);
NONE
The command asset state is not defined.
Definition: asset_command.h:0
Old:
#define MAXON_CHECK_CLASS(Name) static_assert(STD_IS_REPLACEMENT(same, const Name, const PRIVATE_MAXON_ALLOC_TYPENAME std::remove_pointer<decltype(this)>::type), "Macro parameter " #Name " doesn't match class.")
New:
#define MAXON_CHECK_CLASS(Name) static_assert(STD_IS_REPLACEMENT(same, const Name, const typename std::remove_pointer<decltype(this)>::type), "Macro parameter " #Name " doesn't match class.")
Old:
MAXON_METHOD Result<ObjectInterface*> CreatePointer(Int size) const;
New:
MAXON_METHOD Result<ObjectInterface*> CreatePointer(Int size = -1) const;
Old:
MAXON_METHOD HashValue GetHashValueImpl() const;
New:
MAXON_METHOD UniqueHash GetUniqueHashCodeImpl() const;
Old:
MAXON_INTERFACE(ProgressInterface, MAXON_REFERENCE_NORMAL, "net.maxon.image.interface.mediasessionprogress");
#define MAXON_REFERENCE_NORMAL(FREEIMPL)
Definition: interfacebase.h:1173
#define MAXON_INTERFACE(Name, REFKIND, ID)
Definition: objectbase.h:1133
New:
MAXON_INTERFACE(ProgressInterface, MAXON_REFERENCE_NORMAL, "net.maxon.interface.progress");
Old:
MAXON_METHOD Result<Int> AddProgressJob(const Float jobWeight, const String& jobName);
New:
MAXON_METHOD Result<Int> AddProgressJob(Float jobWeight, const String& jobName);
Old:
static MAXON_METHOD void _ConsoleOutput(const Char* s, const SourceLocation& loc, OUTPUT flags);
PyObject PyObject const char const char char ** s
Definition: bytesobject.h:60
OUTPUT
Output flags for OutputWithFlags and DebugOutput.
Definition: debugdiagnostics.h:53
void _ConsoleOutput(OUTPUT flags, const Char *str, Int line, const Char *file)
New:
static MAXON_METHOD void _ConsoleOutput(const Char* s, const SourceLocation& loc, OUTPUT flags = OUTPUT::NONE);
Old:
#define MAXON_OPERATOR_EQUALITY_HASHCODE(T, ...) maxon::Bool operator ==(const T& other) const { return (this == &other) || (MAXON_MAKE_LIST(PRIVATE_MAXON_EQUALITY_OPERATORS, , &&, , __VA_ARGS__)); } \
maxon::Bool operator !=(const T& other) const { return !this->operator ==(other); } \
maxon::HashInt GetHashCode() const { return MAXON_HASHCODE(__VA_ARGS__); }
New:
#define MAXON_OPERATOR_EQUALITY_HASHCODE(T, ...) MAXON_OPERATOR_EQUALITY(T, __VA_ARGS__) MAXON_OPERATOR_HASH(T, __VA_ARGS__)
Old:
struct DefaultHash
New:
class DefaultHasher
Old:
MAXON_IMPLICIT DefaultHash(HashInt start = EMPTY_HASH)
PyObject PyObject Py_ssize_t start
Definition: complexobject.h:62
New:
MAXON_IMPLICIT DefaultHasher(HashInt start = EMPTY_HASH)
Old:
struct FNV1aHash
New:
class FNV1aHasher
Removed:
static const LiteralId UPDATER{"net.maxon.application.updater"};
UPDATER
Online updater. The Online updater only loads a limited subset of libraries.
Definition: ge_prepass.h:4
Removed:
Result<GenericContainerInterface*> Clone(Bool copyContent) const
Removed:
V_ARRAY = 32, // #LEGACYCOMPATIBILITY: remove
Removed:
[[deprecated]] MAXON_METHOD Result<GenericContainerInterface*> Clone(Bool copyContent = true) const;
Removed:
[[deprecated("only needed internally")]] static MAXON_METHOD Result<void> StoreDescription(const Id& category, const LanguageRef& language, const Id& dataType, DataDescription& description);
Removed:
[[deprecated("only needed internally")]] static MAXON_METHOD Result<void> StoreDescription(const Id& category, const LanguageRef& language, const IdAndVersion& dataType, DataDescription& description);
Tuple< Id, Id > IdAndVersion
IdAndVersion is used for assets to store the asset id (first) and version (second) in a single tuple.
Definition: idandversion.h:13
Removed:
[[deprecated("only needed internally")]] static MAXON_METHOD Result<DataDescription> UpdateDescriptionI(const Id& databaseId, const Id& category,
const LanguageRef& language, DataDescriptionDefinition& descRef, const IdAndVersion& dataType);
Removed:
static MAXON_METHOD Result<void> RegisterDatabaseWithUrl(const Id& databaseId, const Url& url);
Removed:
[[deprecated]] static MAXON_METHOD ConstDataPtr GetConstant(const DataType& type, Int value);
Removed:
static MAXON_METHOD const Generic* PrivateGetDefault(const DataTypeImpl* type);
Removed:
HashInt GetHashCode() const
Removed:
static MAXON_METHOD Result<OutputStreamRef> CreateCStringOutputStream(CString& str);
Removed:
[[deprecated("Use HashMap::GetEntry")]] static const Entry* Get(const V* value)
const Class< R > & Get(const Id &cls)
Definition: objectbase.h:2073
Removed:
[[deprecated("Use HashMap::GetEntry")]] static Entry* Get(typename std::remove_const<V>::type* value)
Removed:
MAXON_METHOD Result<ObjectInterface*> CreatePointer(Int size) const;
Removed
maxon::System:
Removed:
static MAXON_METHOD void _ConsoleOutput(const Char* s, const SourceLocation& loc);
Removed:
emplate <typename T> static MAXON_FUNCTION void FreeWithDestructor(T* object, void (*destructor)(T*))
void(* destructor)(PyObject *)
Definition: object.h:180

corenodes.framework

Added:
MAXON_METHOD Result<void> ConvertAndInvoke(const Block<const Tuple<TrivialDataPtr, CORENODE_PORT_FLAGS>>& args) const;
Added
corencorenodes_helpers.h
Added:
CONTROL_BLOCK = 0x0200,
CONTROL_BLOCK
Definition: corenodes_helpers.h:36
Added:
Extensive changes, see enum documenation in maxon::MicroNode.
Added:
Extensive changes, see enum documenation in maxon::MicroNode.
Added:
MAXON_FUNCTION Result<InPortId> Export(const InPortId& parentPort, WIRETYPE wires = WIRETYPE::DEFAULT_INPUT, MicroNode::FLAGS flags = MicroNode::FLAGS::NONE)
DEFAULT_INPUT
Definition: corenodes_helpers.h:65
WIRETYPE
Definition: corenodes_helpers.h:40
Added:
MAXON_FUNCTION Result<OutPortId> Export(const OutPortId& parentPort, WIRETYPE wires = WIRETYPE::DEFAULT_OUTPUT, MicroNode::FLAGS flags = MicroNode::FLAGS::NONE)
DEFAULT_OUTPUT
Definition: corenodes_helpers.h:66
Old:
MAXON_METHOD HashValue GetHashValue() const;
New:
MAXON_METHOD UniqueHash GetUniqueHashCode() const;
Old:
MAXON_FUNCTION Result<InPortId> Export(const InPortId& parentPort, WIRETYPE wires = WIRETYPE::DEFAULT_INPUT, ACCESS_INDEX index = ACCESS_INDEX::UNUSED, const DataType& type = DataType::NullValue(), MicroNode::FLAGS flags = MicroNode::FLAGS::NONE)
UNUSED
Configuration value was not used by or known to the application. This is e.g. true for environment va...
Definition: configuration.h:0
ACCESS_INDEX
Definition: corenodes_helpers.h:26
New:
MAXON_FUNCTION Result<InPortId> Export(const InPortId& parentPort, WIRETYPE wires, ACCESS_INDEX index, const DataType& type = DataType::NullValue(), MicroNode::FLAGS flags = MicroNode::FLAGS::NONE)
Old:
MAXON_FUNCTION Result<OutPortId> Export(const OutPortId& parentPort, WIRETYPE wires = WIRETYPE::DEFAULT_OUTPUT, ACCESS_INDEX index = ACCESS_INDEX::UNUSED, const DataType& type = DataType::NullValue(), MicroNode::FLAGS flags = MicroNode::FLAGS::NONE)
New:
MAXON_FUNCTION Result<OutPortId> Export(const OutPortId& parentPort, WIRETYPE wires, ACCESS_INDEX index, const DataType& type = DataType::NullValue(), MicroNode::FLAGS flags = MicroNode::FLAGS::NONE)
Old:
#define MAXON_PORT_INPUT(T, name) PRIVATE_MAXON_INPUT_PORT(T, name, maxon::corenodes::MicroNode::FLAGS::NONE, false, -1)
New:
#define MAXON_PORT_INPUT(T, name, ...) PRIVATE_MAXON_INPUT_PORT(T, name, maxon::corenodes::MicroNode::FLAGS{__VA_ARGS__}, false, -1)
Old:
#define MAXON_PORT_OUTPUT(T, name) PRIVATE_MAXON_OUTPUT_PORT(T, name, VariableMicroNode, maxon::corenodes::MicroNode::FLAGS::NONE, false, -1)
New:
#define MAXON_PORT_OUTPUT(T, name, ...) PRIVATE_MAXON_OUTPUT_PORT(T, name, VariableMicroNode, maxon::corenodes::MicroNode::FLAGS{__VA_ARGS__}, false, -1)

exchange.framework

Added:
namespace STANDARD
STANDARD
Create standard material.
Definition: lib_substance.h:0
Added:
// Link to a texture or the polypaint if any have been imported
Col3< Float64, 1 > Color64
Definition: vector.h:80
DIFFUSE
Definition: lib_substance.h:0
Added:
// normal map texture
Col4< Float64, 1 > ColorA64
Definition: vector4d.h:56
NORMAL
Definition: lib_birender.h:2
Added:
// Displacement hieght parameter.
MAXON_ATTRIBUTE(Float, DISPLACEMENT_HEIGHT, "displacement.height");
Added:
// Number of subdivision for the displacement
MAXON_ATTRIBUTE(Int, DIPLACEMENT_SUBDIVISIONLEVEL, "diplacement.subdivisionlevel");
Added:
// Displacement map
DISPLACEMENT
Definition: lib_substance.h:10
Added:
BASIC
Enum value for BasicMicroNode.
Definition: corenodes_instances.h:3
void Group
special datatype for groups.
Definition: fid.h:112

geom.framework

Added:
template <typename INDEXTYPE, typename COUNT>
inline INDEXTYPE GetPredecessor(INDEXTYPE index, COUNT vertexCount)
COUNT
Length of the arrays changed.
Definition: c4d_baseeffectordata.h:3
INDEXTYPE GetPredecessor(INDEXTYPE index, COUNT vertexCount)
< 2d Tangent basic data type
Definition: simplemesh.h:136
Added:
template <typename INDEXTYPE, typename COUNT>
inline INDEXTYPE GetSuccessor(INDEXTYPE index, COUNT vertexCount)
INDEXTYPE GetSuccessor(INDEXTYPE index, COUNT vertexCount)
Definition: simplemesh.h:148

graph.framework

Added:
static constexpr Bool TriviallyHashable() { return true; }
Added:
UniqueHash GetUniqueHashCode() const
Added:
MAXON_METHOD Result<GraphNode> GetNode(const PathBlock& path, Bool filtered = true);
GvNode * GetNode(GeListNode *bn)
Definition: c4d_graphview.h:2795
Block< const InternedId > PathBlock
A PathBlock is a Block of identifiers to be used as path into a graph, see NodePath.
Definition: nodepath.h:58
Added:
MAXON_METHOD Int GetTransactionCount();
Added:
MAXON_METHOD Result<GraphNode> AddChild(const Id& childId, const Id& nodeId, const DataDictionary& args = DataDictionary::NullValue());
Added:
MAXON_METHOD const Data* GetUserState(const NodePath& path, const InternedId& attr);
Added:
MAXON_METHOD Result<GraphNode> GetNode(const PathBlock& path, Bool filtered = true);
Added:
MAXON_METHOD Result<void> RemovePorts(const GraphNode& parent, const Block<const InternedId>& ports);
Added:
MAXON_METHOD Result<BaseArray<GraphNode>> AddPorts(const GraphNode& parent, Int index, Int count);
Added:
MAXON_METHOD Result<Bool> PrivateGetConnections(const GraphNode& node, PORT_DIR dir, const ValueReceiver<const GraphConnection&>& callback, Wires inputMask, Wires outputMask, GraphModelInterface::GET_CONNECTIONS_MODE mode);
const wchar_t * mode
Definition: fileutils.h:96
PORT_DIR
Definition: graph_basics.h:34
Definition: node.h:10
PyObject * callback
Definition: weakrefobject.h:59
Added:
UniqueHash GetUniqueHashCode() const
Old:
MAXON_METHOD Result<Bool> GetModificationsSince(TimeStamp stamp, const ValueReceiver<const GraphNode&, MODIFIED>& receiver);
UInt64 TimeStamp
Definition: graph.h:17
New:
MAXON_METHOD Result<Bool> GetModificationsSince(TimeStamp stamp, const ValueReceiver<const GraphNode&, MODIFIED>& receiver, Bool filtered = true);
Old:
[[deprecated]] MAXON_METHOD Result<void> CommitImpl(const DataDictionary& userData, Int nesting);
void * userData
Definition: fileobject.h:20
New:
MAXON_METHOD Result<void> CommitImpl(const DataDictionary& userData, Int nesting, Bool validate);
Removed:
MAXON_METHOD UInt GetNodeHashCode(const GraphNode& node);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<Bool> IsSelected(const GraphNode& node);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<GraphNode> CreateOutputPort(const GraphNode& node, const CString& id, const String& name = String("Output"));
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<GraphNode> CreateInputPort(const GraphNode& node, const CString& id, const String& name = String("Input"));
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> GetDirectPredecessors(const GraphNode& node, const ValueReceiver<const GraphNode&>& callback, const NODE_KIND& filter);
NODE_KIND
Definition: nodepath.h:25
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> GetAllPredecessors(const GraphNode& node, const ValueReceiver<const GraphNode&>& callback, const NODE_KIND& filter);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> GetDirectSuccessors(const GraphNode& node, const ValueReceiver<const GraphNode&>& callback, const NODE_KIND& filter);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> GetAllSuccessors(const GraphNode& node, const ValueReceiver<const GraphNode&>& callback, const NODE_KIND& filter);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<Bool> IsConnectedTo(const GraphNode& node, const GraphNode& port);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> MuteConnectionWith(const GraphNode& node, const GraphNode& port);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> MuteAllConnections(const GraphNode& node, const PORT_DIR& direction);
PyObject Py_ssize_t Py_ssize_t int direction
Definition: unicodeobject.h:916
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> UnmuteConnectionWith(const GraphNode& node, const GraphNode& port);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> UnmuteAllConnections(const GraphNode& node, const PORT_DIR& direction);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<Bool> RemoveAllConnections(const GraphNode& node);
Removed:
MAXON_METHOD Result<GraphNode> AddChild(const Id& childId, const Id& nodeId, const DataDictionary& args = DataDictionary::NullValue());
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> SelectWire(const NodePath& src, const NodePath& dst);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> DeselectWire(const GraphNode& src, const GraphNode& dst);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> GetSelectedWires(const ValueReceiver<const GraphNode&, const GraphNode&, const Wires&>& callback);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> DeselectTrueNode(const GraphNode& node);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> DeselectPort(const GraphNode& port);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> SelectNode(const GraphNode& node);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> DeselectNode(const GraphNode& node);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> ListAllNodes(const ValueReceiver<const GraphNode&>& callback, const DataDictionary& matchingData);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<Bool> IsTrueNodeSelected(const GraphNode& node);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<Bool> IsPortSelected(const GraphNode& port);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<Bool> IsWireSelected(const NodePath& src, const NodePath& dst);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> SelectWire(const GraphNode& src, const GraphNode& dst);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> SelectTrueNode(const GraphNode& node);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> GetSelectedTrueNodes(const ValueReceiver<const GraphNode&>& callback);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> SelectPort(const GraphNode& port);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> GetSelectedPorts(const ValueReceiver<const GraphNode&>& callback);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> GetSelectedNodes(const ValueReceiver<const GraphNode&>& callback, const NODE_KIND &kind);
enum PyUnicode_Kind kind
Definition: unicodeobject.h:669
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> DeselectAll(const NODE_KIND &kind);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> RemoveAllConnections(const GraphNode &src, const GraphNode &dst);
Removed:
MAXON_METHOD const Data* GetUserState(const NodePath& path, const InternedId& attr);
Removed:
MAXON_METHOD Int GetTransactionCount();
Removed:
MAXON_METHOD Result<void> CommitImpl(const DataDictionary& userData, Int nesting, Bool validate);
Removed:
MAXON_METHOD Result<BaseArray<GraphNode>> AddPorts(const GraphNode& parent, Int index, Int count);
Removed:
MAXON_METHOD Result<void> RemovePorts(const GraphNode& parent, const Block<const InternedId>& ports);
Removed:
MAXON_METHOD Result<Bool> PrivateGetConnections(const GraphNode& node, PORT_DIR dir, const ValueReceiver<const GraphConnection&>& callback, Wires inputMask, Wires outputMask, GraphModelInterface::GET_CONNECTIONS_MODE mode);
Removed:
MAXON_METHOD Result<GraphNode> GetNode(const PathBlock& path, Bool filtered = true);
Removed:
MAXON_METHOD Result<Bool> GetModificationsSince(TimeStamp stamp, const ValueReceiver<const GraphNode&, MODIFIED>& receiver, Bool filtered);
Removed:
[[deprecated("Use GraphModelHelper static functions")]] MAXON_METHOD Result<void> FindAllGraphNodeByName(const String& nodeName, const ValueReceiver<const GraphNode&>& callback, const NODE_KIND &kind = NODE_KIND::ALL_MASK, const PORT_DIR direction = PORT_DIR::INPUT);
ALL_MASK
A mask containing all possible MODIFIED bits.
Definition: graph.h:43
INPUT
Definition: parametertype.h:1
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<Bool> IsSelected() const
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<typename SFINAEHelper<GraphNode, BASE>::type> CreateOutputPort(const CString& id, const String& name = String("Output"))
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<typename SFINAEHelper<GraphNode, BASE>::type> CreateInputPort(const CString& id, const String& name = String("Input"))
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> GetDirectPredecessors(const ValueReceiver<const GraphNode&>& callback, NODE_KIND filter = NODE_KIND::NODE) const
NODE
Private - node parameter.
Definition: customgui_descproperty.h:21
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> GetAllPredecessors(const ValueReceiver<const GraphNode&>& callback, NODE_KIND filter = NODE_KIND::NODE) const
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> GetDirectSuccessors(const ValueReceiver<const GraphNode&>& callback, NODE_KIND filter = NODE_KIND::NODE) const
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> GetAllSuccessors(const ValueReceiver<const GraphNode&>& callback, NODE_KIND filter = NODE_KIND::NODE) const
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<Bool> IsConnectedTo(const GraphNode& port) const
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<Bool> IsConnectedTo(const String& portName) const
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<Bool> IsConnectedTo(const Id& portId) const
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> Connect(const GraphNode& dst, const String &portName )
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> Connect(const GraphNode& dst, const Id& portId)
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> MuteConnectionWith(const GraphNode& port)
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> MuteConnectionWith(const String& portName)
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> MuteConnectionWith(const Id& portId)
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> MuteAllConnections(PORT_DIR direction)
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> UnmuteConnectionWith(const GraphNode& port)
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> UnmuteConnectionWith(const String& portName)
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> UnmuteConnectionWith(const Id& portId)
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<void> UnmuteAllConnections(PORT_DIR direction)
Removed:
[[deprecated("Use GraphModelHelper static functions")]] Result<Bool> RemoveAllConnections()

image.framework

Added:
OCIO_CONFIG_PATH = 5 ///< Full path to the OCIO config file (empty if this is not an OCIO colorspace)
OCIO_CONFIG_PATH
Full path to the OCIO config file (empty if this is not an OCIO colorspace)
Definition: gfx_image_colorprofile.h:5
Added:
MAXON_METHOD UniqueHash GetUniqueHashCode() const;
Added:
MAXON_METHOD void GetOcioConfig(OcioConfig& config) const;
Removed:
// #LEGACYCOMPATIBILITY: remove and use GetImage instead
[[deprecated]] MAXON_METHOD Result<ImageBaseRef> GetImageRef(UpdateCacheDelegate&& updateDelegate) const;

math.framework

Added:
MAXON_METHOD UniqueHash GetUniqueHashCode() const;
Added:
KDTree(KDTree&& src);

misc.framework

Added:
File added.
Added:
using IconProvider = Delegate<Result<Url>(const CString&)>;
Delegate< Result< Url >(const CString &)> IconProvider
Definition: iconprovider.h:15
Added
maxon::IconProviders
Added:
MAXON_REGISTRY(IconProvider, IconProviders, "net.maxon.registry.iconproviders");
Added:
static const Id URLSCHEME_RAMDISK = Id("ramdisk");
static const Id URLSCHEME_RAMDISK
Scheme identifier for virtual file systems in RAM.
Definition: url.h:845
Added:
static MAXON_METHOD RamDiskRef FindExisting(const String& ramdiskId);
Added:
MAXON_METHOD Result<void> Init(const Url& sqlFile, const String& sqlDatabase);
Added:
MAXON_METHOD Result<void> ExecuteSQLQuery(const String& query, const Block<ConstDataPtr>& arguments = {}, Int64* insertId = nullptr, const ValueReceiver<BaseArray<Data>&&>& result = {}, const ValueReceiver<const String&>& columnTitles = {});
#define arguments(a0, a1, a2, a3, a4, a5, a6, a7)
Definition: Python-ast.h:668
PyObject PyObject * result
Definition: abstract.h:43
Added:
MAXON_METHOD Result<void> StartTransactions(const TimeValue& delayCommitTime, Int maxExecutes);
Added:
MAXON_DECLARATION(SqlDatabaseClasses::EntryType, SQLite, "net.maxon.sqldatabaseclass.sqlite");
Added:
MAXON_METHOD Result<void> CommitTransactions();
Old:
static MAXON_METHOD Result<FileMonitorItemRef> WatchDirectory(const Url& url, Observer&& observer);
New:
static MAXON_METHOD Result<FileMonitorItemRef> WatchDirectory(const Url& url, Bool watchSubtree, Observer&& observer);
Old:
using MySQLError = IllegalStateError;
New:
using SQLDatabaseError = IllegalStateError;
IllegalStateError SQLDatabaseError
A NetworkError indicates that a network function failed.
Definition: sqldatabase.h:25
Old:
MAXON_METHOD Result<void> QuerySQL(const String& query, Int64* insertId = nullptr, BaseArray<BaseArray<String>>* result = nullptr);
New:
MAXON_METHOD Result<void> QuerySQL(const String& query, Int64* insertId = nullptr, const ValueReceiver<const BaseArray<String>&>& result = {});
Delegate< Result< Bool >(T...)> ValueReceiver
Definition: delegate.h:888

neutron.framework

Added:
static constexpr Int32 ID_NBO_FORCE_DESC_DIRTY = 1054192;
static constexpr Int32 ID_NBO_FORCE_DESC_DIRTY
Definition: neutron_ids.h:28
Old:
using InstanceData = Tuple<BaseArray<Matrix>, BaseArray<Color64>, BaseArray<Int32>, BaseArray<HashValue>>;
Tuple< BaseArray< Matrix >, BaseArray< Color64 >, BaseArray< Int32 >, BaseArray< UniqueHash > > InstanceData
Definition: neutron_ids.h:32
New:
using InstanceData = Tuple<BaseArray<Matrix>, BaseArray<Color64>, BaseArray<Int32>, BaseArray<UniqueHash>>;

nodes.framework

Added:
NodeOrTemplate(const NodeTemplate& templ, const TemplateArguments& args)
Added:
MAXON_USING(GraphModelInterface::AddChild);
#define MAXON_USING(...)
Definition: interfacebase.h:1067
Added:
MAXON_METHOD Bool HasBase(const IdAndVersion& baseId) const;
Bool HasBase(const GraphNode &node, const Id &asset)
Definition: nodesgraph.h:587
Added:
UniqueHash GetUniqueHashCode() const
Added:
MAXON_METHOD Int GetTopologicalLayer(const PathBlock& port) const;
Old:
MAXON_METHOD Result<void> ReplaceChild(const GraphNode& childNode, const NodeSystem& base);
New:
MAXON_METHOD Result<void> ReplaceChild(const GraphNode& childNode, const NodeSystem& base, const HashMap<NodePath, NodePath>& portMap = GetZeroRef<HashMap<NodePath, NodePath>>());
Old:
static const GNodeHandle& NullValue()
New:
static MAXON_ATTRIBUTE_FORCE_INLINE const GNodeHandle& NullValue()
Old:
MAXON_METHOD AssetRepositoryRef GetTemplateLookupRepository();
New:
MAXON_METHOD const AssetRepositoryRef& GetTemplateLookupRepository();
Old:
[[deprecated("Use the other overload")]] MAXON_METHOD Result<MutableRoot> CreateInstance() const;
New:
MAXON_METHOD Result<MutableRoot> CreateInstance(const AssetRepositoryRef& repo) const;
Old:
[[deprecated("Use the other overload")]] MAXON_METHOD Result<NodeSystem> CreateCopyOfSelection(const NodePath& basePath, const Block<const InternedId>& selection) const;
New:
MAXON_METHOD Result<NodeSystem> CreateCopyOfSelection(const AssetRepositoryRef& repo, const NodePath& basePath, const Block<const InternedId>& selection) const;
Old:
class NodeSystemClassInterface : MAXON_INTERFACE_BASES(ObjectInterface)
New:
class NodeSystemClassInterface : MAXON_INTERFACE_BASES(NodeSystemDerivationHandlerInterface)
Old:
[[deprecated("Use the other overload")]] MAXON_METHOD Result<MutableRoot> DeprecatedCreateNodeSystem() const;
New:
MAXON_METHOD Result<MutableRoot> CreateNodeSystem(const AssetRepositoryRef& repo) const;
Old:
MAXON_METHOD Result<Bool> UpdateDerivedValue(const Port& port, VALUEMODE& outMode, Data& outValue) const;
VALUEMODE
This enum defines what kind of value a port has.
Definition: nodesystem.h:314
New:
MAXON_METHOD Result<Bool> OverrideDerivedValue(const Port& port, VALUEMODE& outMode, Data& outValue) const;
Old:
MAXON_METHOD Result<NodeSystem> GetNodeSystem(const NodeSystemClass& cls) const;
PyObject * cls
Definition: abstract.h:365
New:
MAXON_METHOD Result<NodeSystem> GetNodeSystem(const NodeSystemClass& cls, const AssetRepositoryRef& repo) const;
Removed:
MAXON_METHOD const NodeSystem& PrivateGetNodeSystem();
Removed:
MAXON_METHOD Result<GraphNode> AddChild(const Id& childId, const Id& nodeId, const DataDictionary& args = DataDictionary::NullValue());
Removed:
MAXON_METHOD Result<const MutableRoot&> GetMutableRoot();
Removed:
using InstantiateDelegateDeprecated = Delegate<Result<MutableRoot>(const InstantiationTrace& parent, const TemplateArguments& args)>;
Removed:
[[deprecated]] static MAXON_METHOD Result<NodeTemplate> CreateTemplateFromDelegate(const Id& nodeId, Bool cache, InstantiateDelegateDeprecated&& instantiate, Delegate<Result<Bool>(const NodeSystemClass& cls)>&& support = {});
Removed:
[[deprecated]] static MAXON_METHOD Result<NodeTemplate> CreateTemplateFromDelegate(const Id& nodeId, Bool cache, InstantiateDelegateDeprecated&& instantiate, Delegate<Result<Bool>(const NodeSystemClass& cls)>&& support = {});
Removed:
[[deprecated]] static MAXON_METHOD Result<void> PrivateInitFromPath(GNode& node, const NodeSystem& system, const NodePath& path, NODE_KIND check);
Removed:
[[deprecated]] static MAXON_METHOD Result<void> PrivateInitFromPath(MutableGNode& node, NodeSystemInterface* system, const NodePath& path, NODE_KIND check);
Removed:
[[deprecated]] MAXON_METHOD Result<Tuple<VALUEMODE, Data>> ComputeConstantValue(const Port& port) const;
Removed:
[[deprecated]] MAXON_METHOD Bool IsNeededFor(const NodeSystemClass& cls) const;

python.framework

Updated
maxon::CodeExchangeInterface
code_exchange.h
Old:
MAXON_METHOD Result<void> SendScriptToIDE(const PythonElementScriptRef& script) const;
New:
MAXON_METHOD Result<void> SendScriptToIDE(const PythonElementScriptRef& script);
Updated
maxon::CodeExchangeInterface
code_exchange.h
Old:
MAXON_METHOD Result<void> SendConsoleOutput(const String& content) const;
New:
MAXON_METHOD Result<void> SendConsoleOutput(const String& content);

volume.framework

Added
maxon::VOLUME
Added:
MAXON_DECLARATION(Class<Volume>, VOLUME, "net.maxon.volume.class.volume");
Old:
static MAXON_METHOD Result<Volume> MeshToVolume(const Block<Vector>& vertices, const Block<VolumeConversionPolygon>& polygons, Matrix polygonObjectMatrix, Float gridSize, Int32 bandWidthInterior, Int32 bandWidthExterior, const ThreadRef& thread, POLYGONCONVERSIONFLAGS conversionSettings = POLYGONCONVERSIONFLAGS::NONE, const Matrix* creationTransform = nullptr);
ThreadRefTemplate< ThreadInterface > ThreadRef
Reference to a thread (ThreadInterface).
Definition: thread.h:522
POLYGONCONVERSIONFLAGS
Definition: volumetools.h:25
New:
static MAXON_METHOD Result<Volume> MeshToVolume(const Block<Vector>& vertices, const Block<VolumeConversionPolygon>& polygons, Matrix polygonObjectMatrix, Float gridSize, Int32 bandWidthInterior, Int32 bandWidthExterior, const ThreadRef& checkForCancellation, POLYGONCONVERSIONFLAGS conversionSettings = POLYGONCONVERSIONFLAGS::NONE, const Matrix* creationTransform = nullptr);
Old:
static MAXON_METHOD Result<Volume> GeometryObjectToVolume(const Geometry& geometry, Matrix polygonObjectMatrix, Float gridSize, Int32 bandWidthInterior, Int32 bandWidthExterior, const ThreadRef& thread, POLYGONCONVERSIONFLAGS conversionSettings = POLYGONCONVERSIONFLAGS::NONE, const Matrix* creationTransform = nullptr);
New:
static MAXON_METHOD Result<Volume> GeometryObjectToVolume(const Geometry& geometry, Matrix polygonObjectMatrix, Float gridSize, Int32 bandWidthInterior, Int32 bandWidthExterior, const ThreadRef& checkForCancellation, POLYGONCONVERSIONFLAGS conversionSettings = POLYGONCONVERSIONFLAGS::NONE, const Matrix* creationTransform = nullptr);
Old:
static MAXON_METHOD Result<Volume> PointsToVolume(const DelegatePointObjectsPairList& pointObjects, Float gridSize, Int32 bandWidth, const ThreadRef& thread, const Matrix* creationTransform = nullptr, Float velocityScale = 0.0);
BaseArray< DelegatePointObjectsPair > DelegatePointObjectsPairList
Definition: volumetools.h:151
New:
static MAXON_METHOD Result<Volume> PointsToVolume(const DelegatePointObjectsPairList& pointObjects, Float gridSize, Int32 bandWidth, const ThreadRef& checkForCancellation, const Matrix* creationTransform = nullptr, Float velocityScale = 0.0);
Old:
static MAXON_METHOD Result<Volume> ApplySDFFilterToVolume(const Volume& volume, const SDFFilterSettings& filterType, const ThreadRef& thread, const Volume* maskVolume = nullptr, FieldSampleData* maskField = nullptr);
New:
static MAXON_METHOD Result<Volume> ApplySDFFilterToVolume(const Volume& volume, const SDFFilterSettings& filterType, const ThreadRef& checkForCancellation, const Volume* maskVolume = nullptr, FieldSampleData* maskField = nullptr);
Old:
static MAXON_METHOD Result<Volume> ApplyFilterToVolume(const Volume& volume, const FilterSettings& filterType, const ThreadRef& thread, const Volume* maskVolume = nullptr, FieldSampleData* maskField = nullptr);
New:
static MAXON_METHOD Result<Volume> ApplyFilterToVolume(const Volume& volume, const FilterSettings& filterType, const ThreadRef& checkForCancellation, const Volume* maskVolume = nullptr, FieldSampleData* maskField = nullptr);
Old:
static MAXON_METHOD Result<Volume> ConvertFieldsToVolume(FieldSampleData& fieldData, Float gridSize, const Range<Vector>& sampleBox, const ThreadRef& thread, const Volume* volumeReference = nullptr, const Matrix* creationTransform = nullptr);
New:
static MAXON_METHOD Result<Volume> ConvertFieldsToVolume(FieldSampleData& fieldData, Float gridSize, const Range<Vector>& sampleBox, const ThreadRef& checkForCancellation, const Volume* volumeReference = nullptr, const Matrix* creationTransform = nullptr);
Old:
static MAXON_METHOD Result<Volume> ConvertFogToSDF(const Volume& volume, Float iso, const ThreadRef& thread);
New:
static MAXON_METHOD Result<Volume> ConvertFogToSDF(const Volume& volume, Float iso, const ThreadRef& checkForCancellation);
Old:
static MAXON_METHOD Result<Volume> ResampleVolume(const Volume& volume, const Matrix& resampleTransform, const RESAMPLEINTERPOLATIONTYPE interpolationType, const ThreadRef& thread);
RESAMPLEINTERPOLATIONTYPE
Definition: ge_prepass.h:2111
New:
static MAXON_METHOD Result<Volume> ResampleVolume(const Volume& volume, const Matrix& resampleTransform, const RESAMPLEINTERPOLATIONTYPE interpolationType, const ThreadRef& checkForCancellation);
Old:
static MAXON_METHOD Result<Volume> CreateMaskFromField(FieldSampleData& fieldData, const Volume& volumeReference, Float background, const ThreadRef& thread);
New:
static MAXON_METHOD Result<Volume> CreateMaskFromField(FieldSampleData& fieldData, const Volume& volumeReference, Float background, const ThreadRef& checkForCancellation);
Old:
static MAXON_METHOD Result<Volume> CreateGradientVolume(const Volume& volume, const ThreadRef& thread);
New:
static MAXON_METHOD Result<Volume> CreateGradientVolume(const Volume& volume, const ThreadRef& checkForCancellation);
Old:
static MAXON_METHOD Result<Volume> CreateSphereVolume(Float radius, const Vector& position, Float gridSize, Int32 bandWidth, const ThreadRef& thread, const Matrix* creationTransform = nullptr);
New:
static MAXON_METHOD Result<Volume> CreateSphereVolume(Float radius, const Vector& position, Float gridSize, Int32 bandWidth, const ThreadRef& checkForCancellation, const Matrix* creationTransform = nullptr);
Old:
static MAXON_METHOD Result<Volume> CreatePlatonicVolume(Int32 sides, Float size, const Vector& position, Float gridSize, Int32 bandWidth, const ThreadRef& thread, const Matrix* creationTransform = nullptr);
New:
static MAXON_METHOD Result<Volume> CreatePlatonicVolume(Int32 sides, Float size, const Vector& position, Float gridSize, Int32 bandWidth, const ThreadRef& checkForCancellation, const Matrix* creationTransform = nullptr);
Old:
static MAXON_METHOD Result<Volume> ConvertFieldsToVectorVolume(FieldSampleData& fieldData, Float gridSize, const Range<Vector>& sampleBox, const ThreadRef& thread, const Volume* volumeReference = nullptr, const Matrix* creationTransform = nullptr);
New:
static MAXON_METHOD Result<Volume> ConvertFieldsToVectorVolume(FieldSampleData& fieldData, Float gridSize, const Range<Vector>& sampleBox, const ThreadRef& checkForCancellation, const Volume* volumeReference = nullptr, const Matrix* creationTransform = nullptr);
Old:
static MAXON_METHOD Result<Volume> NormalizeVectorVolume(const Volume& volume, const ThreadRef& thread);
New:
static MAXON_METHOD Result<Volume> NormalizeVectorVolume(const Volume& volume, const ThreadRef& checkForCancellation);
Old:
static MAXON_METHOD Result<Volume> CreateCurlVolume(const Volume& volume, const ThreadRef& thread);
New:
static MAXON_METHOD Result<Volume> CreateCurlVolume(const Volume& volume, const ThreadRef& checkForCancellation);
Old:
static MAXON_METHOD Result<Volume> CreateMeanCurvatureVolume(const Volume& volume, const ThreadRef& thread);
New:
static MAXON_METHOD Result<Volume> CreateMeanCurvatureVolume(const Volume& volume, const ThreadRef& checkForCancellation);
Old:
static MAXON_METHOD Result<Volume> RotateVectorVolume(const Volume& volume, const Vector& rotationAxis, const Float angle, const ThreadRef& thread, FieldSampleData* maskField = nullptr);
New:
static MAXON_METHOD Result<Volume> RotateVectorVolume(const Volume& volume, const Vector& rotationAxis, const Float angle, const ThreadRef& checkForCancellation, FieldSampleData* maskField = nullptr);
Old:
static MAXON_METHOD Result<Volume> ConvertVectorToFog(const Volume& volume, const ThreadRef& thread);
New:
static MAXON_METHOD Result<Volume> ConvertVectorToFog(const Volume& volume, const ThreadRef& checkForCancellation);
Old:
static MAXON_METHOD Result<Volume> BlendVolumes(const Volume& volumeA, const Volume& volumeB, const Float blendValue, const ThreadRef& thread);
New:
static MAXON_METHOD Result<Volume> BlendVolumes(const Volume& volumeA, const Volume& volumeB, const Float blendValue, const ThreadRef& checkForCancellation);