Open Search
    c4d_thread.h File Reference

    Classes

    class  BaseThread
     
    class  C4DThread
     
    class  AutoLock
     
    class  AutoLocker
     
    class  AutoRWLock
     
    class  AutoRWLocker
     

    Functions

    Int32 GeGetCurrentThreadCount ()
     
    void GeThreadLock ()
     
    void GeThreadUnlock ()
     
    THREADTYPE IdentifyThread (BaseThread *bt)
     
    UInt32 GeGetCurrentThreadId ()
     
    BaseThreadGeGetCurrentThread ()
     
    BaseThreadGeGetDummyThread ()
     
    BaseThreadGeGetEscTestThread ()
     
    maxon::ThreadRef MaxonConvert (BaseThread *thread)
     
    BaseThreadMaxonConvert (const maxon::ThreadRef &thread)
     
    BaseThreadMaxonConvert (const maxon::ThreadInterface *thread)
     

    Function Documentation

    ◆ GeGetCurrentThreadCount()

    Int32 GeGetCurrentThreadCount ( )

    Retrieves the number of threads being used for the current (render) context.

    Note
    This might be smaller than the actual CPU core or thread count if the user selected a custom number of render threads.
    Returns
    The number of threads being used for the current context.

    ◆ GeThreadLock()

    void GeThreadLock ( )

    A global semaphore. When this is locked, any other thread trying to acquire the lock will have to wait. Other threads will continue. Deprecated.

    Warning
    As this blocks all threads it should only be used if and when necessary, a local semaphore is a more elegant and efficient solution to multiple thread data access.

    ◆ GeThreadUnlock()

    void GeThreadUnlock ( )

    Continues blocked threads after a call to GeThreadLock(). Deprecated.

    ◆ IdentifyThread()

    THREADTYPE IdentifyThread ( BaseThread bt)

    Identifies the type of a thread.

    Parameters
    [in]btThe thread to identify. The caller owns the pointed thread.
    Returns
    The thread type: THREADTYPE

    ◆ GeGetCurrentThreadId()

    UInt32 GeGetCurrentThreadId ( )

    Retrieves a unique ID for the current thread.

    Note
    Usually you do not have to care about this.
    Returns
    The unique ID for the current thread.

    ◆ GeGetCurrentThread()

    BaseThread* GeGetCurrentThread ( )

    Retrieves the current thread.

    Returns
    The current thread.

    ◆ GeGetDummyThread()

    BaseThread* GeGetDummyThread ( )

    Returns a dummy thread (TestBreak() will always return false).

    Since
    R17.032
    Returns
    A pointer to a dummy thread (guaranteed to be valid).

    ◆ GeGetEscTestThread()

    BaseThread* GeGetEscTestThread ( )

    Returns a dummy thread for escape key testing (TestBreak() will return true, when the user presses the Esc key).

    Since
    R17.032
    Returns
    A pointer to an escape key test thread (guaranteed to be valid).

    ◆ MaxonConvert() [1/3]

    maxon::ThreadRef MaxonConvert ( BaseThread thread)

    ◆ MaxonConvert() [2/3]

    BaseThread* MaxonConvert ( const maxon::ThreadRef thread)

    ◆ MaxonConvert() [3/3]

    BaseThread* MaxonConvert ( const maxon::ThreadInterface thread)