Tramway SDK
Classes | Namespaces | Functions
async.cpp File Reference
#include <templates/queue.h>
#include <templates/pool.h>
#include <framework/core.h>
#include <framework/async.h>
#include <framework/system.h>
#include <framework/resource.h>
#include <framework/entitycomponent.h>
#include <thread>
#include <vector>

Classes

struct  tram::Async::ResourceRequest
 

Namespaces

namespace  tram
 
namespace  tram::Async
 

Functions

void tram::Async::RequestResource (EntityComponent *requester, Resource *resource)
 Adds a resource to the loading queue. More...
 
void tram::Async::CancelRequest (EntityComponent *requester, Resource *resource)
 Cancels a resource load request. More...
 
void tram::Async::LoadDependency (Resource *res)
 Loads a resource from disk, skipping the queue. More...
 
void tram::Async::LoadResourcesFromDisk ()
 Processes the first resource queue. More...
 
void tram::Async::LoadResourcesFromMemory ()
 Processes the second resource queue. More...
 
void tram::Async::FinishResources ()
 Notifies EntityComponents about finished resources. More...
 
void tram::Async::Init (size_t threads)
 Starts the async resource loader thread. More...
 
void tram::Async::Yeet ()
 Stops the async resource loader thread. More...
 
size_t tram::Async::GetWaitingResources ()
 Returns number of resources in queues. More...