| #ifndef XGLDEVICE_H |
| #define XGLDEVICE_H |
| |
| #include "xglgpu.h" |
| class XglImage; |
| |
| class XglDevice : public XglGpu |
| { |
| public: |
| XglDevice(XGL_UINT id, XGL_PHYSICAL_GPU obj); |
| |
| XGL_DEVICE device() {return this->m_xgl_device_object;} |
| void init_formats(); |
| void init_device(); |
| void destroy_device(); |
| void get_device_queue(XGL_QUEUE_TYPE queue_type, |
| XGL_UINT queue_idx); |
| void get_device_queue() {get_device_queue(XGL_QUEUE_TYPE_GRAPHICS, 0);} |
| XGL_RESULT AllocAndBindGpuMemory(XGL_OBJECT obj, const std::string &objName, XGL_GPU_MEMORY *pMem); |
| |
| void CreateImage(XGL_UINT32 w, XGL_UINT32 h, |
| XGL_FORMAT fmt, XGL_FLAGS usage, |
| XglImage **pImage); |
| private: |
| XGL_DEVICE m_xgl_device_object; |
| uint32_t m_flags; |
| }; |
| |
| #endif // XGLDEVICE_H |