20 #ifndef LUNCHBOX_UPLOADER_H
21 #define LUNCHBOX_UPLOADER_H
25 #include <lunchbox/thread.h>
29 namespace detail {
class Uploader; }
51 LUNCHBOX_API
bool isGood(
const GLEWContext* gl )
const;
57 LUNCHBOX_API
bool uses(
const uint32_t name )
const;
63 LUNCHBOX_API
bool supports(
const uint32_t externalFormat,
64 const uint32_t internalFormat,
65 const uint64_t capabilities,
66 const GLEWContext* gl )
const;
77 const uint32_t externalFormat,
78 const uint32_t internalFormat,
79 const uint64_t capabilities,
80 const GLEWContext* gl );
101 const uint32_t externalFormat,
102 const uint32_t internalFormat,
103 const uint64_t capabilities,
104 const GLEWContext* gl );
107 LUNCHBOX_API
void clear();
120 LUNCHBOX_API
void upload(
const void* buffer,
const uint64_t inDims[4],
121 const uint64_t flags,
const uint64_t outDims[4],
122 const unsigned destination,
123 const GLEWContext* gl );
125 detail::Uploader*
const impl_;
126 LB_TS_VAR( _thread );
129 #endif // LUNCHBOX_UPLOADER_H