#include "generic/callback.h"
#include "stringio.h"
-const Vector3 ORIGINKEY_IDENTITY = Vector3(0, 0, 0);
+const Vector3 ORIGINKEY_IDENTITY = Vector3( 0, 0, 0 );
-inline void default_origin(Vector3 &origin)
-{
- origin = ORIGINKEY_IDENTITY;
+inline void default_origin( Vector3& origin ){
+ origin = ORIGINKEY_IDENTITY;
}
-
-inline void read_origin(Vector3 &origin, const char *value)
-{
- if (!string_parse_vector3(value, origin)) {
- default_origin(origin);
- }
+inline void read_origin( Vector3& origin, const char* value ){
+ if ( !string_parse_vector3( value, origin ) ) {
+ default_origin( origin );
+ }
}
-
-inline void write_origin(const Vector3 &origin, Entity *entity, const char *key)
-{
- char value[64];
- sprintf(value, "%f %f %f", origin[0], origin[1], origin[2]);
- entity->setKeyValue(key, value);
+inline void write_origin( const Vector3& origin, Entity* entity, const char* key ){
+ char value[64];
+ sprintf( value, "%f %f %f", origin[0], origin[1], origin[2] );
+ entity->setKeyValue( key, value );
}
-inline Vector3 origin_translated(const Vector3 &origin, const Vector3 &translation)
-{
- return matrix4_get_translation_vec3(
- matrix4_multiplied_by_matrix4(
- matrix4_translation_for_vec3(origin),
- matrix4_translation_for_vec3(translation)
- )
- );
+inline Vector3 origin_translated( const Vector3& origin, const Vector3& translation ){
+ return matrix4_get_translation_vec3(
+ matrix4_multiplied_by_matrix4(
+ matrix4_translation_for_vec3( origin ),
+ matrix4_translation_for_vec3( translation )
+ )
+ );
}
-inline Vector3 origin_snapped(const Vector3 &origin, float snap)
-{
- return vector3_snapped(origin, snap);
+inline Vector3 origin_snapped( const Vector3& origin, float snap ){
+ return vector3_snapped( origin, snap );
}
-class OriginKey {
- Callback<void()> m_originChanged;
+class OriginKey
+{
+Callback<void()> m_originChanged;
public:
- Vector3 m_origin;
-
+Vector3 m_origin;
- OriginKey(const Callback<void()> &originChanged)
- : m_originChanged(originChanged), m_origin(ORIGINKEY_IDENTITY)
- {
- }
- void originChanged(const char *value)
- {
- read_origin(m_origin, value);
- m_originChanged();
- }
+OriginKey( const Callback<void()>& originChanged )
+ : m_originChanged( originChanged ), m_origin( ORIGINKEY_IDENTITY ){
+}
- typedef MemberCaller<OriginKey, void(const char *), &OriginKey::originChanged> OriginChangedCaller;
+void originChanged( const char* value ){
+ read_origin( m_origin, value );
+ m_originChanged();
+}
+typedef MemberCaller<OriginKey, void(const char*), &OriginKey::originChanged> OriginChangedCaller;
- void write(Entity *entity) const
- {
- write_origin(m_origin, entity, "origin");
- }
+void write( Entity* entity ) const {
+ write_origin( m_origin, entity, "origin" );
+}
};
#include "scenelib.h"
-inline BrushDoom3 *Node_getBrushDoom3(scene::Node &node)
-{
- return NodeTypeCast<BrushDoom3>::cast(node);
+inline BrushDoom3* Node_getBrushDoom3( scene::Node& node ){
+ return NodeTypeCast<BrushDoom3>::cast( node );
}
-inline void BrushDoom3_setDoom3GroupOrigin(scene::Node &node, const Vector3 &origin)
-{
- BrushDoom3 *brush = Node_getBrushDoom3(node);
- if (brush != 0) {
- brush->setDoom3GroupOrigin(origin);
- }
+inline void BrushDoom3_setDoom3GroupOrigin( scene::Node& node, const Vector3& origin ){
+ BrushDoom3* brush = Node_getBrushDoom3( node );
+ if ( brush != 0 ) {
+ brush->setDoom3GroupOrigin( origin );
+ }
}
-class SetDoom3GroupOriginWalker : public scene::Traversable::Walker {
- const Vector3 &m_origin;
+class SetDoom3GroupOriginWalker : public scene::Traversable::Walker
+{
+const Vector3& m_origin;
public:
- SetDoom3GroupOriginWalker(const Vector3 &origin) : m_origin(origin)
- {
- }
-
- bool pre(scene::Node &node) const
- {
- BrushDoom3_setDoom3GroupOrigin(node, m_origin);
- return true;
- }
+SetDoom3GroupOriginWalker( const Vector3& origin ) : m_origin( origin ){
+}
+bool pre( scene::Node& node ) const {
+ BrushDoom3_setDoom3GroupOrigin( node, m_origin );
+ return true;
+}
};
-class Doom3GroupOrigin : public scene::Traversable::Observer {
- scene::Traversable &m_set;
- const Vector3 &m_origin;
- bool m_enabled;
+class Doom3GroupOrigin : public scene::Traversable::Observer
+{
+scene::Traversable& m_set;
+const Vector3& m_origin;
+bool m_enabled;
public:
- Doom3GroupOrigin(scene::Traversable &set, const Vector3 &origin) : m_set(set), m_origin(origin), m_enabled(false)
- {
- }
-
- void enable()
- {
- m_enabled = true;
- originChanged();
- }
-
- void disable()
- {
- m_enabled = false;
- }
-
- void originChanged()
- {
- if (m_enabled) {
- m_set.traverse(SetDoom3GroupOriginWalker(m_origin));
- }
- }
-
- void insert(scene::Node &node)
- {
- if (m_enabled) {
- BrushDoom3_setDoom3GroupOrigin(node, m_origin);
- }
- }
-
- void erase(scene::Node &node)
- {
- if (m_enabled) {
- BrushDoom3_setDoom3GroupOrigin(node, Vector3(0, 0, 0));
- }
- }
+Doom3GroupOrigin( scene::Traversable& set, const Vector3& origin ) : m_set( set ), m_origin( origin ), m_enabled( false ){
+}
+
+void enable(){
+ m_enabled = true;
+ originChanged();
+}
+void disable(){
+ m_enabled = false;
+}
+
+void originChanged(){
+ if ( m_enabled ) {
+ m_set.traverse( SetDoom3GroupOriginWalker( m_origin ) );
+ }
+}
+
+void insert( scene::Node& node ){
+ if ( m_enabled ) {
+ BrushDoom3_setDoom3GroupOrigin( node, m_origin );
+ }
+}
+void erase( scene::Node& node ){
+ if ( m_enabled ) {
+ BrushDoom3_setDoom3GroupOrigin( node, Vector3( 0, 0, 0 ) );
+ }
+}
};