Atlassian uses cookies to improve your browsing experience, perform analytics and research, and conduct advertising. Accept all cookies to indicate that you agree to our use of cookies on your device. Atlassian cookies and tracking notice, (opens new window)

Enlighten API 4.03 Documentation
Results will update as you type.
  • Modules
  • Namespaces
    • namespace Enlighten
      • class Enlighten A8CpuTextureSampler
      • class Enlighten Alpha8Normalised
      • class Enlighten AsyncTaskThreadGroup
      • class Enlighten BakedProbeOutputInfo
      • class Enlighten BakeInputLight
      • class Enlighten BakeInputMeshInfo
      • class Enlighten BakeMaterialInfo
      • class Enlighten BaseAlbedoHandler
      • class Enlighten BaseCubeMap
      • class Enlighten BaseDynamicObject
      • class Enlighten BaseEnvironment
      • class Enlighten BaseProbeSet
      • class Enlighten BaseSystem
      • class Enlighten BaseSystemSolutionSpace
      • class Enlighten BaseWorker
      • class Enlighten BoundingBox2D
      • class Enlighten BoxSpotlight
      • class Enlighten BoxVolume
      • class Enlighten CallableEnqueueFunctorCommand
      • class Enlighten ClusterAlbedoWorkspaceMaterialData
      • class Enlighten ClusterMaterialComponent
      • class Enlighten ClusterMaterials
      • class Enlighten ClusterProbeTransparencySampleData
      • class Enlighten ClusterRange
      • class Enlighten Command
      • class Enlighten ConstLightValueIterator
      • class Enlighten CopyAlbedoBufferInfo
      • class Enlighten CopyBounceBufferInfo
      • class Enlighten CopyEmissiveBufferInfo
      • class Enlighten CopyEmissiveEnvironmentInfo
      • class Enlighten CopyInputLightingBufferInfo
      • class Enlighten CopyProbeOutputInfo
      • class Enlighten CopyRawOutputInfo
      • class Enlighten CopyTransparencyBufferInfo
      • class Enlighten CopyVisibilityBufferInfo
      • class Enlighten CpuAlbedoHandler
      • class Enlighten CpuCubeMap
      • class Enlighten CpuDynamicObject
      • class Enlighten CpuEnvironment
      • class Enlighten CpuSystem
      • class Enlighten CpuSystemSolutionSpace
      • class Enlighten CpuTextureSamplerBase
      • class Enlighten CpuWorker
    Calendars

You‘re viewing this with anonymous access, so some content might be blocked.
/
class Enlighten AsyncTaskThreadGroup

    This is the documentation for Enlighten.

    class Enlighten AsyncTaskThreadGroup

    Sept 09, 2025

    class Enlighten::AsyncTaskThreadGroup

        └>Enlighten::IThreadGroup
            └>Geo::IGeoReleasable

    A thread group which executes Enlighten tasks by calling the AsyncTaskCallback a given number of times, and uses GeoEvent signalling to wait until all threads have completed execution.

    Functions

    Name Description
    AsyncTaskThreadGroup(AsyncTaskCallback, Geo::s32)

    AsyncTaskThreadGroup constructor.

    GetNumThreads()

    The number of threads in the thread group.

    GetNumThreads()

    The number of threads in the thread group.

    Init()

    Init() and Shutdown() will be called on the thread which calls Run() (ie the update manager worker thread)

    Init()

    Init() and Shutdown() will be called on the thread which calls Run() (ie the update manager worker thread)

    NonCopyable(NonCopyable &&)

    Defaulted to allow move.

    operator=(NonCopyable &&)

    Defaulted to allow move.

    Release()

    This function will be called when MultithreadCpuWorker is destroyed.

    Release()

    This function will be called when MultithreadCpuWorker is destroyed.

    Release()

    Free this object that was created within the Enlighten libraries.

    Run(TaskProcessor *, const char *)

    Run tasks using threads in the thread group.

    Run(TaskProcessor *, const char *)

    Run tasks using threads in the thread group.

    Shutdown()

    One-time shut down function.

    Shutdown()

    One-time shut down function.


    Enlighten::AsyncTaskThreadGroup::AsyncTaskThreadGroup


    public: AsyncTaskThreadGroup
    (
        AsyncTaskCallback callback,
        Geo::s32 numThreads
    )


    AsyncTaskThreadGroup constructor.


    virtual Geo::s32 Enlighten::AsyncTaskThreadGroup::GetNumThreads


    public: virtual Geo::s32 GetNumThreads()


    The number of threads in the thread group.


    virtual Geo::s32 Enlighten::IThreadGroup::GetNumThreads


    public: Geo::s32 GetNumThreads()


    The number of threads in the thread group.


    virtual void Enlighten::AsyncTaskThreadGroup::Init


    public: virtual void Init()


    Init() and Shutdown() will be called on the thread which calls Run() (ie the update manager worker thread)

    One-time initialisation function


    virtual void Enlighten::IThreadGroup::Init


    public: void Init()


    Init() and Shutdown() will be called on the thread which calls Run() (ie the update manager worker thread)

    One-time initialisation function


    Geo::NonCopyable::NonCopyable


    public: NonCopyable
    (
        NonCopyable &&
    )


    Defaulted to allow move.


    NonCopyable& Geo::NonCopyable::operator=


    public: NonCopyable & operator=
    (
        NonCopyable &&
    )


    Defaulted to allow move.


    virtual void Enlighten::AsyncTaskThreadGroup::Release


    public: virtual void Release()


    This function will be called when MultithreadCpuWorker is destroyed.


    virtual void Enlighten::IThreadGroup::Release


    public: void Release()


    This function will be called when MultithreadCpuWorker is destroyed.


    virtual void Geo::IGeoReleasable::Release


    public: void Release()


    Free this object that was created within the Enlighten libraries.

    Expect this to behave in a similar way to calling 'delete(this)'


    virtual void Enlighten::AsyncTaskThreadGroup::Run


    public: virtual void Run
    (
        TaskProcessor * taskProcessors,
        const char * name
    )


    Run tasks using threads in the thread group.

    The array of task processors will have the number of elements returned by GetNumThreads(). The name parameter will describe which Enlighten processing stage is being run, for profiling purposes.


    virtual void Enlighten::IThreadGroup::Run


    public: void Run
    (
        TaskProcessor * taskProcessors,
        const char * name
    )


    Run tasks using threads in the thread group.

    The array of task processors will have the number of elements returned by GetNumThreads(). The name parameter will describe which Enlighten processing stage is being run, for profiling purposes.


    virtual void Enlighten::AsyncTaskThreadGroup::Shutdown


    public: virtual void Shutdown()


    One-time shut down function.


    virtual void Enlighten::IThreadGroup::Shutdown


    public: void Shutdown()


    One-time shut down function.

    , multiple selections available,
    {"serverDuration": 9, "requestCorrelationId": "b4cf4b92f5d24a3184b3155786ca7e40"}