micronodes.h File Reference

Classes

struct  ProcessWrapper< MT, MODE >
 
struct  ProcessWrapper< Result< void >(MN::*)(PORTS &) const, MODE >
 
struct  HasProcessMethodTemplate< MN, typename >
 
struct  HasProcessMethodTemplate< MN, typename SFINAEHelper< void, decltype(&MN::template Process< PortsMode< PORTS_MODE::NONE >>)>::type >
 
class  VirtualInputPort
 
class  VariableMicroNode
 
class  BasicMicroNode
 
struct  BasicMicroNode::ProcessParamType< PORTS >
 
class  VariadicBasicMicroNode
 
class  Uninitialized< MICRONODE >
 

Namespaces

 maxon
 
 maxon::corenodes
 
 maxon::corenodes::details
 

Macros

#define PRIVATE_MAXON_MICRONODE(C, MNTYPE)
 
#define PRIVATE_MAXON_BUILTIN_MICRONODE(C, MNTYPE)
 
#define PRIVATE_MAXON_MICRONODE_INIT
 
#define PRIVATE_MAXON_MICRONODE_METHOD_INITUSERDATA
 
#define PRIVATE_MAXON_MICRONODE_METHOD_INITUSERDATA_INIT
 
#define PRIVATE_MAXON_MICRONODE_METHOD_GETLLVMCODE
 
#define PRIVATE_MAXON_MICRONODE_METHOD_GETLLVMCODE_INIT
 

Typedefs

using ProcessFunction = Result< void >(*)(const MicroNode *, VarAccess &)
 
using InitUserDataFn = Result< void >(*)(const MicroNode::Base *, GenericData &data, const Block< const DataType > &)
 
using GetLlvmAssemblyFn = Result< CString >(*)(const MicroNode::Base *, const LlvmGlobalsReceiver &globals)
 

Functions

template<typename MN , typename MT , MT METHOD, typename T >
static Result< void > InvokeInitUserData (const MicroNode::Base *node, GenericData &data, const Block< const DataType > &types)
 
template<typename MN , typename MT , MT METHOD, typename T >
static InitUserDataFn GetInitUserData (Result< T >(MN::*)(const Block< const DataType > &) const, MicroNode::Base &node)
 
template<typename MN , typename MT , MT METHOD>
static InitUserDataFn GetInitUserData (void(*)(), MicroNode::Base &)
 
template<typename MN , typename MT , MT METHOD>
static Result< CString > InvokeGetLlvmAssembly (const MicroNode::Base *node, const LlvmGlobalsReceiver &globals)
 
template<typename MN , typename MT , MT METHOD>
static GetLlvmAssemblyFn GetGetLlvmAssembly (Result< CString >(MN::*)(const LlvmGlobalsReceiver &) const, MicroNode::Base &node)
 
template<typename MN , typename MT , MT METHOD>
static GetLlvmAssemblyFn GetGetLlvmAssembly (void(*)(const LlvmGlobalsReceiver &), MicroNode::Base &)
 
template<typename MN , typename MT , MT METHOD>
static GetLlvmAssemblyFn GetGetLlvmAssembly (void(MN::*)(const LlvmGlobalsReceiver &) const, MicroNode::Base &)
 

Macro Definition Documentation

◆ PRIVATE_MAXON_MICRONODE

#define PRIVATE_MAXON_MICRONODE (   C,
  MNTYPE 
)

◆ PRIVATE_MAXON_BUILTIN_MICRONODE

#define PRIVATE_MAXON_BUILTIN_MICRONODE (   C,
  MNTYPE 
)

◆ PRIVATE_MAXON_MICRONODE_INIT

#define PRIVATE_MAXON_MICRONODE_INIT

◆ PRIVATE_MAXON_MICRONODE_METHOD_INITUSERDATA

#define PRIVATE_MAXON_MICRONODE_METHOD_INITUSERDATA

◆ PRIVATE_MAXON_MICRONODE_METHOD_INITUSERDATA_INIT

#define PRIVATE_MAXON_MICRONODE_METHOD_INITUSERDATA_INIT

◆ PRIVATE_MAXON_MICRONODE_METHOD_GETLLVMCODE

#define PRIVATE_MAXON_MICRONODE_METHOD_GETLLVMCODE

◆ PRIVATE_MAXON_MICRONODE_METHOD_GETLLVMCODE_INIT

#define PRIVATE_MAXON_MICRONODE_METHOD_GETLLVMCODE_INIT