Planet
navi homePPSaboutscreenshotsdownloaddevelopmentforum

source: orxonox.OLD/branches/new_class_id/src/lib/graphics/importer/resource_texture.h @ 9854

Last change on this file since 9854 was 9854, checked in by bensch, 18 years ago

more nice comments, and also updated the KeepLevel loading (if you want to load a Resource to a KeepLevel just append it at loadtime:
eg.:
Texture tex = ResourceTexture(orxonox.png, GL_TEXTURE_2D, GameEnd);
where GameEnd is the KeepLevel as defined in orxonox.cc→initResources()

File size: 1.1 KB
Line 
1/*!
2 * @file resource_texture.h
3 * @brief Contains the ResourceTexture class, that handles the Resource-specific loading part of the Texture.
4 *
5 */
6
7#ifndef _RESOURCE_TEXTURE_H
8#define _RESOURCE_TEXTURE_H
9
10#include "util/loading/resource.h"
11#include "texture.h"
12
13
14class ResourceTexture : public Texture, public Resources::Resource
15{
16public:
17  ResourceTexture(const std::string& imageName,
18                  GLenum target = GL_TEXTURE_2D,
19                  const Resources::KeepLevel& keepLevel = Resources::KeepLevel());
20  static ResourceTexture createFromString(const std::string& loadString,
21                                          const Resources::KeepLevel& keepLevel = Resources::KeepLevel());
22
23private:
24class TextureResourcePointer : public Resources::StorePointer
25  {
26  public:
27    TextureResourcePointer(const std::string& loadString, const Resources::KeepLevel& keepLevel, const TextureData::Pointer& data);
28    inline const TextureData::Pointer& ptr() const { return pointer; }
29    virtual bool last() const { return pointer.count() == 1; }
30  private:
31    TextureData::Pointer pointer;
32  };
33
34private:
35  static Resources::tType<ResourceTexture> type;
36};
37
38
39#endif /* _RESOURCE_TEXTURE_H */
Note: See TracBrowser for help on using the repository browser.