struct Core::Platform::ISystemSupervisor

Overview

Can be used to request certain privileges from the underlying OS from a non-privileged application. More…

#include <coreplatformsupervisor.h>

struct ISystemSupervisor
{
    // methods

    virtual bool getThreadStack(void*& stack, int& size, CStringPtr threadName) = 0;
    virtual void freeThreadStack(CStringPtr threadName) = 0;
    virtual bool grantObjectAccess(void* platformObject) = 0;
    virtual int getMaxThreads() const = 0;
};

// direct descendants

template <class SupervisorConfig>
class FixedSystemSupervisor;

Detailed Documentation

Can be used to request certain privileges from the underlying OS from a non-privileged application.

This interface should be implemented outside of Core.

Methods

virtual bool getThreadStack(void*& stack, int& size, CStringPtr threadName) = 0

Get a thread stack for a thread with given name.

virtual void freeThreadStack(CStringPtr threadName) = 0

Frees stack used by thread for other threads.

virtual bool grantObjectAccess(void* platformObject) = 0

Request access to an existing platform/kernel object.

virtual int getMaxThreads() const = 0

Get Maximum Supported Threads, -1 when unlimited.