2017-10-02 13:51:08 +02:00
|
|
|
#pragma once
|
|
|
|
|
2017-11-23 23:31:24 +01:00
|
|
|
#include "c-opcomp.hh"
|
2017-10-02 13:51:08 +02:00
|
|
|
|
2017-11-15 23:09:52 +01:00
|
|
|
namespace ops { class T_OpContext; }
|
|
|
|
|
2017-10-02 13:51:08 +02:00
|
|
|
|
|
|
|
struct T_Demo
|
|
|
|
{
|
2017-11-15 23:09:52 +01:00
|
|
|
T_Demo( ) = default;
|
|
|
|
|
2017-10-02 13:51:08 +02:00
|
|
|
NO_COPY( T_Demo );
|
|
|
|
NO_MOVE( T_Demo );
|
|
|
|
|
|
|
|
// ---------------------------------------------------------------------
|
|
|
|
|
2017-11-15 23:09:52 +01:00
|
|
|
bool initialise( const uint32_t width ,
|
2017-11-14 22:04:00 +01:00
|
|
|
const uint32_t height );
|
2018-03-30 17:34:22 +02:00
|
|
|
bool render( );
|
2017-10-02 13:51:08 +02:00
|
|
|
|
|
|
|
// ---------------------------------------------------------------------
|
|
|
|
|
2017-11-15 23:09:52 +01:00
|
|
|
private:
|
|
|
|
uint32_t width;
|
|
|
|
uint32_t height;
|
|
|
|
|
2017-11-14 22:04:00 +01:00
|
|
|
T_OwnPtr< ops::T_OpProgram > program;
|
|
|
|
T_OwnPtr< ops::T_OpContext > context;
|
2017-10-07 17:39:38 +02:00
|
|
|
|
2017-11-15 23:09:52 +01:00
|
|
|
bool runInit( ops::T_OpProgram& program );
|
2017-10-02 13:51:08 +02:00
|
|
|
};
|