Main Page | Namespace List | Class Hierarchy | Alphabetical List | Compound List | File List | Namespace Members | Compound Members | File Members

Lamp::Texture Class Reference

テクスチャ More...

#include <Texture.h>

Inheritance diagram for Lamp::Texture:

Lamp::SceneObject Lamp::SurfaceTexture List of all members.

Public Types

enum  AddressMode { addressModeWrap = 0, addressModeClamp, addressModeMirror, addressModeMax }
 アドレスモード


Public Member Functions

virtual int getReferenceCount () const
 リファレンスカウントの取得

virtual Texturecopy (u_int copyMask=0) const=0
 コピー

virtual void stateChanged ()
 ステート変更フラグを立てる

virtual int getParentCount () const
 親のサイズ取得

virtual MaterialgetParent (int index) const
 親の取得

virtual void addPicture (Picture *picture)=0
 ピクチャの追加

virtual void removePicture (Picture *picture)=0
 ピクチャの削除

virtual int getPictureCount () const=0
 ピクチャ数の取得

virtual PicturegetPicture (int index) const=0
 ピクチャの取得

virtual bool isTexture () const
 テクスチャかどうか

virtual bool isSurfaceTexture () const
 サーフェーステクスチャかどうか

virtual SurfaceTexturecastSurfaceTexture () const
 サーフェーステクスチャへのキャスト


Static Public Member Functions

int recursiveDestroy (Texture *texture)
 再帰的破棄

const StringaddressModeToString (AddressMode addressMode)
 アドレスモードから文字列への変換

AddressMode addressModeFromString (const String &addressModeString)
 文字列からアドレスモードへの変換


Protected Member Functions

 Texture (const String &name, Scene *scene)
 コンストラクタ

virtual ~Texture ()
 デストラクタ

virtual void copyTextureValue (Texture *destination, u_int copyMask) const
 テクスチャの値コピー

virtual int addReference (Material *parent)
 参照の追加

virtual int removeReference (Material *parent)
 参照の削除

virtual void addPictureReference (Picture *picture)
 ピクチャリファレンスの追加

virtual void removePictureReference (Picture *picture)
 ピクチャリファレンスの削除

virtual Direct3DTexturegetD3DTexture ()=0
 D3Dテクスチャの取得.


Friends

class SceneObjectManagerTemplate< Texture >
class TextureManager
class Material
class RenderingDevice

Detailed Description

テクスチャ

Definition at line 40 of file Texture.h.


Constructor & Destructor Documentation

Lamp::Texture::Texture const String name,
Scene scene
[protected]
 

コンストラクタ

Parameters:
name 名前
scene シーン

Definition at line 42 of file Texture.cpp.


Member Function Documentation

virtual void Lamp::Texture::addPicture Picture picture  )  [pure virtual]
 

ピクチャの追加

Parameters:
picture 追加するピクチャ

Implemented in Lamp::SurfaceTexture.

Referenced by copyTextureValue(), Lamp::TextSceneLoader::readTextureLink(), and Lamp::BinarySceneLoader::readTextureLink().

void Lamp::Texture::addPictureReference Picture picture  )  [protected, virtual]
 

ピクチャリファレンスの追加

Parameters:
picture リファレンスを追加するピクチャ

Definition at line 109 of file Texture.cpp.

References Lamp::Picture::addReference().

Referenced by Lamp::SurfaceTexture::addPicture().

virtual int Lamp::Texture::addReference Material parent  )  [inline, protected, virtual]
 

参照の追加

Parameters:
parent 
Returns:
参照カウント

Definition at line 195 of file Texture.h.

References Lamp::ArrayList< Material * >::add(), and getParentCount().

Referenced by Lamp::Material::setTextureReferense().

Texture::AddressMode Lamp::Texture::addressModeFromString const String addressModeString  )  [static]
 

文字列からアドレスモードへの変換

Parameters:
addressModeString アドレスモード文字列
Returns:
アドレスモード

Definition at line 97 of file Texture.cpp.

References AddressMode, Lamp::String::equals(), and ErrorOut.

const String & Lamp::Texture::addressModeToString AddressMode  addressMode  )  [static]
 

アドレスモードから文字列への変換

Parameters:
addressMode アドレスモード
Returns:
アドレスモード文字列

Definition at line 90 of file Texture.cpp.

References Assert.

virtual SurfaceTexture* Lamp::Texture::castSurfaceTexture  )  const [inline, virtual]
 

サーフェーステクスチャへのキャスト

Returns:
サーフェーステクスチャ。型が違えばNULLを返す。

Definition at line 164 of file Texture.h.

References isSurfaceTexture(), and NULL.

Referenced by Lamp::FixedShader::setFixedTexture(), Lamp::TextSceneSaver::writeTextureList(), and Lamp::BinarySceneSaver::writeTextureList().

virtual Texture* Lamp::Texture::copy u_int  copyMask = 0  )  const [pure virtual]
 

コピー

Parameters:
copyMask コピーマスク
Returns:
コピーされたテクスチャ

Implemented in Lamp::SurfaceTexture.

Referenced by Lamp::BasicMaterial::copyBasicMaterial(), and copyTextureValue().

void Lamp::Texture::copyTextureValue Texture destination,
u_int  copyMask
const [protected, virtual]
 

テクスチャの値コピー

Parameters:
destination コピー先テクスチャ
copyMask コピーマスク

Definition at line 51 of file Texture.cpp.

References addPicture(), copy(), Lamp::SceneObject::copyPicture, getPicture(), and getPictureCount().

Referenced by Lamp::SurfaceTexture::copySurfaceTexture().

virtual Direct3DTexture* Lamp::Texture::getD3DTexture  )  [protected, pure virtual]
 

D3Dテクスチャの取得.

Returns:
D3Dテクスチャの取得

Implemented in Lamp::SurfaceTexture.

Referenced by Lamp::RenderingDevice::setTexture().

virtual Material* Lamp::Texture::getParent int  index  )  const [inline, virtual]
 

親の取得

Parameters:
index 親のインデックス
Returns:

Definition at line 85 of file Texture.h.

References Assert, Lamp::ArrayList< Material * >::get(), and getParentCount().

Referenced by stateChanged().

virtual int Lamp::Texture::getParentCount  )  const [inline, virtual]
 

親のサイズ取得

Returns:
親のサイズ

Definition at line 78 of file Texture.h.

References Lamp::ArrayList< Material * >::getCount().

Referenced by addReference(), getParent(), removeReference(), and stateChanged().

virtual Picture* Lamp::Texture::getPicture int  index  )  const [pure virtual]
 

ピクチャの取得

Parameters:
index インデックス
Returns:
ピクチャ

Implemented in Lamp::SurfaceTexture.

Referenced by copyTextureValue(), recursiveDestroy(), Lamp::TextSceneSaver::writeTextureLink(), and Lamp::BinarySceneSaver::writeTextureLink().

virtual int Lamp::Texture::getPictureCount  )  const [pure virtual]
 

ピクチャ数の取得

Returns:
ピクチャ数

Implemented in Lamp::SurfaceTexture.

Referenced by copyTextureValue(), Lamp::SceneLogicCheckFilter::filterTexture(), recursiveDestroy(), Lamp::TextSceneSaver::writeTextureLink(), and Lamp::BinarySceneSaver::writeTextureLink().

virtual int Lamp::Texture::getReferenceCount  )  const [inline, virtual]
 

リファレンスカウントの取得

Returns:
リファレンスカウント

Implements Lamp::SceneObject.

Definition at line 50 of file Texture.h.

References Lamp::ArrayList< Material * >::getCount().

Referenced by Lamp::SceneLogicCheckFilter::filterTexture().

virtual bool Lamp::Texture::isSurfaceTexture  )  const [inline, virtual]
 

サーフェーステクスチャかどうか

Returns:
サーフェーステクスチャならtrue

Reimplemented in Lamp::SurfaceTexture.

Definition at line 158 of file Texture.h.

Referenced by castSurfaceTexture(), Lamp::TextSceneSaver::writeTextureList(), and Lamp::BinarySceneSaver::writeTextureList().

virtual bool Lamp::Texture::isTexture  )  const [inline, virtual]
 

テクスチャかどうか

Returns:
テクスチャならtrue

Reimplemented from Lamp::SceneObject.

Definition at line 151 of file Texture.h.

int Lamp::Texture::recursiveDestroy Texture texture  )  [static]
 

再帰的破棄

Parameters:
texture 破棄するテクスチャ
Returns:
破棄したオブジェクト数

Definition at line 65 of file Texture.cpp.

References Assert, Lamp::SceneObjectManagerTemplate< Texture >::destroy(), getPicture(), getPictureCount(), Lamp::SceneObject::getScene(), Lamp::Scene::getTextureManager(), NULL, and removePicture().

virtual void Lamp::Texture::removePicture Picture picture  )  [pure virtual]
 

ピクチャの削除

Parameters:
picture 削除するピクチャ

Implemented in Lamp::SurfaceTexture.

Referenced by recursiveDestroy().

void Lamp::Texture::removePictureReference Picture picture  )  [protected, virtual]
 

ピクチャリファレンスの削除

Parameters:
picture リファレンスを削除するピクチャ

Definition at line 114 of file Texture.cpp.

References Lamp::Picture::removeReference().

Referenced by Lamp::SurfaceTexture::removePicture().

virtual int Lamp::Texture::removeReference Material parent  )  [inline, protected, virtual]
 

参照の削除

Parameters:
parent 
Returns:
参照カウント

Definition at line 205 of file Texture.h.

References getParentCount(), and Lamp::ArrayList< Material * >::removeByValue().

Referenced by Lamp::Material::setTextureReferense().


The documentation for this class was generated from the following files:
Generated on Wed Mar 16 10:29:53 2005 for Lamp by doxygen 1.3.2