41 void SetName(
const std::string &name);
42 const std::string& GetName();
43 std::string GetNameBase();
44 virtual void Report(
const std::string &message);
45 virtual bool ReportError(
const std::string &message);
69 void SetValues(
const std::string &type,
const std::string &name,
bool is_permanent,
bool is_movable =
true);
72 const std::string& GetType();
74 void AddChild(
Object *
object);
75 Object* GetChild(
int index);
76 int GetChildrenCount();
77 void RemoveChild(
Object *
object);
79 void ShowBoundingBox(
bool value);
80 virtual void Move(
const Vector3 &vector,
Real speed = 1.0);
82 virtual void SetPosition(
const Vector3 &position);
83 void SetPositionRelative(
const Vector3 &position);
86 virtual void SetPositionY(
Real value);
87 virtual Vector3 GetPosition(
bool relative =
false);
88 virtual void Rotate(
const Vector3 &vector,
Real speed = 1.0);
90 virtual void SetRotation(
const Vector3 &rotation);
93 Quaternion GetOrientation(
bool relative =
false);
94 void SetOrientation(
const Quaternion &q,
bool relative =
false);
97 virtual void OnClick(
Vector3 &position,
bool shift,
bool ctrl,
bool alt,
bool right) {}
100 void NotifyMove(
bool parent =
false);
101 void NotifyRotate(
bool parent =
false);
103 void ChangeParent(
Object *new_parent);
105 void Init(
bool children =
true);
108 void RegisterLoop(
Object *
object);
109 void UnregisterLoop(
Object *
object);
111 std::string GetNameBase();
116 return (
dynamic_cast<T*
>(
this) > 0);
122 return dynamic_cast<T*
>(
this);
126 void EnableLoop(
bool value);
131 void NotifyChildren(
bool move,
bool rotate);
virtual void OnRotate(bool parent)
std::vector< Object * > runloops
virtual void OnMove(bool parent)
virtual void ResetState()
virtual void Enabled(bool value)
std::string command_processed
std::vector< Object * > children
virtual void OnClick(Vector3 &position, bool shift, bool ctrl, bool alt, bool right)
virtual void OnUnclick(bool right)
Ogre::Quaternion Quaternion