API Changes in R21.022
New MAXON API Frameworks
These new frameworks were added
animation.framework
corenodes.framework
render_filter.framework
For an overview see MAXON API Frameworks .
DataType
Many function were changed to return a maxon::DataType & instead of a maxon::DataType *.
cinema.framework
The lib_sn.h header file was removed.
c4d_basebitmap.h
{
Bool GetImageRef (
SAVEBIT saveBit,
Bool alpha, maxon::ImageRef& imageRef)
const {
return C4DOS.Bm->GetImageRef(
this , saveBit, alpha, imageRef);
};
c4d_basechannel.h
{
Bool BakeShaderIntoBaseBitmap (
BaseBitmap & outBmp,
BaseDocument & doc,
BaseThread * parentThread,
Bool doAlpha,
Int32 colorSpace,
Bool linearworkflow,
Bool useHDR,
Int xmin,
Int xmax,
Int ymin,
Int ymax);
};
c4d_basedraw.h
The following functions have been marked as deprecated:
c4d_baseeffectordata.h
c4d_baselist.h
#define MSG_FIELDGUI_GETSUBLISTINFO
#define MSG_FIELDGUI_DISABLEMASK
{
}
{
RootTextureString* rs;
RootTextureString*
_rs =
nullptr ;
}
{
}
c4d_bitmapfilter.h
Bool IsHostWindow(
void * win);
c4d_commanddata.h
c4d_descriptiondialog.h
c4d_fielddata.h
c4d_general.h
GeGetSerialInfo();
GeGetSystemInfo();
{
SOFTWARE_OGL;
}
c4d_gui.h
#define DRAWBEZIER_BX
#define DRAWBEZIER_BY
#define DRAWBEZIER_CX
#define DRAWBEZIER_CY
#define DRAWBEZIER_DX
#define DRAWBEZIER_DY
{
};
c4d_materialdata.h
#define PLUGINFLAG_MATERIAL_SHOW_IN_DEFAULT_MENU
c4d_painter.h
#define UV_SET_FROM_PROJECTION_CMD_ID
{
};
c4d_shader.h
c4d_tooldata.h
c4d_videopostdata.h
#define VPBUFFER_AOV
#define VPBUFFER_REFLECTANCE_ALBEDO
#define VPDenoiser
ge_autoptr.h
{
operator const TYPE *()
const ;
operator const TYPE &()
const ;
};
ge_prepass.h
{
};
{
};
#define Ofieldforce
#define Ovolumegroup
#define Ovolumeset
#define ID_LISTHEADCB
#define Tuserdata
#define MDATA_JOIN_RESPECT_VISIBILITY
#define MDATA_GROWSELECTION_USEEDGE
{
};
{
};
{
};
#define WPREF_HW_OPENGL
#define WPREF_OPENGL_TEMP
#define WPREF_MATMANAGER_DEFAULT_MATERIAL
#define WPREF_OPENGL_UVEDITOR_ANTIALIAS
#define WPREF_RENDERQUEUE_AUTORENAME
#define WPREF_FILE_ASSETS_LINK
#define WPREF_FILE_ASSETS_LINK_RELATIVE
#define WPREF_FILE_ASSETS_LINK_ABSOLUTE
#define WPREF_FILE_ASSETS_LINK_ASK
#define WPREF_COMMUNICATION_QUICKSTART_DIALOG
WPREF_COMMUNICATION_METRICS_ENABLE
WPREF_COMMUNICATION_METRICS_ENABLE_COMMANDS
WPREF_COMMUNICATION_METRICS_ENABLE_PREFERENCES
WPREF_COMMUNICATION_METRICS_ENABLE_SYSTEM_INFO
#define VIEWCOLOR_UVGIZMO_NORMAL
#define VIEWCOLOR_UVGIZMO_CANDIDATE
#define VIEWCOLOR_UVGIZMO_IN_MOTION
#define VIEWCOLOR_UVGIZMO_ANCHOR_SNAPPED
#define VIEWCOLOR_UV_AXIS_U
#define VIEWCOLOR_UV_AXIS_V
#define VIEWCOLOR_JOINT
#define VIEWCOLOR_HANDLES
{
};
{
};
#define FORMAT_LWSIMPORT
#define FORMAT_LWOIMPORT
{
SNHOOK
}
enum class SERIALINFO;
{
PRIME,
STUDIO,
VISUALIZE,
INSTALLER,
NET_CLIENT,
NET_SERVER_3,
NET_SERVER_UNLIMITED,
LICENSESERVER,
};
enum class SYSTEMINFO;
{
SKIPWITHDEFAULTOUTPUTS
};
enum
{
};
{
FORBID_HWOGL,
};
{
}
gui.h
enum
{
BMP_EMBOSSED
};
enum
{
};
enum
{
}
customgui_descproperty.h
#define DESCRIPTIONPROPERTY_CONNECTIONSTATE
#define DESCRIPTIONPROPERTY_PORTSTATE
customgui_description.h
customgui_field.h
customgui_gradient.h
customgui_htmlviewer.h
customgui_itemtree.h
#define ITEMTREE_FLAG_GREYED_OUT
customgui_listview.h
#define LV_CHECKBOX_GREYEDOUT
{
};
customgui_splinecontrol.h
c4d_graphview_def.h
#define ID_GV_VALUE_TYPE_COLORA
#define ID_GV_DATA_TYPE_COLORA
c4d_particles.h
#define ID_TP_OP_FORCEOBJECT
lib_ca.h
lib_clipmap.h
lib_customdatatag.h
lib_description.h
lib_instanceobject.h
lib_sculptbrush.h
lib_splinehelp.h
lib_token.h
lib_volumebuilder.h
lib_volumeobject.h
lib_volumeset.h
lib_volumetag.h
core.framework
The ask_password.h and jobbarrier.h header files have been removed.
apibase.h
struct IntFloat32;
struct IntFloat64;
class EntityBase
{
{
};
};
{
INDEXABLE,
ABSTRACT_VIEW,
ARRAY_VIEW,
XFORM_VIEW,
CONCAT_VIEW ,
VIEW_REF,
SET_CONTAINER,
INDIVIDUAL_MEMBERS,
TIMESTAMPED,
GENERIC_MEMBERS,
ARRAY_VIEW_COW_REFS
ARRAY_CONTAINER_REF,
SET_CONTAINER_REF,
OWNS_TYPE_ARGUMENTS,
ARRAY_CONTAINER_BASE_TEST,
ARRAY_CONTAINER_REF_BASE_TEST,
INDEXABLE_MASK,
CONTAINER_REF_MASK
ARRAY_CONTAINER_MASK,
DERIVED_CONTAINER_MASK,
};
application.h
{
};
enum class APPLICATIONTYPE;
class Application
{
};
atomictypes.h
template <typename T> class AtomicFloatType;
class StrongReferenceCounter
{
static StrongReferenceCounter&
Get (
const void *
object );
};
basebitset.h
template <typename ALLOCATOR = DefaultAllocator> class BaseBitSet
{
void ClearUnchecked(
UInt index);
Result<void> SetRange(
UInt first,
UInt last);
Result<void> MergeOr(
const BaseBitSet<ALLOCATOR>&
src );
Result<void> MergeAnd(
const BaseBitSet<ALLOCATOR>&
src );
Result<void> MergeXOr(
const BaseBitSet<ALLOCATOR>&
src );
};
block.h
template <typename T, Bool STRIDED , Bool MOVE > class Block : public ArrayBase<Block<T, STRIDED, MOVE>, T, BlockBase<T, STRIDED>, DefaultCompare>
{
Bool StartsWith(
const Block& prefix)
const
};
blockarray.h
template <typename T, Int BLOCK_SIZE_EXPONENT = BLOCKARRAY_DEFAULT_SIZE_EXPONENT, BLOCKARRAYFLAGS MEMFLAGS = BLOCKARRAYFLAGS::NONE, typename ALLOCATOR = DefaultAllocator> class BlockArray : public ArrayBase<BlockArray<T, BLOCK_SIZE_EXPONENT, MEMFLAGS, ALLOCATOR>, T, ALLOCATOR, DefaultCompare>
{
BaseArray<ArrayBlock, BASEARRAY_DEFAULT_CHUNK_SIZE, BASEARRAYFLAGS::NONE, ForwardAllocator> Disconnect();
Super Disconnect();
}
collection.h
template <Bool CONSTITERATOR, Bool STRIDED> class BlockIterator : public ForEachIterator<BlockIterator<CONSTITERATOR, STRIDED>>
template <typename COLLECTION, typename VALUETYPE, Bool CONSTITERATOR, Bool STRIDED> class BlockIterator : public ForEachIterator<BlockIterator<COLLECTION, VALUETYPE, CONSTITERATOR, STRIDED>>;
crc32c.h
datadescriptionobject.h
class DataDescriptionObjectInterface
{
};
datadictionary.h
datadictionaryobject.h
class DataDictionaryObjectInterface
{
}
datatypebase.h
datatypelib.h
class InternedId;
struct TypeArguments;
class DataTypeLib
{
static MAXON_METHOD Result<const TupleDataType*> GetTupleType(
const Block<const DataType* const>& types);
static MAXON_METHOD Result<const TupleDataType*> GetTupleType(
const Block<
const Result<const DataType*>>& types);
static MAXON_METHOD Result<const TupleDataType*> GetTupleType(
const Block<const Member>& members);
static MAXON_METHOD Result<const TupleDataType*> GetTupleTypeWithIndividualMembers(
const TupleDataType* type);
static MAXON_METHOD Result<DataType> GetReferenceType(
const DataType& type, EntityBase::FLAGS refFlags);
static MAXON_METHOD Result<const MemberMap*> GetMemberMap(Block<const Int> block);
static MAXON_METHOD Result<const MemberMap*> GetIdentityMemberMap(
Int length);
static MAXON_METHOD Result<const MemberMap*> ConcatMemberMap(
const MemberMap* first,
const MemberMap* second);
static MAXON_METHOD Result<const MemberMap*> PrivateGetMemberMap(
const DataTypeImpl* containerType,
const DataTypeImpl* runtimeType);
static MAXON_METHOD Result<StrongRef<TypeArguments>> CreateTypeArguments(
const Block<const Member>& args);
};
class TupleDataType
{
Result<const TupleDataType*> GetWithIndividualMembers() const ;
};
datetime.h
class UniversalDateTime
{
UniversalDateTime& operator -= (const TimeValue& t);
UniversalDateTime
operator + (
const TimeValue& t)
const ;
UniversalDateTime
operator - (
const TimeValue& t)
const ;
};
decorator.h
class WeakDecoratorInterface;
descriptionprocessor.h
class DescriptionProcessorInterface;
errorbase.h
class DisabledErrorInterface;
fixedsizebitset.h
template <Int EXPONENT> class FixedSizeBitSet
{
Bool IsPopulated()
const ;
}
genericdata.h
genericfunction.h
namespace ParametricTypes
{
class FunctionType;
};
hashmap.h
{
};
struct HashMapKeyHashValuePair;
template <typename K, typename ENTRY, typename ENTRY_HANDLER> class HashMapEntryBase<K, UnitType, ENTRY, ENTRY_HANDLER, HASHMAP_ENTRY_LAYOUT::KEY_HASH_VALUE>;
template <typename VALUEHASH> class Hash
{
const Char * GetSignature(
void *)
const ;
};
template <typename K_TO, typename V_TO, typename K_FROM, typename V_FROM, Bool SAFE> struct GenericCastMemberTrait<HashMap<K_TO, V_TO>, HashMap<K_FROM, V_FROM>, SAFE>;
template <typename T, typename HASH = DefaultCompare, typename ALLOCATOR = DefaultAllocator, Bool SYNCHRONIZED = false> class HashSet
template <typename T, typename HASH = DefaultCompare,
typename ENTRY_HANDLER = HashMapKeyValuePair,
typename ALLOCATOR = DefaultAllocator,
Bool SYNCHRONIZED =
false >
class HashSet
template <typename
TO , typename FROM,
Bool SAFE> struct GenericCastMemberTrait<HashSet<
TO >, HashSet<FROM>, SAFE> :
public GenericCastMemberTrait<TO, FROM, SAFE>;
hierarchyobject.h
template <typename REF> struct DefaultHierarchy;
template <> struct DefaultHierarchy<void>;
class HierarchyObjectInterface
{
};
interfacetemplate.h
template <typename TO, typename FROM> struct SpecialOut;
template <
typename TO,
typename FROM>
struct SpecialOut<GenericRef<
TO >, FROM>;
class NumberBaseInterface;
template <typename T, Int X> class NumberInterface;
template <typename T> class Number2Interface;
intfloat.h
struct IntFloat32;
struct IntFloat64;
job.h
template <typename BASE> struct ObservableCancelledBase
{
Result<void> RemoveObserver(JobInterface* observer);
static Result<void> RemoveCancelledObserver(JobInterface* job, JobInterface* observer);
};
lazyinit.h
lazyinitthreaded.h
lexer.h
{
};
{
};
{
}
class LexerInterface
{
}
machineinfo.h
module.h
class InternedId
#define MAXON_LOCAL_INTERNED_ID
class Binary
{
const Url& GetUrl() const ;
};
template <typename T, typename C> class Declaration
{
static Id GetId();
static constexpr LiteralId GetId();
const T& GetWithoutDependency() const ;
}
objectbase.h
class InterfaceReference
{
EntityBase::FLAGS GetFlags() const ;
};
class ComponentDescriptor
{
};
class ClassInterface
{
template <
typename REFCLASS>
MAXON_FUNCTION Result<typename maxon::details::ClassCreateType<REFCLASS>::type> Create()
const ;
MAXON_METHOD Result<typename maxon::details::ClassGetNonConst<REF>::type> Create()
const ;
};
template <
typename R,
typename SRC>
inline typename SFINAEHelper<Result<R>,
typename R::ReferencedType,
typename SRC::ReferencedType>::type
AssertCast (Result<SRC>&&
src )
template <typename REFCLASS> inline Result<typename maxon::details::ClassCreateType<REFCLASS>::type> ClassInterface::Create() const ;
template <typename R> class Class : public ReferenceBase<ClassInterface::ReferenceFunctions<RefBaseFunctions<DirectRef<const ClassInterface, StrongRefHandler, maxon::Class<R>>>>>;
observerobject.h
template <typename T> class StaticObservableStorage;
optional.h
class Opt
{
T GetValueOrNull() const ;
T MoveValueOrNull();
}
class Opt<const T&>
{
const T& GetValueOrNull() const ;
}
parametric_type.h
class ParametricTypeInterface
{
MAXON_FUNCTION Result<DataType> Instantiate(
const Block<const DataType>& types,
const Block<const Int64>& iargs =
GetZeroRef <Block<const Int64>>())
const ;
MAXON_FUNCTION Result<DataType> Instantiate(Result<DataType>&& type,
const Block<const Int64>& iargs =
GetZeroRef <Block<const Int64>>())
const ;
MAXON_FUNCTION Result<DataType> PrivateInstantiate(Block<Result<DataType>>&& types)
const ;
MAXON_METHOD void ResetInstantiated(DataTypeImpl* type)
const ;
MAXON_METHOD DataTypeImpl*& GetLeakingLink(DataTypeImpl* type)
const ;
MAXON_METHOD Result<const DataType*> Substitute(
const DataType* orig,
const Delegate<Result<const DataType*>(
const DataType*)>& replace)
const ;
};
namespace ParametricTypes
{
class ParametricTupleType
}
parser_json.h
enum class NETWORKPROTOCOLJSONFLAGS
class NetworkProtocolJSONInterface;
class JsonParserInterface;
parser_jwt.h
class JwtParserInterface;
rangemap.h
template <typename K> struct RangeSetPair
{
static Result<void>
DescribeIO (
const DataSerializeInterface& stream);
}
template <typename K, typename V, typename MAP = BurstTrieMapSelector<>> class RangeMap
{
static Result<void>
DescribeIO (
const DataSerializeInterface& stream);
}
reflectionbase.h
class Member
{
enum class KIND
{
};
};
class Container
{
static const Container* Find(const Id& memberId);
}
class Class
{
MAXON_METHOD const NonvirtualInterfaceReference* GetInterface()
const ;
MAXON_METHOD const InterfaceReference* GetInterface()
const ;
MAXON_METHOD const InterfaceReference* GetVirtualInterface()
const ;
MAXON_METHOD const NonvirtualInterfaceReference* GetNonvirtualInterface()
const ;
}
class Function
{
MAXON_METHOD const Block<const Parameter>& GetParameters()
const ;
static MAXON_METHOD Result<void> FindAll(
const Id& memberId,
const ValueReceiver<const Function*>& result);
}
registrybase.h
class RegistryInterface
{
MAXON_METHOD Result<GenericData> AddObserver(Delegate<
void (
const Id& eid,
const ConstDataPtr& value,
Bool inserted)>&& observer,
Bool notifyDuringRegistration)
const ;
static MAXON_METHOD Result<GenericData> Register(
const RegistryInterface* registry,
const Id& eid, ForwardingDataPtr&& value);
};
template <
typename T,
typename R>
class Registry
{
static Result<GenericData> Register(const Id& eid, const T& object );
static Result<GenericData> Register(const Id& eid, T&& object );
}
secure_random.h
sse_matrix_4f32.h
sse_vector.h
sse_vector_4f32.h
sse_vector_8i32.h
streamconversion.h
namespace StreamConversions
{
};
string.h
template <typename INTERFACETYPE, typename REFTYPE, typename CHARTYPE> class StringTemplate
{
MAXON_METHOD INTERFACETYPE* Append(
const INTERFACETYPE* str);
Changed to
}
system.h
namespace APPLICATIONID
{
static const Id PYTHON3;
}
taggedbaseref.h
template <typename T, typename HANDLER, typename TAG, Int TAG_BITS, TAG DEFAULT_VALUE = TAG(0), Bool ENABLE_POINTER_CONVERSION = true> class TaggedBaseRef
{
};
timer.h
class TimerInterface
{
template <
typename FN>
static MAXON_FUNCTION ResultMemT<TimerRef> AddPeriodicTimer(TimeValue interval, FN&& job, JobQueueInterface* queue);
template <
typename FN>
static MAXON_FUNCTION Result<TimerRef> AddPeriodicTimer(TimeValue interval, FN&& job, JobQueueInterface* queue);
template <
typename FN>
static MAXON_FUNCTION ResultMemT<TimerRef> AddOneShotTimer(TimeValue delay, FN&& job, JobQueueInterface* queue);
template <
typename FN>
static MAXON_FUNCTION Result<TimerRef> AddOneShotTimer(TimeValue delay, FN&& job, JobQueueInterface* queue);
};
treemap.h
template <typename K, typename V, typename MAP = HashMapSelector<>, Bool COW = false> class TreeMap : public TreeMapParent<TreeMap<K, V, MAP, COW>, COW>
{
TreeMap* FindChild(const K& key)
};
tuple.h
template <
UInt32 INDEX,
UInt32 PRE_OFFSET,
UInt32 PRE_MAX_ALIGN,
UInt64 SZ_ALIGN,
UInt64 ... REST>
class TupleStorageLayout<INDEX, PRE_OFFSET, PRE_MAX_ALIGN, SZ_ALIGN, REST...> :
public TupleStorageLayout<INDEX + 1, UInt32(Align(PRE_OFFSET, UInt32(SZ_ALIGN >> 33))) +
UInt32 (SZ_ALIGN),
Max (PRE_MAX_ALIGN, UInt32(SZ_ALIGN >> 33)), REST...>
{
static Int GetOffset(
typename std::integral_constant<UInt32, INDEX>::type*)
};
template <typename ... T> class TupleStorage : public TupleStorageBase<And<std::is_default_constructible<T>::value...>::value, And<std::is_trivially_destructible<T>::value...>::value, T...>
{
static Int GetOffset(
typename std::integral_constant<UInt32, 0>::type*);
}
template <typename T1, typename T2> class TupleStorage<T1, T2>
{
static Int GetOffset(
typename std::integral_constant<UInt32, 0>::type*);
static Int GetOffset(
typename std::integral_constant<UInt32, 1>::type*);
}
template <typename T1, typename T2, typename T3> class TupleStorage<T1, T2, T3>
{
static Int GetOffset(
typename std::integral_constant<UInt32, 0>::type*);
static Int GetOffset(
typename std::integral_constant<UInt32, 1>::type*);
static Int GetOffset(
typename std::integral_constant<UInt32, 2>::type*);
}
template <typename T1, typename T2, typename T3, typename T4> class TupleStorage<T1, T2, T3, T4>
{
static Int GetOffset(
typename std::integral_constant<UInt32, 0>::type*);
static Int GetOffset(
typename std::integral_constant<UInt32, 1>::type*);
static Int GetOffset(
typename std::integral_constant<UInt32, 2>::type*);
static Int GetOffset(
typename std::integral_constant<UInt32, 3>::type*);
}
template <typename T1, typename T2, typename T3, typename T4, typename T5> class TupleStorage<T1, T2, T3, T4, T5>
{
static Int GetOffset(
typename std::integral_constant<UInt32, 0>::type*);
static Int GetOffset(
typename std::integral_constant<UInt32, 1>::type*);
static Int GetOffset(
typename std::integral_constant<UInt32, 2>::type*);
static Int GetOffset(
typename std::integral_constant<UInt32, 3>::type*);
static Int GetOffset(
typename std::integral_constant<UInt32, 4>::type*);
}
template <typename T1> class TupleStorage<T1, UnitType>
{
static Int GetOffset(
typename std::integral_constant<UInt32, 0>::type*) {
return 0; }
static Int GetOffset(
typename std::integral_constant<UInt32, 1>::type*) {
return 0; }
}
template <> class Tuple<>
{
Tuple() { }
Tuple(const Tuple&) { }
Tuple(Tuple&&) { }
};
url.h
namespace URLFLAGS
{
MAXON_ATTRIBUTE (DataDictionary, HTTP_ADDITIONAL_REQUEST_HEADER,
"net.maxon.url.http_additional_request_header" );
MAXON_ATTRIBUTE (DataDictionary*, HTTP_RESPONSE_HEADER,
"net.maxon.url.http_response_header" );
};
vector4d.h
viewiterator.h
struct ViewIteratorMember;
struct MemberMap;
class GenericContainerInterface;
weakref.h
struct WeakRefTargetBase
{
const void * GetCurrent() const ;
void Swap (
const void * oldTarget,
const void * newTarget);
weakrefservices.h
template <typename REFERENCE> class FatWeakRef;
apibaseid.h
class LiteralId
{
LiteralId(const LiteralId&) = default ;
LiteralId& operator =(const LiteralId&) = default ;
LiteralId& operator =(const Id&) = delete
operator const Id&() const
template <UInt N> constexpr LiteralId(
bool dummy,
const Char (&str)[
N ]) : _value(str), _hash(GetHashCode<N>(str))
constexpr LiteralId(
bool dummy,
const LiteralId&
src ) : _value(
src ._value), _hash(
src ._hash)
template <typename T, typename = typename T::DeclarationHelper> constexpr LiteralId(bool dummy, const T& decl) : LiteralId(T::DeclarationHelper::GetId())
};
class Id
{
template <typename T, typename = typename T::DeclarationHelper> explicit Id(const T& ref) : Id(ref.GetId())
}
apibasemath.h
classhelpers.h
#define MAXON_COPYFROM_MEMBERS(...)
#define MAXON_OPERATOR_COPYFROM(T, ...)
#define MAXON_STRUCT_TUPLE(T, ...)
#define MAXON_MEMBER_ACCESSORS(T, M, ...)
debugdiagnostics.h
#define DiagnosticVarOutput(...)
newobj.h
template <Bool IS_DELETABLE> class ForwardFree;
template <> class ForwardFree<true>;
template <typename T> class NewObjHelper
template <typename T> class NewDelete
resultbase.h
template <typename T> class ResultOk
{
T& GetValue()
const T& UncheckedGetValue() const &
};
template <typename T> class ResultOk<T&>
{
operator T&() const ;
};
{
const T& GetValue() const ;
const T& GetValue() const &;
const T& UncheckedGetValue() const;
const T& UncheckedGetValue() const &;
T& GetValue();
};
template <typename T> class ResultBase
{
};
template <typename T, typename
ENABLE > class ResultSuper;
template <typename RESULT_TYPE, typename
ENABLE > class ResultSuper;
template <typename T> class ResultSuper<T&, typename SFINAEHelper<void , typename T::template ResultFunctions<ResultBase<T&>>>::type>
template <typename RESULT_TYPE> class ResultSuper<RESULT_TYPE&, typename SFINAEHelper<void , typename RESULT_TYPE::template ResultFunctions<ResultBase<RESULT_TYPE&>>>::type>
command.framework
commandbase.h
class CommandTuple;
class CommandDataInterface
{
MAXON_FUNCTION Result<COMMANDRESULT> Invoke(
const Id& command,
Bool interactive,
const SetParameters& setParameters);
MAXON_FUNCTION Result<COMMANDRESULT> Invoke(
const CommandClass& command,
Bool interactive,
const SetParameters& setParameters);
};
class LegacyCommandDataInterface
{
MAXON_METHOD Result<void> SetLegacyData(
const Generic* data);
template <
typename LEGACYDATA>
MAXON_FUNCTION Result<LEGACYDATA&> GetLegacyData();
template <
typename LEGACYDATA>
MAXON_FUNCTION Result<LEGACYDATA&> GetLegacyData(
Int index)
template <
typename LEGACYDATA>
MAXON_FUNCTION Result<void> SetLegacyData(
const LEGACYDATA& data);
template <
typename LEGACYDATA>
MAXON_FUNCTION Result<void> SetLegacyData(
const LEGACYDATA& data,
Int index);
};
class CommandDescriptionClassInterface;
class CommandConversionClassInterface;
crypt.framework
cryptography_hash.h
cryptography_ssl.h
class SSLInterface
{
static MAXON_METHOD Result<Bool> VerifySignature(
const Block<const Char>& publicKey,
const Block<const Char>& messageHash,
const Block<const Char>& message);
static MAXON_METHOD Result<void> CreateSignature(
const Block<const Char>& privateKey, BaseArray<Char>& messageHash,
const Block<const Char>& message);
};
geom.framework
lib_geom.h has been renamed to geometryutils.h .
exactpredicates2d.h
class ExactPredicates2DInterface;
geomconstants.h
geometryutils.h
class DegeneratedInputErrorInterface;
class GeometryUtilsInterface;
simplemesh.h
template <typename T> class Poly;
class SimpleMeshObject;
image.framework
gfx_basictypes.h
template <typename T> struct DrawPoint;
template <typename T> struct DrawDimension
{
};
template <typename T> struct DrawRect
{
DrawRect(Vec2<T,1> positionValue, DrawDimension<T> sizeValue);
DrawRect(T x, T y, T w, T h);
};
gfx_image.h
struct ImageHierarchy;
class ImageBaseInterface :
MAXON_INTERFACE_BASES (DataDictionaryObjectInterface, HierarchyObjectInterface)
class ImageBaseInterface :
MAXON_INTERFACE_BASES (DataDictionaryObjectInterface, HierarchyObjectInterface<ImageHierarchy>)
mediasession_stream.h
class MediaStreamInterface :
MAXON_INTERFACE_BASES (MediaBaseInterface, HierarchyObjectInterface<DefaultHierarchy<MediaStreamRef>>)
math.framework
apibasemath_extension.h
gradient.h
polynomsolver.h
template <typename T> class PolynomSolver;
splinemapper.h
struct SplineMapperKnot;
class SplineMapperInterface;
mesh_misc.framework
mesh_attribute_base.h
#define MAXON_CUSTOMDATATAG(pluginID, name, resurceID, displayID, level, floatValueCount)
#define MAXON_CUSTOMDATATAG(pluginID, name, resurceID, displayID, level, floatValueCount, flags)
class CustomDataTagClassInterface
{
};
misc.framework
The container.h and listview.h header files were removed.
graph_basics.h
io.h
profiler.h
class Profiler
{
};
#define PROFILER_START(enable)
#define PROFILER_STOP_AND_REPORT(...)
profiler_disabled.h
#define PROFILER_DISABLED
#define PROFILER_START(...)
#define PROFILER_STOP_AND_REPORT(...)
ruleparser.h
class ParseHelper
{
static MAXON_METHOD Result<void> ConvertTextToLines(
const BaseArray<Utf32Char>& in, BaseArray<String>& out,
Bool allowBackSlashToJoinNextLine);
};
timestamp.h
network.framework
network_oauth.h
class UrlRedirectInterface;
class NetworkOAuthSessionInterface
{
MAXON_METHOD Result<String> InitV2Session(
const Url& authUrl,
const Url& tokenUrl,
const String & account,
const CString& appKey,
const CString& appSecret,
const Delegate<Result<void>(const NetworkOAuthSessionRef& session, const Url& url)>& askForApproval,
const Delegate<Result<String>(const NetworkOAuthSessionRef& session)>& verifyAccountName);
MAXON_METHOD Result<String> InitV2Session(
const Url& authUrl,
const Url& tokenUrl,
const Url& redirectUrl,
const String & account,
const CString& appKey,
const CString& appSecret,
const CString& scope,
Bool forceReapprovement,
Bool allowRedirectServer,
const UrlRedirectRef& redirectRef, const Delegate<Result<void>(const NetworkOAuthSessionRef& session, const Url& url)>& askForApproval,
const Delegate<Result<String>(const NetworkOAuthSessionRef& session, const DataDictionary& response)>& verifyAccountName);
MAXON_METHOD Result<BaseArray<DataDictionary>> ReadJson(
const Url& url,
OAUTHHTTPMETHOD httpMethod,
const StringDecodingRef& stringDecoding)
const ;
MAXON_METHOD Result<BaseArray<DataDictionary>> ReadJWT(
const Url& url,
OAUTHHTTPMETHOD httpMethod,
const StringDecodingRef& stringDecoding,
const Block<const Char>& publicKey, BaseArray<Char>* originalToken)
const ;
};
network_strings.h
namespace NETWORK
{
namespace GLOBALSTRINGS
}
network_url.h
network_webserver.h
class NetworkWebServerInterface
{
MAXON_METHOD Result<CString> CreateRequestHeader(
Bool isPost,
const UrlScheme & proxyScheme,
Bool allowGzip,
const String & hostName,
const String & fileName,
const String & queryParameter,
const Range<Int64>& range,
const DataDictionary& optionalTags = DataDictionary(),
const Block<const Char>& postData = Block<const Char>())
const ;
const String & fileName,
const String & queryParameter,
const Range<Int64>& range,
const DataDictionary& optionalTags = DataDictionary(),
const Block<const Char>& postData = Block<const Char>()) const ;
};
network_ip.h
class NetworkTimeoutErrorInterface;
volume.framework
volume.h
class VolumeInterface
{
MAXON_METHOD Result<void> WriteToFile(
const Url& url,
Float scale,
const DataDictionary& metaData = DataDictionary());
MAXON_METHOD Result<void> WriteToFile(
const Url& url,
Float scale,
const DataDictionary& metaData = DataDictionary())
const ;
MAXON_METHOD Range<Float> GetMinMaxValues(
Bool includeBackground =
false )
const ;
};
volumeaccessors.h
class GridAccessorInterface
{
};
volumecommands.h
struct VolumeCommandData
{
};
volumeiterators.h
class GridIteratorInterface
{
};
volumetools.h
struct FilterSettings
{
};
class VolumeToolsInterface
{
static MAXON_METHOD Result<VolumeRef> MeshToVolume(
const Block<Vector>& vertices,
const Block<VolumeConversionPolygon>& polygons,
Matrix polygonObjectMatrix,
Float gridSize,
Int32 bandWidthInterior,
Int32 bandWidthExterior,
const ThreadRef & thread,
const Matrix * creationTransform =
nullptr );
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 );
static MAXON_METHOD Result<Volume> CreateMeanCurvatureVolume(
const Volume& volume,
const ThreadRef & thread);
static MAXON_METHOD Result<Volume> RotateVectorVolume(
const Volume& volume,
const Vector & rotationAxis,
const Float angle,
const ThreadRef & thread, FieldSampleData* maskField =
nullptr );
static MAXON_METHOD Result<Volume> BlendVolumes(
const Volume& volumeA,
const Volume& volumeB,
const Float blendValue,
const ThreadRef & thread);
};
API Changes in R21.026
crypt.framework
cryptography_ssl.h
class SSLInterface
{
static MAXON_METHOD int SSL_CTX_set_default_verify_paths(SSL_CTX *ctx);
};
network.framework
network_ip_ssl.h
namespace URLFLAGS
{
MAXON_ATTRIBUTE (Url, USECUSTOMCLIENTCERTIFICATE,
"net.maxon.url.usecustomclientcertificate" );
}
API Changes in R21.115
cinema.framework
c4d_file.h
ge_prepass.h
customgui_inexclude.h
#define IN_EXCLUDE_FLAG_NO_RESIZABLE
lib_ca.h
core.framework
matrix.h
template <typename V> struct Mat3
{
friend Mat3
Min (
const Mat3& a,
const Mat3& other);
friend Mat3
Max (
const Mat3& a,
const Mat3& other);
}
streamconversion.h
namespace BASE64_OPTIONS
{
}
stringencoding.h
geom.framework
geomconstants.h
class GeomConstants
{
static constexpr
Float EPSILON16;
};
geometryutils.h
class GeometryUtilsInterface
{
static MAXON_METHOD Result<void> CalculateMeanValueCoordinatesWeights(
const Vector & point,
const Block<const Vector>& outline,
const Vector & normal, WritableArrayInterface<Float>& weights);
};
math.framework
apibasemath_extension.h
gradientmath.h
struct IndexedGradientKnot;
class SortedGradientKnots;
class IndexedGradientSample;
misc.framework
formulaparser.h
class FormulaParserInterface
{
};
API Changes in R21.207
cinema.framework
c4d_gui.h
@ BORDER_THIN_INb
Thin border inward, open to the botton.
Definition: gui.h:270
@ BROADCAST
Broadcast the message, i.e. distribute it to all branches given by GeListNode::GetBranchInfo.
std::enable_if< GetCollectionKind< T >::value==COLLECTION_KIND::ARRAY, Result< void > >::type ReadDocument(const Url &url, const Id &id, T &object, const DataDictionary &dict=DataDictionary())
Definition: io.h:35
OAUTHERRORCODE
Definition: network_oauth.h:31
NONE
Definition: c4d_baseeffectordata.h:2
SCENEFILTER GetFilterFlags() const
SPLINEMAPPER_RANGE_STATE
Definition: splinemapper.h:137
Definition: c4d_basechannel.h:35
maxon::Block< Vector > _pivot
The rotational velocity (axle + magnitude)
Definition: c4d_fielddata.h:466
auto Split(const ITERABLE &iterable, MATCHER matcher) -> Result< BaseArray< ITERABLE >>
Definition: algorithms.h:2122
MINUS_OPERATOR
If set, the minus symbol in front of a number will be reported as own token.
Definition: lexer.h:5
Vector * vp_reflectance_albedo
Reflectance Channel Diffuse Albedo.
Definition: c4d_shader.h:850
void HtmlViewerCustomGuiURLCallback(void *user_data, const maxon::String &url, Bool hasError, Int32 encoding, void *reserved)
Definition: customgui_htmlviewer.h:46
Poly< Vector > UVWPolygon
Definition: simplemesh.h:111
const BaseList2D * operator[](Int index) const
Definition: c4d_fielddata.h:811
CONTAINER_REF
The data type is a reference type of a container type.
Definition: apibase.h:2202
maxon::Result< void > AddMask()
Definition: c4d_fielddata.h:1353
Definition: c4d_fielddata.h:1151
REGISTRYTYPE
Definition: ge_prepass.h:4000
BaseContainer _data
Auxiiar data container.
Definition: lib_description.h:854
Definition: lib_volumeobject.h:40
@ CPYTHON3
Python 3 - The python executable. Runs without UI.
SPLINEMAPPER_KNOT_FLAGS
Definition: splinemapper.h:45
Definition: c4d_baselist.h:2144
TO
Definition: network_smtpmail.h:2
@ UNSIGNED_DISTANCE_FIELD
Bool If true an unsigned distance field is created instead of a signed distance field.
void Swap(X &a, X &b)
Swaps two values. If available, move semantics will be used.
Definition: apibasemath.h:218
Definition: c4d_shader.h:774
MAXON_ATTRIBUTE_FORCE_INLINE Float32 Exp2(Float32 val)
Returns the base-2 exponential function of x, which is 2 raised to the power x: 2x.
Definition: apibasemath.h:242
Inherit this class to supply a data and view model for TreeViewCustomGui. See ActiveObject....
Definition: customgui_listview.h:216
Col4< Float, 1 > ColorA
Definition: vector4d.h:60
@ NODOCUMENT
Exclude the document itself from the asset list. @ since R21.
Result< void > DescribeIO(const T &s, const DataSerializeInterface &dsi)
Definition: datatypefunctions.h:21
IMAGERESULT Init(Int32 w, Int32 h, Int32 bits)
maxon::Int Int
Definition: ge_sys_math.h:62
@ UPDATER
Online updater. The Online updater only loads a limited subset of libraries.
@ CINEMA4D
Cinema 4D Cinema 4D.
@ PREVIEWONLY
Only load the document preview image. If this flag is set, SCENEFILTER::OBJECTS, SCENEFILTER::MATERIA...
@ SCALESEGMENT
Bool If true each spline segment will be scaled individually by the scalespline.
const TYPE *const * operator&() const
Definition: ge_autoptr.h:113
@ TEAMRENDER_SERVER
Cinema 4D Teamrender server.
Definition: c4d_baselist.h:1237
#define MAXON_INTERFACE_SINGLE_IMPLEMENTATION
Definition: objectbase.h:997
Bool CopyTo(SplineHelp *dest) const
CONVERSION_FLAGS
Definition: datatypebase.h:59
maxon::CString _nodePath
The node path of the port the asset is assigned to in case of a nimbus material.
Definition: c4d_baselist.h:1018
#define MAXON_ATTRIBUTE_FORCE_INLINE
Definition: apibase.h:105
BaseOverride * _override
Private.
Definition: c4d_baselist.h:1046
Int32 DrawGetTextWidth_ListNodeName(BaseList2D *node, Int32 fontid=FONT_STANDARD) const
OPERATOR
< One of the operator symbols added by LexerInterface::AddOperator.
Definition: lexer.h:35
SCENEFILTER
Definition: ge_prepass.h:287
Bool SupportsDrawBezierSegment() const
APPLICATION_URLTYPE
Possible values for GetUrl() function.
Definition: application.h:28
@ RENDERQUEUEERRORS
Cancel Render Queue rendering if scene has missing assets. Private..
@ BORDER_TEXT_DOTTED
Definition: gui.h:274
VERSIONTYPE
Definition: ge_prepass.h:4157
ELEMENT_TYPE_AS_ARG
This flag is set for a parametric type which uses the element type to store the type arguments of the...
Definition: apibase.h:2192
OAUTHHTTPMETHOD
Definition: network_oauth.h:24
#define MAXON_IMPLICIT
Definition: apibase.h:168
Definition: lib_description.h:327
maxon::BaseArray< Vector > _pivot
The rotational velocity (axle + magnitude)
Definition: c4d_fielddata.h:308
#define MAXON_INTERFACE_BASES(...)
Definition: objectbase.h:977
static const Int32 ID_FIELDMASK_ICON
The icon for the mask sublist.
Definition: customgui_field.h:39
ALLOW_AT_IDENT
Allow @ as part of identifiers (but not as start).
Definition: lexer.h:6
@ KEY
Has a key on the current frame.
const BaseTime operator-(const BaseTime &t1, const BaseTime &t2)
Definition: c4d_basetime.h:249
Pointer< _SecureRandomProvider > SecureRandomProvider
Definition: secure_random.h:11
CONTAINER_OR_REF
Definition: apibase.h:2226
maxon::UInt32 UInt32
Definition: ge_sys_math.h:59
DateTime FromJulianDay(Float64 j)
static const Int32 ID_FIELDSUBLIST_ICON
The generic icon for sublists.
Definition: customgui_field.h:38
const T & GetZeroRef()
Definition: apibase.h:1122
Definition: c4d_fielddata.h:342
Bool Start(ProgressDialog *pdlg)
Bool IsMarkedAsCPURenderer()
Definition: c4d_basedraw.h:1807
NON_ASCII_IS_IDENT
If set, non-ASCII characters (code > 127) are considered to be part of identifiers.
Definition: lexer.h:7
GRADIENT_INTERPOLATION_TYPE
Definition: gradient.h:21
maxon::Float Float
Definition: ge_sys_math.h:64
Definition: lib_takesystem.h:78
ALLOW_DOLLAR_IDENT
Allow $ as part of identifiers.
Definition: lexer.h:5
PORT_DIR & operator++(PORT_DIR &dir)
Definition: graph_basics.h:32
maxon::BaseArray< Int32 > instanceUniqueIPs
Unique IP, one for each instance.
Definition: lib_instanceobject.h:278
Int32 _channelId
Private.
Definition: c4d_baselist.h:1047
INCONVERTIBLE
No conversion possible.
Definition: datatypebase.h:10
Result< void > MergeDataDictionariesPreferBase(DataDictionary &base, const DataDictionary &other, Bool mergeSubContainers)
Definition: string.h:1197
void DrawBezierSegment(const maxon::Vector2d *p)
MIXVECTORTYPE
Definition: lib_volumebuilder.h:25
SIGNED
This flag is set for floating point and signed integer types.
Definition: apibase.h:2194
HOTKEYFLAGS IsHotkeyDown(Int32 id) const
BaseDocument * _doc
The document.
Definition: c4d_baselist.h:1043
@ CINEWARE
Cineware - The renderer used in AfterEffects, Vectorworks, Archicad and Allplan. Runs without UI and ...
maxon::Float32 Float32
Definition: ge_sys_math.h:66
GeListHead * GetMaskHead() const
Definition: c4d_fielddata.h:1347
#define MAXON_DATATYPE(type, id)
Definition: datatype.h:309
RENDERFLAGS
Definition: ge_prepass.h:4423
@ TEAMRENDER_CLIENT
Cinema 4D Teamrender client.
Bool Local2Screen(Int32 *x, Int32 *y) const
virtual Int32 GetState(BaseDocument *doc, GeDialog *parentManager)
Definition: c4d_thread.h:27
Vector GetSize(void) const
Definition: c4d_baseeffectordata.h:250
@ INVERTPOINT
Float The value around wich the invert filter mirrors.
Manages file and path names.
Definition: c4d_file.h:93
@ SCROLLGROUP_BORDERINb
Same as SCROLLGROUP_BORDERIN but open at bottom.
Definition: gui.h:450
maxon::Int16 Int16
Definition: ge_sys_math.h:56
@ MINIMAL_VIEWPORT
Minimal viewport configuration. (formerly FORBID_HWOGL,.
void DrawPolyFill(const maxon::Block< const Vector2d > &p, Bool closed)
static maxon::Result< maxon::DataDictionary > GetAutoWeightDictionary(BaseDocument *doc, const maxon::Id &autoweightId)
void DrawBezierFill(const Vector2d &startPoint, const maxon::Block< const BezierPoint > &bezierPoints, Bool closed)
LEXERINITFLAGS
Flags used in LexerInterface::Init()
Definition: lexer.h:70
ESCAPE_IN_SINGLE_QUOTED
If set, escape characters are also considered in single-quoted-strings.
Definition: lexer.h:9
bool Bool
boolean type, possible values are only false/true, 8 bit
Definition: apibase.h:177
Bool SetBindPose(BaseDocument *doc, Bool doUndo)
static FieldCallerStack Create()
Definition: c4d_fielddata.h:762
Bool GetInputState(Int32 askdevice, Int32 askchannel, BaseContainer &res) const
Definition: apibaseid.h:250
MACHINEFEATURESTYPE
Definition: c4d_general.h:1512
Internal.
Definition: c4d_gui.h:3265
#define MAXON_MEMBER_ACCESSORS(T, M,...)
Definition: classhelpers.h:613
HOTKEYFLAGS
Definition: ge_prepass.h:166
Definition: c4d_baselist.h:2977
Bool ResetBindPose(BaseDocument *doc, Bool doUndo)
@ ENABLE
The layer is enabled and being sampled.
MEMORY_OBSERVER_STATE
The observer gets information about the target via the state parameter.
Definition: weakrefservices.h:23
MESHTOVOLUMESETTINGS
Definition: ge_prepass.h:1712
virtual Bool Execute(BaseDocument *doc, GeDialog *parentManager)
Definition: c4d_gui.h:1071
Definition: basearray.h:366
virtual void SetFloatValueEx(void *root, void *userdata, void *obj, Int32 lColumn, Float value)
#define MAXON_INTERNED_ID_LOCAL(IID, NAME)
Definition: module.h:76
Message struct for MSG_PRESAMPLE_FIELD_SINGLE.
Definition: c4d_fielddata.h:1370
Int32 aov_channel_cnt
The number of AOVs.
Definition: c4d_shader.h:856
LINESTYLE
Definition: ge_prepass.h:44
#define BC_ID_CLONE_DATA
Container of Container. 1 mograph data container per instance. used by Multi-instance and cloner.
Definition: c4d_baseeffectordata.h:54
Tree/List view cell information.
Definition: customgui_listview.h:98
@ GLOBAL
Use one global value (joint average).
Bool GetDragObject(const BaseContainer &msg, Int32 *type, void **object) const
maxon::String GeGetUserName()
Int32 * aov_channel_id
The channel ID of the AOV.
Definition: c4d_shader.h:855
@ DOCUMENTPREFSONLY
Only load document preferences. If this flag is set, SCENEFILTER::OBJECTS and SCENEFILTER::MATERIALS ...
Definition: c4d_baselist.h:140
Delegate< Result< void >(const NetworkWebServerRef &server, const NetworkHttpHandlerRef &remoteConnection, const String &file, const DataDictionary &request)> HandleRequestDelegate
Definition: network_webserver.h:24
Bool GetDragPosition(const BaseContainer &msg, Int32 *x, Int32 *y) const
virtual Bool GetSubContainer(BaseDocument *doc, BaseContainer &submenu, GeDialog *parentManager)
Int32 DrawGetFontHeight() const
@ VALUE
Sample only the value at the current point (minimum must still sample the value)
Definition: c4d_general.h:1175
@ CPYTHON
Python - The python executable. Runs without UI.
static const Int32 FLchannelmix
Fieldlayer channel mixer remapping layer.
Definition: c4d_fielddata.h:94
const BaseTime operator+(const BaseTime &t1, const BaseTime &t2)
Definition: c4d_basetime.h:244
Definition: lib_instanceobject.h:37
Definition: c4d_baselist.h:1008
const TYPE * operator->() const
Definition: ge_autoptr.h:105
maxon::UChar UChar
Definition: ge_sys_math.h:55
Definition: c4d_gui.h:3329
virtual Bool ExecuteOptionID(BaseDocument *doc, Int32 plugid, Int32 subid, GeDialog *parentManager)
Definition: c4d_basedraw.h:747
Bool Screen2Local(Int32 *x, Int32 *y) const
Poly< Int32 > SimplePolygon
Definition: simplemesh.h:107
const maxon::BaseArray< Int32 > * GetInstanceUniqueIPs() const
@ CONTAINER
BaseContainer.
Definition: lib_volumebuilder.h:42
Vector ** aov_channel
Definition: c4d_shader.h:853
static const Int32 MSG_POSTSAMPLE_FIELD_SINGLE
Message to signal the end of individual calls of an object list.
Definition: c4d_fielddata.h:1365
REFTYPE
Definition: cpython_ref.h:30
@ BMP_GRAYEDOUT
Grays the bitmap out (like the grayed palette icons in Cinema 4D), overlaying it with the current dra...
Definition: gui.h:171
static maxon::Result< maxon::Id > GetAutoWeightAlgoId(BaseDocument *doc, Int index)
VALUEKIND
Definition: apibase.h:2219
ARRAY_CONTAINER
The data type is a ContainerDataType.
Definition: apibase.h:2211
SPLINETOVOLUMESETTINGS
Definition: ge_prepass.h:1743
maxon::Bool CheckLicenseFeature(const maxon::InternedId &featureId)
Vector GetViewColor(Int32 colid, Vector *defaultColor=nullptr)
static Bool AutoWeight(BaseDocument *doc)
A class for paint layer masks.
Definition: c4d_painter.h:614
Definition: c4d_string.h:38
Bool Global2Local(Int32 *x, Int32 *y) const
void SetTension(Float tension)
@ FONT_STANDARD
Standard font.
Definition: gui.h:24
void DrawPolyLine(const maxon::Block< const Vector2d > &p, Bool closed, Float lineWidth=1.0, LINESTYLE lineStyle=LINESTYLE::NORMAL)
KEY_HASH_VALUE
Definition: hashmap.h:3
const maxon::VolumeInterface * GetVolume() const
void DrawEllipseFill(const Vector2d ¢erPoint, const Vector2d &radius)
Bool Compare(const AtomArray *cmp) const
Definition: c4d_baselist.h:1758
static maxon::Result< void > SetAutoWeightDictionary(BaseDocument *doc, maxon::DataDictionary dataDictionary, maxon::Id autoweightId)
#define MAXON_REFERENCE_COPY_ON_WRITE(DUMMY)
Definition: interfacebase.h:1043
const T & src
Definition: apibase.h:2525
TREEVOXELLEVEL
Definition: volumeiterators.h:20
Definition: apibase.h:314
#define MAXON_METHOD
Definition: interfacebase.h:855
Definition: network_ip_addr.h:438
void DrawBezierLine(const Vector2d &startPoint, const maxon::Block< const BezierPoint > &bezierPoints, Bool closed, Float lineWidth=1.0, LINESTYLE lineStyle=LINESTYLE::NORMAL)
FIELDLAYER_FLAG
Definition: ge_prepass.h:4780
String GetObjectName(Int32 type)
ThreadRefTemplate< ThreadInterface > ThreadRef
Reference to a thread (ThreadInterface).
Definition: thread.h:522
Message struct for MSG_DESCRIPTION_COMMAND.
Definition: lib_description.h:850
FIELDSAMPLE_FLAG
Definition: ge_prepass.h:5473
#define MAXON_DECLARATION(T, Name, id)
Definition: module.h:797
static maxon::Result< Int > GetAutoWeightAlgoIndex(BaseDocument *doc, const maxon::Id &id)
Bool Add(const Filename &fn, BaseList2D *bl, Int32 parameterId=-1, Bool netRequestOnDemand=false, Int32 channelIndex=-1, const maxon::CString &nodePath=maxon::GetZeroRef< maxon::CString >(), const maxon::Id &nodeSpace=maxon::GetZeroRef< maxon::Id >())
MIXVECTORTYPE GetMixVectorMode(Int32 index) const
SPACESCOMPATIBILITY
If set, a newline character will be included in the result of LexerInterface::GetLeadingSpaces.
Definition: lexer.h:11
CONTAINER_TEST
Definition: reflectionbase.h:39
GeDialog * dlg
The dialog itself if available. @Note: When dlg==nullptr you have to manually create a new dialog wit...
Definition: c4d_commanddata.h:26
@ BODYPAINT
BodyPaint 3D files.
Bool TransferWeightMap(BaseDocument *doc, CAWeightTag *dst, Int32 sindex, Int32 dindex, Int32 offset, Int32 cnt, AliasTrans *trans, Bool mergeTags=false)
void DrawSetOpacity(Float opacity)
maxon::Result< maxon::BaseArray< maxon::Url > > GetRecentDocumentsList(Bool isBodyPaint)
maxon::Result< void > GetGeneralLicensingInformation(maxon::String &productId, maxon::String &systemId, maxon::String &userId, maxon::String &licenseId, maxon::String &userName)
Id UrlScheme
Definition: url.h:80
GENERIC_CONTAINER
This flag may be set for container types to indicate generic members.
Definition: apibase.h:2203
static maxon::Result< void > GetAutoWeightRef(BaseDocument *doc, const maxon::Id &autoweightId, maxon::AutoWeightRef &autoWeightRef)
Bool GetInputEvent(Int32 askdevice, BaseContainer &res) const
const Class< R > & Get(const Id &cls)
Definition: objectbase.h:1903
MAXON_ATTRIBUTE_FORCE_INLINE Bool IsColorPerceivedAsDark(const ColorA &color)
Definition: vector4d.h:102
NEAREST
Definition: ge_prepass.h:1362
Definition: lib_splinehelp.h:50
Definition: apibasemath.h:33
Bool GetImageRef(SAVEBIT saveBit, Bool alpha, maxon::ImageRef &imageRef) const
Definition: c4d_basebitmap.h:923
maxon::BaseArray< const BaseList2D * > _callers
Detailed stack for id _value.
Definition: c4d_fielddata.h:898
Definition: lib_customdatatag.h:47
Bool Local2Global(Int32 *x, Int32 *y) const
HASHMAP_ENTRY_LAYOUT
Definition: hashmap.h:13
#define NOTOK
Definition: ge_sys_math.h:265
VECTORFILTERTYPE
Definition: volumetools.h:72
Definition: c4d_commanddata.h:61
RESULT AssertCast(SRC &&ref)
Definition: objectbase.h:1539
Factory< StreamConversionRef(const DataDictionary &)> StreamConversionFactory
Definition: streamconversion.h:237
maxon::Result< maxon::String > ExportLicenses()
@ ONLYWITHANIMATION
Only return branch if animation flag is set.
Int32 DrawGetTextWidth(const maxon::String &text) const
Definition: c4d_fielddata.h:119
X Max(X a, X b)
Calculates the maximum of two values and return it.
Definition: apibasemath.h:215
Int32 GetInstanceUniqueIP(UInt index) const
RootTextureString * _rs
Private.
Definition: c4d_baselist.h:1044
Bool BakeShaderIntoBaseBitmap(BaseBitmap &outBmp, BaseDocument &doc, BaseThread *parentThread, Bool doAlpha, Int32 colorSpace, Bool linearworkflow, Bool useHDR, Int xmin, Int xmax, Int ymin, Int ymax)
Definition: c4d_basechannel.h:205
SYNCHRONIZED
Use atomic access to implement a lock-free hash map.
Definition: hashmap.h:3
MEMORY_OBSERVER_FLAGS
The observer might return several flags, if it just observes the destruction it should simply return ...
Definition: weakrefservices.h:13
APPLICATIONFEATURE
Definition: application.h:131
SPLINEMAPPER_SPLINE_TYPE
Definition: splinemapper.h:123
Definition: c4d_baselist.h:1331
MAXON_ATTRIBUTE_FORCE_INLINE Float GetPerceivedBrightness(const ColorA &color)
Definition: vector4d.h:90
ResultMemT< Bool > ResultMem
Definition: apibaseid.h:45
void SetObjectList(const AtomArray &list, Bool limitExceeded=false)
Int32 DrawGetFontBaseLine() const
virtual void SetFloatValue(void *root, void *userdata, void *obj, Int32 lColumn, Float value, Bool finalValue)
void DrawEllipseLine(const Vector2d ¢erPoint, const Vector2d &radius, Float lineWidth=1.0, LINESTYLE lineStyle=LINESTYLE::NORMAL)
JULIANDATE
Variants of Julian Day.
Definition: datetime.h:52
maxon::Int32 Int32
Definition: ge_sys_math.h:58
Definition: c4d_file.h:1069
void DrawLine(Int32 x1, Int32 y1, Int32 x2, Int32 y2, Float lineWidth=1.0, LINESTYLE lineStyle=LINESTYLE::NORMAL)
maxon::Result< void > Add(const BaseList2D *caller)
FILTERSETTINGS
Definition: ge_prepass.h:1758
Definition: ge_prepass.h:37
X Min(X a, X b)
Calculates the minimum of two values and return it.
Definition: apibasemath.h:212
#define MAXON_INTERFACE(Name, REFKIND, ID)
Definition: objectbase.h:1048
#define MAXON_REFERENCE_NORMAL(DUMMY)
Definition: interfacebase.h:957
#define MAXON_DECLARATION_STRINGENCODING(IDSTR, IDSYM)
Definition: stringencoding.h:77
JWTPARSERFLAGS
Definition: parser_jwt.h:16
Definition: lib_volumeset.h:78
CINEMAINFO
Definition: ge_prepass.h:5254
virtual String GetBubbleHelp(void *root, void *userdata, void *obj, Int32 col, CellInfo *info)
@ SKIPOLDERTHANV13
Private. (used in Cineware SDK only).
ASSETDATA_FLAG _flags
The asset data flags: ASSETDATA_FLAG.
Definition: c4d_baselist.h:1045
Definition: datatypelib.h:26
PORT_DIR
Definition: graph_basics.h:21
maxon::Id _nodeSpace
The node space id in case of a nimbus material.
Definition: c4d_baselist.h:1019
STATIC_ARRAY_CONTAINER
The data type is a ContainerDataType.
Definition: apibase.h:2210
Definition: customgui_splinecontrol.h:271
CURRENT_MODULE_DIR
Directory of the module that invoked this call.
Definition: application.h:79
CURRENT_MODULE_RESOURCE_DIR
Resource directory of the module that invoked this call.
Definition: application.h:84
Definition: c4d_fielddata.h:739
ASSETDATA_FLAG
Definition: ge_prepass.h:246
CUBICBIAS
Cubic bias.
Definition: gradient.h:3
SPLINEMAPPER_KNOT_INTERPOLATION_TYPE
Definition: splinemapper.h:33
HASH_COMMENTS
If set, comments are introduced by the hash character (instead of C++-like comments).
Definition: lexer.h:8
static const LiteralId CINEBENCH
Definition: applicationid.h:17
CONTAINER_MASK
The data type is a ContainerDataType.
Definition: apibase.h:2213
#define MAXON_WARN_UNUSED_CLASS
Definition: compilerdetection.h:323
@ NONLINEARCOLOR
Deliver the color in non-linear sRGB colorspace (see Document Linear Color Workflow settings)
LEXERSYMBOLFLAGS
Flags used for LexerInterface::ReadNextSymbol() and LexerInterface::ReadNextSymbolExpected()
Definition: lexer.h:59
VOLUMESAMPLER
Definition: volumeaccessors.h:16
Definition: lib_instanceobject.h:222
Definition: c4d_basebitmap.h:410
Motion particle transformation data.
Definition: c4d_baseeffectordata.h:233
static const Float EPSILON6
1e-6
Definition: ge_sys_math.h:89
String & operator+=(String &s, const CString &b)
maxon::Result< maxon::DataType > GetDataType() const
Bool Append(C4DAtom *obj)
Definition: c4d_baselist.h:1641
GETBRANCHINFO
Definition: ge_prepass.h:3220
Definition: ge_autoptr.h:36
#define MAXON_FUNCTION
Definition: interfacebase.h:873
Definition: customgui_description.h:99
@ GRADIENT_INTERPOLATION_CUBICBIAS
Cubic Bias.
Definition: customgui_gradient.h:94
Bool IsCPURenderer()
Definition: c4d_basedraw.h:1814
Bool GetColorRGB(Int32 colorid, Int32 &r, Int32 &g, Int32 &b) const
#define MATH_HELPER_INSTANTIATE(Func)
Definition: scalar_extension.h:80
@ LITE
Cinema 4D Lite. Lite is feature-restricted in many ways and does not allow for loading of plugins.
void DrawCustomButton(Int32 x, Int32 y, Int32 w, Int32 h, const Int32 *ids, Bool nofill, Bool focus)
@ BlendColor
Color.
Definition: lib_layershader.h:87
UInt32 GetMatrixDirtyID(UInt index) const
#define DESCRIPTION_HIDE_LAYOUT_SWITCH
Bool Hides fold arrow
Definition: customgui_description.h:42
maxon::Result< void > SetInstanceUniqueIPs(const maxon::BaseArray< Int32 > &uniqueIPs)
Definition: delegate.h:235
void RemoveMask(Bool deleteLayers=true)
Definition: c4d_fielddata.h:1359
void SetMixVectorMode(Int32 index, MIXVECTORTYPE mode)
maxon::Bool Bool
Definition: ge_sys_math.h:53
#define MAXON_ATTRIBUTE(TYPE, NAME, RID,...)
Definition: fid.h:146
static const Int32 MSG_PRESAMPLE_FIELD_SINGLE
Message to signal an impending invidual calls of an object list The corresponding data is PresampleFi...
Definition: c4d_fielddata.h:1364
maxon::UInt UInt
Definition: ge_sys_math.h:63
JSONPARSERFLAGS
Definition: parser_json.h:16
BRANCHINFOFLAGS
Definition: ge_prepass.h:3234
Definition: c4d_thread.h:61
@ COMMANDLINE
Command line application. Note that this is different from GeGetCinemaInfo(CINEMAINFO::FORBID_GUI)....
VolumeInterface represents a core volume object in cinema.
Definition: volume.h:20
void DrawFrame(Int32 x1, Int32 y1, Int32 x2, Int32 y2, Float lineWidth=1.0, LINESTYLE lineStyle=LINESTYLE::NORMAL)
void Reset(T &object)
Definition: apibase.h:2592
Bool CheckDropArea(const BaseContainer &msg, Bool horiz, Bool vert) const
auto Remove(ITERATOR first, SENTINEL sentinel, const T &value) -> ITERATOR
Definition: algorithms.h:1586
@ HASFIELDS
If set, this branch will contain FieldLayers and will display in the FieldsList.
IMAGERESULT
Definition: ge_prepass.h:3659
void GetBorderSize(Int32 type, Int32 *l, Int32 *t, Int32 *r, Int32 *b) const
Definition: c4d_baselist.h:1587
HTTPMETHOD
Definition: network_url.h:13
Bool GetEditMaskMode()
Definition: c4d_painter.h:625
void SetVolume(const maxon::VolumeInterface *volumeObj)
NEVER_NULLPTR
This flag is set for pointer or reference types which never hold a nullptr value.
Definition: apibase.h:2193
Result< Tuple< String, String > > HashPasswordWithSalt(const String &password, const StreamConversionFactory &hashClass=StreamConversions::HashSHA256())
LEXERSYMBOL
Enumeration for special lexer symbols.
Definition: lexer.h:19
SAVEBIT
Definition: ge_prepass.h:265
Definition: c4d_baselist.h:2082
UrlOrStream< InputStreamRef > UrlOrInputStream
Definition: iostreams.h:20
maxon::Char Char
Definition: ge_sys_math.h:54
maxon::Result< void > SetInstanceMatrix(UInt index, const Matrix &globalMatrix)
Definition: c4d_baselist.h:1980
Definition: c4d_basedocument.h:490
Definition: c4d_commanddata.h:23
@ WPREF_COMMUNICATION_METRICS_DISABLE
Bool. Enable/disable Metrics collection of information.
Definition: ge_prepass.h:2400
Definition: c4d_gui.h:163
POLYGONCONVERSIONFLAGS
Definition: volumetools.h:23
Definition: string.h:1436
@ BMP_SCALE_NEARESTPIXEL
scales with nearest pixel to prevent interpolations
Definition: gui.h:180
@ BMP_TRANSPARENTALPHA
The alpha background is not filled with the current pen.
Definition: gui.h:172
Definition: lib_clipmap.h:146
maxon::UInt64 UInt64
Definition: ge_sys_math.h:61
@ LV_GETBUBBLEHELP
Ask for Bubble Help String.
Definition: ge_prepass.h:5166
Definition: c4d_basecontainer.h:46
maxon::Float64 Float64
Definition: ge_sys_math.h:65
Definition: c4d_baselist.h:1033
BaseOverride * _override
The override containing the owner of the asset if it's not in the current take.
Definition: c4d_baselist.h:1020
maxon::Result< void > AddLicenseItem(const maxon::InternedId &licenseItemId, Float versionNumber, Bool checkOnly, maxon::CustomLicenseItemDelegate &&licenseUpdateCallback)
virtual Bool ExecuteSubID(BaseDocument *doc, Int32 subid, GeDialog *parentManager)
C_ESCAPE_SEQUENCES
If set, a subset of C escape sequences is recognized in strings (\n, \t and \r).
Definition: lexer.h:10
IOFORMAT
Definition: io.h:11
Definition: apibase.h:300