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

Lamp::SceneObject Class Reference

シーンオブジェクト More...

#include <SceneObject.h>

Inheritance diagram for Lamp::SceneObject:

Lamp::Camera Lamp::Material Lamp::Mesh Lamp::MeshData Lamp::Picture Lamp::SceneLeaf Lamp::SceneNode Lamp::Texture List of all members.

Public Types

enum  CopyMask { copyMeshData = 0x1 << 0, copyMaterial = 0x1 << 1, copyTexture = 0x1 << 2, copyPicture = 0x1 << 3 }
 コピーマスク More...


Public Member Functions

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

virtual const String & getName () const
 名前の取得

virtual Scene * getScene () const
 シーンの取得

virtual bool isCamera () const
 カメラかどうか

virtual Camera * castCamera () const
 カメラへのキャスト

virtual bool isSceneNode () const
 シーンノードかどうか

virtual SceneNode * castSceneNode () const
 シーンノードへのキャスト

virtual bool isSceneLeaf () const
 シーンリーフかどうか

virtual SceneLeaf * castSceneLeaf () const
 シーンリーフへのキャスト

virtual bool isLight () const
 ライトかどうか

virtual Light * castLight () const
 ライトへのキャスト

virtual bool isModel () const
 モデルかどうか

virtual Model * castModel () const
 モデルへのキャスト

virtual bool isMesh () const
 メッシュかどうか

virtual Mesh * castMesh () const
 メッシュへのキャスト

virtual bool isMeshData () const
 メッシュデータかどうか

virtual MeshData * castMeshData () const
 メッシュデータへのキャスト

virtual bool isMaterial () const
 マテリアルかどうか

virtual Material * castMaterial () const
 シェーダへのキャスト

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

virtual Texture * castTexture () const
 テクスチャへのキャスト

virtual bool isPicture () const
 ピクチャかどうか

virtual Picture * castPicture () const
 ピクチャへのキャスト


Protected Member Functions

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

virtual ~SceneObject ()
 デストラクタ


Protected Attributes

String name_
 名前

Scene * scene_
 シーン


Detailed Description

シーンオブジェクト

Definition at line 48 of file SceneObject.h.


Member Enumeration Documentation

enum Lamp::SceneObject::CopyMask
 

コピーマスク

Enumeration values:
copyMeshData  メッシュデータをコピーする
copyMaterial  マテリアルをコピーする
copyTexture  テクスチャをコピーする
copyPicture  ピクチャをコピーする

Definition at line 73 of file SceneObject.h.


Constructor & Destructor Documentation

Lamp::SceneObject::SceneObject (  const String &  name,
Scene *  scene
)  [inline, protected]
 

コンストラクタ

Parameters:
name 名前
scene シーン

Definition at line 253 of file SceneObject.h.

References name_, and scene_.


Member Function Documentation

virtual Camera* Lamp::SceneObject::castCamera (   )  const [inline, virtual]
 

カメラへのキャスト

Returns:
カメラ。型が違えばNULLを返す。

Definition at line 97 of file SceneObject.h.

References isCamera(), and NULL.

virtual Light* Lamp::SceneObject::castLight (   )  const [inline, virtual]
 

ライトへのキャスト

Returns:
ライト。型が違えばNULLを返す。

Definition at line 145 of file SceneObject.h.

References isLight(), and NULL.

Referenced by Lamp::SceneLeaf::recursiveDestroy().

virtual Material* Lamp::SceneObject::castMaterial (   )  const [inline, virtual]
 

シェーダへのキャスト

Returns:
シェーダ。型が違えばNULLを返す。

Definition at line 209 of file SceneObject.h.

References isMaterial(), and NULL.

virtual Mesh* Lamp::SceneObject::castMesh (   )  const [inline, virtual]
 

メッシュへのキャスト

Returns:
メッシュ。型が違えばNULLを返す。

Definition at line 177 of file SceneObject.h.

References isMesh(), and NULL.

virtual MeshData* Lamp::SceneObject::castMeshData (   )  const [inline, virtual]
 

メッシュデータへのキャスト

Returns:
メッシュデータ。型が違えばNULLを返す。

Definition at line 193 of file SceneObject.h.

References isMeshData(), and NULL.

virtual Model* Lamp::SceneObject::castModel (   )  const [inline, virtual]
 

モデルへのキャスト

Returns:
モデル。型が違えばNULLを返す。

Definition at line 161 of file SceneObject.h.

References isModel(), and NULL.

Referenced by Lamp::CollisionConverter::convertLeaf(), and Lamp::SceneLeaf::recursiveDestroy().

virtual Picture* Lamp::SceneObject::castPicture (   )  const [inline, virtual]
 

ピクチャへのキャスト

Returns:
ピクチャ。型が違えばNULLを返す。

Definition at line 241 of file SceneObject.h.

References isPicture(), and NULL.

virtual SceneLeaf* Lamp::SceneObject::castSceneLeaf (   )  const [inline, virtual]
 

シーンリーフへのキャスト

Returns:
シーンリーフ。型が違えばNULLを返す。

Definition at line 129 of file SceneObject.h.

References isSceneLeaf(), and NULL.

virtual SceneNode* Lamp::SceneObject::castSceneNode (   )  const [inline, virtual]
 

シーンノードへのキャスト

Returns:
シーンノード。型が違えばNULLを返す。

Definition at line 113 of file SceneObject.h.

References isSceneNode(), and NULL.

virtual Texture* Lamp::SceneObject::castTexture (   )  const [inline, virtual]
 

テクスチャへのキャスト

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

Definition at line 225 of file SceneObject.h.

References isTexture(), and NULL.

virtual const String& Lamp::SceneObject::getName (   )  const [inline, virtual]
 

名前の取得

Returns:
名前

Definition at line 62 of file SceneObject.h.

References name_.

Referenced by Lamp::SceneNodeAnimation::bind(), Lamp::CharacterModelAnimation::bind(), Lamp::CameraAnimation::bind(), Lamp::SceneNodeManager::clear(), Lamp::CollisionConverter::convertNode(), Lamp::CollisionConverter::convertStaticDeformedMesh(), Lamp::SceneLogicCheckFilter::filterMaterial(), Lamp::SceneLogicCheckFilter::filterMesh(), Lamp::CalculateBoundingBoxFilter::filterMesh(), Lamp::SceneLogicCheckFilter::filterMeshData(), Lamp::SceneLogicCheckFilter::filterModel(), Lamp::SceneLogicCheckFilter::filterPicture(), Lamp::SceneLogicCheckFilter::filterSceneNode(), Lamp::SceneLogicCheckFilter::filterTexture(), Lamp::CollisionConverter::setCollisionLeafData(), Lamp::TextSceneSaver::writeAmbientLight(), Lamp::BinarySceneSaver::writeAmbientLight(), Lamp::TextSceneSaver::writeBasicMaterial(), Lamp::TextSceneSaver::writeBasicMaterialLink(), Lamp::BinarySceneSaver::writeBasicMaterialLink(), Lamp::TextSceneSaver::writeCharacterMesh(), Lamp::BinarySceneSaver::writeCharacterMesh(), Lamp::TextSceneSaver::writeCharacterModel(), Lamp::BinarySceneSaver::writeCharacterModel(), Lamp::TextSceneSaver::writeDirectionalLight(), Lamp::BinarySceneSaver::writeDirectionalLight(), Lamp::TextSceneSaver::writeLightList(), Lamp::BinarySceneSaver::writeLightList(), Lamp::TextSceneSaver::writeLODSceneNode(), Lamp::BinarySceneSaver::writeLODSceneNode(), Lamp::BinarySceneSaver::writeMaterial(), Lamp::TextSceneSaver::writeMaterialLinkList(), Lamp::BinarySceneSaver::writeMaterialLinkList(), Lamp::TextSceneSaver::writeMaterialList(), Lamp::BinarySceneSaver::writeMaterialList(), Lamp::TextSceneSaver::writeMeshData(), Lamp::BinarySceneSaver::writeMeshData(), Lamp::TextSceneSaver::writeMeshLink(), Lamp::BinarySceneSaver::writeMeshLink(), Lamp::TextSceneSaver::writeMeshList(), Lamp::BinarySceneSaver::writeMeshList(), Lamp::TextSceneSaver::writeModelLink(), Lamp::BinarySceneSaver::writeModelLink(), Lamp::TextSceneSaver::writeModelList(), Lamp::BinarySceneSaver::writeModelList(), Lamp::TextSceneSaver::writePicture(), Lamp::BinarySceneSaver::writePicture(), Lamp::TextSceneSaver::writePointLight(), Lamp::BinarySceneSaver::writePointLight(), Lamp::TextSceneSaver::writeRigidMesh(), Lamp::BinarySceneSaver::writeRigidMesh(), Lamp::TextSceneSaver::writeSceneNode(), Lamp::BinarySceneSaver::writeSceneNode(), Lamp::TextSceneSaver::writeSceneNodeLink(), Lamp::BinarySceneSaver::writeSceneNodeLink(), Lamp::TextSceneSaver::writeStandardModel(), Lamp::BinarySceneSaver::writeStandardModel(), Lamp::TextSceneSaver::writeSurfaceTexture(), Lamp::BinarySceneSaver::writeSurfaceTexture(), Lamp::TextSceneSaver::writeTextureLink(), Lamp::BinarySceneSaver::writeTextureLink(), Lamp::TextSceneSaver::writeTextureList(), and Lamp::BinarySceneSaver::writeTextureList().

virtual int Lamp::SceneObject::getReferenceCount (   )  const [pure virtual]
 

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

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

Implemented in Lamp::Camera, Lamp::Material, Lamp::Mesh, Lamp::MeshData, Lamp::Picture, Lamp::SceneLeaf, Lamp::SceneNode, and Lamp::Texture.

virtual Scene* Lamp::SceneObject::getScene (   )  const [inline, virtual]
 

シーンの取得

Returns:
シーン

Definition at line 69 of file SceneObject.h.

References scene_.

Referenced by Lamp::Picture::destroy(), Lamp::MeshData::destroy(), Lamp::Light::destroy(), Lamp::Texture::recursiveDestroy(), Lamp::SceneNode::recursiveDestroy(), Lamp::Model::recursiveDestroy(), Lamp::Mesh::recursiveDestroy(), and Lamp::Material::recursiveDestroy().

virtual bool Lamp::SceneObject::isCamera (   )  const [inline, virtual]
 

カメラかどうか

Returns:
カメラならtrue

Reimplemented in Lamp::Camera.

Definition at line 91 of file SceneObject.h.

Referenced by castCamera().

virtual bool Lamp::SceneObject::isLight (   )  const [inline, virtual]
 

ライトかどうか

Returns:
ライトならtrue

Reimplemented in Lamp::Light.

Definition at line 139 of file SceneObject.h.

Referenced by castLight(), Lamp::SceneLeaf::recursiveDestroy(), Lamp::TextSceneSaver::writeSceneNodeLink(), and Lamp::BinarySceneSaver::writeSceneNodeLink().

virtual bool Lamp::SceneObject::isMaterial (   )  const [inline, virtual]
 

マテリアルかどうか

Returns:
マテリアルならtrue

Reimplemented in Lamp::Material.

Definition at line 203 of file SceneObject.h.

Referenced by castMaterial().

virtual bool Lamp::SceneObject::isMesh (   )  const [inline, virtual]
 

メッシュかどうか

Returns:
メッシュならtrue

Reimplemented in Lamp::Mesh.

Definition at line 171 of file SceneObject.h.

Referenced by castMesh().

virtual bool Lamp::SceneObject::isMeshData (   )  const [inline, virtual]
 

メッシュデータかどうか

Returns:
メッシュデータならtrue

Reimplemented in Lamp::MeshData.

Definition at line 187 of file SceneObject.h.

Referenced by castMeshData().

virtual bool Lamp::SceneObject::isModel (   )  const [inline, virtual]
 

モデルかどうか

Returns:
モデルならtrue

Reimplemented in Lamp::Model.

Definition at line 155 of file SceneObject.h.

Referenced by castModel(), Lamp::CollisionConverter::convertLeaf(), Lamp::SceneLeaf::recursiveDestroy(), Lamp::TextSceneSaver::writeSceneNodeLink(), and Lamp::BinarySceneSaver::writeSceneNodeLink().

virtual bool Lamp::SceneObject::isPicture (   )  const [inline, virtual]
 

ピクチャかどうか

Returns:
ピクチャならtrue

Reimplemented in Lamp::Picture.

Definition at line 235 of file SceneObject.h.

Referenced by castPicture().

virtual bool Lamp::SceneObject::isSceneLeaf (   )  const [inline, virtual]
 

シーンリーフかどうか

Returns:
シーンリーフならtrue

Reimplemented in Lamp::SceneLeaf.

Definition at line 123 of file SceneObject.h.

Referenced by castSceneLeaf().

virtual bool Lamp::SceneObject::isSceneNode (   )  const [inline, virtual]
 

シーンノードかどうか

Returns:
シーンノードならtrue

Reimplemented in Lamp::SceneNode.

Definition at line 107 of file SceneObject.h.

Referenced by castSceneNode().

virtual bool Lamp::SceneObject::isTexture (   )  const [inline, virtual]
 

テクスチャかどうか

Returns:
テクスチャならtrue

Reimplemented in Lamp::Texture.

Definition at line 219 of file SceneObject.h.

Referenced by castTexture().


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