OSDN Git Service

fix cmake/Macros.cmake
[moflib/moflib.git] / moflib-1.0 / src / mof / Texture.hpp
1 #pragma once
2
3 #include "mof/PixelMap.hpp"
4 #include <memory>
5 #include <boost/noncopyable.hpp>
6 #include "mof/GraphicsDevice.hpp"
7
8 namespace mof{
9     
10         class Texture : boost::noncopyable
11         {
12             friend void GraphicsDevice::setTexture( const Texture* );
13                 struct Impl;
14                 std::unique_ptr<Impl> m_pImpl;
15                 
16         public:
17                 typedef std::shared_ptr<Texture> ptr;
18                 Texture( const tstring& filename );
19                 Texture( const std::shared_ptr<mof::PixelMap>& pPixelMap);
20                 ~Texture();
21                 
22                 std::shared_ptr<mof::PixelMap> getPixelMap();
23
24                 int getWidth();
25                 int getHeight();
26         
27         };
28 }