Irrlicht 3D Engine
 
Loading...
Searching...
No Matches
ISceneNodeFactory.h
Go to the documentation of this file.
1// Copyright (C) 2002-2012 Nikolaus Gebhardt
2// This file is part of the "Irrlicht Engine".
3// For conditions of distribution and use, see copyright notice in irrlicht.h
4
5#ifndef __I_SCENE_NODE_FACTORY_H_INCLUDED__
6#define __I_SCENE_NODE_FACTORY_H_INCLUDED__
7
8#include "IReferenceCounted.h"
9#include "ESceneNodeTypes.h"
10
11namespace irr
12{
13
14namespace scene
15{
16 class ISceneNode;
17
19
27 class ISceneNodeFactory : public virtual IReferenceCounted
28 {
29 public:
31
35 virtual ISceneNode* addSceneNode(ESCENE_NODE_TYPE type, ISceneNode* parent=0) = 0;
36
38
42 virtual ISceneNode* addSceneNode(const c8* typeName, ISceneNode* parent=0) = 0;
43
46
48
51
53
55 virtual const c8* getCreateableSceneNodeTypeName(u32 idx) const = 0;
56
58
60 virtual const c8* getCreateableSceneNodeTypeName(ESCENE_NODE_TYPE type) const = 0;
61 };
62
63
64} // end namespace scene
65} // end namespace irr
66
67#endif
68
Base class of most objects of the Irrlicht Engine.
Interface for dynamic creation of scene nodes.
virtual u32 getCreatableSceneNodeTypeCount() const =0
returns amount of scene node types this factory is able to create
virtual const c8 * getCreateableSceneNodeTypeName(u32 idx) const =0
returns type name of a createable scene node type by index
virtual ISceneNode * addSceneNode(const c8 *typeName, ISceneNode *parent=0)=0
adds a scene node to the scene graph based on its type name
virtual ESCENE_NODE_TYPE getCreateableSceneNodeType(u32 idx) const =0
returns type of a createable scene node type
virtual const c8 * getCreateableSceneNodeTypeName(ESCENE_NODE_TYPE type) const =0
returns type name of a createable scene node type
virtual ISceneNode * addSceneNode(ESCENE_NODE_TYPE type, ISceneNode *parent=0)=0
adds a scene node to the scene graph based on its type id
Scene node interface.
Definition ISceneNode.h:41
ESCENE_NODE_TYPE
An enumeration for all types of built-in scene nodes.
Everything in the Irrlicht Engine can be found in this namespace.
Definition aabbox3d.h:13
unsigned int u32
32 bit unsigned variable.
Definition irrTypes.h:58
char c8
8 bit character variable.
Definition irrTypes.h:31