Machine Class Reference

#include <machine.h>

List of all members.

Public Member Functions

 Machine (int platform_index=0, cl_device_v devices=cl_device_v())
 Machine (cl_context_properties gl_context, cl_context_properties display, int platform_index=0, cl_device_v devices=cl_device_v())
 ~Machine ()
void run (cl_kernel kernel, size_t w, size_t h)
void addChild (Model *child)
void removeChild (Model *child)
void finish ()
cl_context getContext ()
bool GLinteroprability ()

Static Public Member Functions

static cl_platform_v getPlatforms ()
static cl_device_v getDevices (cl_platform_id platform_id, cl_device_type type=CL_DEVICE_TYPE_ALL)


Detailed Description

Trieda zastresuje vytvorenie OpenCL kontextu v ktorom su spravovane vypoctove zariadenia

Constructor & Destructor Documentation

Machine::Machine ( int  platform_index = 0,
cl_device_v  devices = cl_device_v() 
)

Konstruktor ktory vytvory context s danymi zariadeniami

Parameters:
platform_index cislo platformy ktora sa ma pouzit
devices vektor zariadeni z ktorych bude vytvoreny kontext ak je prazdny pouziju sa vsetky zariadenia

Machine::Machine ( cl_context_properties  gl_context,
cl_context_properties  display,
int  platform_index = 0,
cl_device_v  devices = cl_device_v() 
)

Konstruktor ktory vytvory context s danymi zariadeniami

Parameters:
gl_context OpenGL kontext s ktorym bude zviazany OpenCL kontext na sfunkcnenie OpenGL/OpenGL interoperability
display GLX display na ktorom je dany OpenGL zviazany
platform_index cislo platformy ktora sa ma pouzit
devices vektor zariadeni z ktorych bude vytvoreny kontext

Machine::~Machine (  ) 

destruktor uvolni vsetky prostriedky a taktiez aj svojich potomkov


Member Function Documentation

void Machine::addChild ( Model child  ) 

Registruje potomka.

Parameters:
child ukazovatel na potomka vola sa automaticky v konstruktore Model

void Machine::finish (  ) 

Zavola nad kazdou frontou clFinish co zabezpeci ze vsetky cakajuce udalosti sa vykonaju

cl_context Machine::getContext (  ) 

Returns:
OpenCL kontext. Potrebne pre potomkov pri vytvarani programov a bufferov.

cl_device_v Machine::getDevices ( cl_platform_id  platform_id,
cl_device_type  type = CL_DEVICE_TYPE_ALL 
) [static]

Parameters:
platform_id ID platformy z ktorej sa maju vratit zariadenia
type typ zariadenia ktore ssa muju vratit CL_DEVICE_TYPE_GPU CL_DEVICE_TYPE_CPU
Returns:
vektor zariadeni z danej platformy a typu

cl_platform_v Machine::getPlatforms (  )  [static]

Returns:
vektor obsahujuci vsetky platformy pristupne v systeme

bool Machine::GLinteroprability (  )  [inline]

Returns:
true ak je aktivna OpenGL/OpenCL interoperabilita

void Machine::removeChild ( Model child  ) 

Odstrani potomka zo zoznau potomkov. Treba zmazat potom rucne. Volat z destruktora

Parameters:
child potomok ktory sa ma odstranit

void Machine::run ( cl_kernel  kernel,
size_t  w,
size_t  h 
)

Prida do fronty na spustenie kernel aj s parametrami. Tie treba nastvit predtym ako sa zavola tato metoda. Tato metoda nie je urcena na priame volanie z programu ale volanie z potomka.

Parameters:
kernel kernel ktory sa ma spustit
w sirka vypoctovej domeny
h vyska vypoctovej domeny


The documentation for this class was generated from the following files:

Generated on Tue Mar 9 14:51:38 2010 for Cellula by  doxygen 1.5.8