Open Search
    maxon::corenodes::details Namespace Reference

    Classes

    struct  CoreNodeFactoryFunctionHelper
     
    struct  CoreNodeFactoryFunctionHelper< true >
     
    struct  SetParameters
     
    struct  SetParameters< CORENODE, typename SFINAEHelper< void, typename CORENODE::Parameters >::type >
     
    class  OperatorNodeBase
     
    class  OperatorNodeBase< ParameterPack< IN >, 0 >
     
    class  OperatorMicroNode
     
    class  OperatorNodeHelper
     
    class  OperatorNodeHelper< OP, RESULT, TYPES, std::index_sequence< I... > >
     
    class  MethodWrapper
     
    class  DirectPortAccess
     
    class  MappedPortAccess
     
    class  ArrayElementAccess
     
    class  PortOps
     
    class  PortOpsBase
     
    class  PortOpsBase< T &, ACCESS >
     
    class  IndexedPortAccess
     
    class  IndexedPort
     
    struct  SourceCodePortId
     
    class  PortDefBase
     
    class  PortDefBaseCtor
     
    class  PortDefBaseCtor< C, MICRO, HASH, FLAGS, MEMBERS, void, -1 >
     
    struct  AddDimension
     
    struct  AddDimension< void, N >
     
    class  PortArrayAccess
     
    struct  Select
     
    class  PortMembers
     

    Typedefs

    using InitUserDataFn = Result< void >(*)(const MicroNode::Base *, GenericData &data, const Block< const DataType > &)
     
    using GetLlvmAssemblyFn = Result< CString >(*)(const MicroNode::Base *, const LlvmGlobalsReceiver &globals)
     
    template<typename T >
    using MyBegin = typename T::Begin
     
    template<typename T >
    using PortValueTypeHelper = typename std::conditional< STD_IS_REPLACEMENT(reference, T), typename std::decay< T >::type, typename std::add_const< T >::type >::type
     
    template<typename T >
    using UnannotatedTypeHelper = typename SubstituteType< T, UnannotatedType >::type
     

    Functions

    template<typename N , typename... ARGS>
    Result< typename std::decay< typename GetSignature< decltype(&N::Init)>::Parameters::template At< 0 >::type >::typeCreateNode (OverloadRank0, const Id &nodeId, ARGS &&... args)
     
    template<typename N , typename = decltype(&N::GetPortType), typename... ARGS>
    Result< typename std::decay< typename GetSignature< decltype(&N::Init)>::Parameters::template At< 0 >::type >::typeCreateNode (OverloadRank1, const Id &nodeId, ARGS &&... args)
     
     MAXON_MEMBERFUNCTION_DETECTOR (Optimize)
     
    template<typename NODE , typename = typename std::enable_if<maxon::corenodes::details::HasOptimize<NODE>::value>::type>
    Result< void > AddOptimizer (DataDictionary &meta, Bool dummy=false)
     
    template<typename NODE , typename = typename std::enable_if<!maxon::corenodes::details::HasOptimize<NODE>::value>::type>
    ResultOk< void > AddOptimizer (DataDictionary &meta)
     
    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< CStringInvokeGetLlvmAssembly (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 &)
     
    template<typename DIMENSION >
    Int ComputeLinearIndex (const Int *index)
     
    template<>
    Int ComputeLinearIndex< Char > (const Int *index)
     
    template<typename DIMENSION >
    Int ComputeLinearIndex (Int index)
     

    Typedef Documentation

    ◆ InitUserDataFn

    using InitUserDataFn = Result<void>(*)(const MicroNode::Base*, GenericData& data, const Block<const DataType>&)

    ◆ GetLlvmAssemblyFn

    ◆ MyBegin

    using MyBegin = typename T::Begin

    ◆ PortValueTypeHelper

    using PortValueTypeHelper = typename std::conditional<STD_IS_REPLACEMENT(reference, T), typename std::decay<T>::type, typename std::add_const<T>::type>::type

    ◆ UnannotatedTypeHelper

    Function Documentation

    ◆ CreateNode() [1/2]

    Result<typename std::decay<typename GetSignature<decltype(&N::Init)>::Parameters::template At<0>::type>::type> maxon::corenodes::details::CreateNode ( OverloadRank0  ,
    const Id nodeId,
    ARGS &&...  args 
    )

    ◆ CreateNode() [2/2]

    Result<typename std::decay<typename GetSignature<decltype(&N::Init)>::Parameters::template At<0>::type>::type> maxon::corenodes::details::CreateNode ( OverloadRank1  ,
    const Id nodeId,
    ARGS &&...  args 
    )

    ◆ MAXON_MEMBERFUNCTION_DETECTOR()

    maxon::corenodes::details::MAXON_MEMBERFUNCTION_DETECTOR ( Optimize  )

    ◆ AddOptimizer() [1/2]

    Result<void> maxon::corenodes::details::AddOptimizer ( DataDictionary &  meta,
    Bool  dummy = false 
    )

    ◆ AddOptimizer() [2/2]

    ResultOk<void> maxon::corenodes::details::AddOptimizer ( DataDictionary &  meta)

    ◆ InvokeInitUserData()

    static Result<void> maxon::corenodes::details::InvokeInitUserData ( const MicroNode::Base node,
    GenericData data,
    const Block< const DataType > &  types 
    )
    static

    ◆ GetInitUserData() [1/2]

    static InitUserDataFn maxon::corenodes::details::GetInitUserData ( Result< T >(MN::*)(const Block< const DataType > &) const  ,
    MicroNode::Base node 
    )
    static

    ◆ GetInitUserData() [2/2]

    static InitUserDataFn maxon::corenodes::details::GetInitUserData ( void(*)()  ,
    MicroNode::Base  
    )
    static

    ◆ InvokeGetLlvmAssembly()

    static Result<CString> maxon::corenodes::details::InvokeGetLlvmAssembly ( const MicroNode::Base node,
    const LlvmGlobalsReceiver globals 
    )
    static

    ◆ GetGetLlvmAssembly() [1/3]

    static GetLlvmAssemblyFn maxon::corenodes::details::GetGetLlvmAssembly ( Result< CString >(MN::*)(const LlvmGlobalsReceiver &) const  ,
    MicroNode::Base node 
    )
    static

    ◆ GetGetLlvmAssembly() [2/3]

    static GetLlvmAssemblyFn maxon::corenodes::details::GetGetLlvmAssembly ( void(*)(const LlvmGlobalsReceiver &)  ,
    MicroNode::Base  
    )
    static

    ◆ GetGetLlvmAssembly() [3/3]

    static GetLlvmAssemblyFn maxon::corenodes::details::GetGetLlvmAssembly ( void(MN::*)(const LlvmGlobalsReceiver &) const  ,
    MicroNode::Base  
    )
    static

    ◆ ComputeLinearIndex() [1/2]

    Int maxon::corenodes::details::ComputeLinearIndex ( const Int index)

    ◆ ComputeLinearIndex< Char >()

    ◆ ComputeLinearIndex() [2/2]

    Int maxon::corenodes::details::ComputeLinearIndex ( Int  index)