The spica renderer
bitmap.h
1 #ifdef _MSC_VER
2 #pragma once
3 #endif
4 
5 #ifndef _SPICA_BITMAP_H_
6 #define _SPICA_BITMAP_H_
7 
8 #include "core/common.h"
9 #include "core/core.hpp"
10 #include "core/texture.h"
11 
12 namespace spica {
13 
14 class SPICA_EXPORTS BitmapTexture : public Texture<Spectrum> {
15 public:
16  BitmapTexture(const Image& image,
17  const std::shared_ptr<TextureMapping2D>& texmap,
18  ImageWrap wrap);
19 
20  BitmapTexture(RenderParams &params);
21 
22  Spectrum evaluate(const SurfaceInteraction& intr) const;
23 
24 private:
25  // Private field
26  std::unique_ptr<MipMap> mipmap_;
27  std::shared_ptr<TextureMapping2D> texmap_;
28 };
29 
30 SPICA_EXPORT_PLUGIN(BitmapTexture, "Bitmap texture");
31 
32 } // namespace spica
33 
34 #endif // _SPICA_BITMAP_H_
Definition: interaction.h:68
RGB spectrum.
Definition: spectrum.h:18
Definition: renderparams.h:27
Texture interface.
Definition: render.hpp:60
Image class.
Definition: image.h:18
Definition: bitmap.h:14