Sirikata
Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes
Sirikata::Vector4< scalar > Class Template Reference

#include <Vector4.hpp>

Collaboration diagram for Sirikata::Vector4< scalar >:

List of all members.

Public Types

typedef scalar real

Public Member Functions

 Vector4 (scalar x, scalar y, scalar z, scalar w)
 Vector4 ()
 Vector4 (const Vector3< scalar > &xyz, scalar w)
template<class T >
convert (const T *ptr=NULL) const
template<class T >
Vector4< T > downCast () const
scalar & operator[] (const unsigned int i)
scalar operator[] (const unsigned int i) const
Vector4operator= (scalar other)
Vector4 operator* (scalar scale) const
Vector4 operator/ (scalar scale) const
Vector4 operator+ (const Vector4 &other) const
Vector4 operator- (const Vector4 &other) const
Vector4 operator- () const
Vector4operator*= (scalar scale)
Vector4operator/= (scalar scale)
Vector4operator+= (const Vector4 &other)
Vector4operator-= (const Vector4 &other)
Vector4 componentMultiply (const Vector4 &other) const
scalar dot (const Vector4 &other) const
Vector4 min (const Vector4 &other) const
Vector4 max (const Vector4 &other) const
scalar lengthSquared () const
scalar length () const
bool operator== (const Vector4 &other) const
bool operator!= (const Vector4 &other) const
Vector4 normal () const
scalar normalizeThis ()
std::string toString () const

Static Public Member Functions

template<class V >
static Vector4 fromArray (const V &other)
template<class V >
static Vector4 fromSSE (const V &other)
static Vector4 zero ()
static Vector4 unitX ()
static Vector4 unitY ()
static Vector4 unitZ ()
static Vector4 unitNegX ()
static Vector4 unitNegY ()
static Vector4 unitNegZ ()

Public Attributes

union {
   struct {
      scalar   x
      scalar   y
      scalar   z
      scalar   w
   } 
   scalar   v [4]
}; 

Static Public Attributes

static const unsigned char size = 4

template<typename scalar>
class Sirikata::Vector4< scalar >


Member Typedef Documentation

template<typename scalar>
typedef scalar Sirikata::Vector4< scalar >::real

Constructor & Destructor Documentation

template<typename scalar>
Sirikata::Vector4< scalar >::Vector4 ( scalar  x,
scalar  y,
scalar  z,
scalar  w 
) [inline]
template<typename scalar>
Sirikata::Vector4< scalar >::Vector4 ( ) [inline]
template<typename scalar>
Sirikata::Vector4< scalar >::Vector4 ( const Vector3< scalar > &  xyz,
scalar  w 
) [inline]

Member Function Documentation

template<typename scalar>
Vector4 Sirikata::Vector4< scalar >::componentMultiply ( const Vector4< scalar > &  other) const [inline]
template<typename scalar>
template<class T >
T Sirikata::Vector4< scalar >::convert ( const T *  ptr = NULL) const [inline]
template<typename scalar>
scalar Sirikata::Vector4< scalar >::dot ( const Vector4< scalar > &  other) const [inline]
template<typename scalar>
template<class T >
Vector4<T> Sirikata::Vector4< scalar >::downCast ( ) const [inline]
template<typename scalar>
template<class V >
static Vector4 Sirikata::Vector4< scalar >::fromArray ( const V &  other) [inline, static]
template<typename scalar>
template<class V >
static Vector4 Sirikata::Vector4< scalar >::fromSSE ( const V &  other) [inline, static]
template<typename scalar>
scalar Sirikata::Vector4< scalar >::length ( ) const [inline]
template<typename scalar>
scalar Sirikata::Vector4< scalar >::lengthSquared ( ) const [inline]
template<typename scalar>
Vector4 Sirikata::Vector4< scalar >::max ( const Vector4< scalar > &  other) const [inline]
template<typename scalar>
Vector4 Sirikata::Vector4< scalar >::min ( const Vector4< scalar > &  other) const [inline]
template<typename scalar>
Vector4 Sirikata::Vector4< scalar >::normal ( ) const [inline]

Reimplemented in Sirikata::Quaternion.

template<typename scalar>
scalar Sirikata::Vector4< scalar >::normalizeThis ( ) [inline]
template<typename scalar>
bool Sirikata::Vector4< scalar >::operator!= ( const Vector4< scalar > &  other) const [inline]
template<typename scalar>
Vector4 Sirikata::Vector4< scalar >::operator* ( scalar  scale) const [inline]

Reimplemented in Sirikata::Quaternion.

template<typename scalar>
Vector4& Sirikata::Vector4< scalar >::operator*= ( scalar  scale) [inline]
template<typename scalar>
Vector4 Sirikata::Vector4< scalar >::operator+ ( const Vector4< scalar > &  other) const [inline]
template<typename scalar>
Vector4& Sirikata::Vector4< scalar >::operator+= ( const Vector4< scalar > &  other) [inline]
template<typename scalar>
Vector4 Sirikata::Vector4< scalar >::operator- ( const Vector4< scalar > &  other) const [inline]
template<typename scalar>
Vector4 Sirikata::Vector4< scalar >::operator- ( ) const [inline]

Reimplemented in Sirikata::Quaternion.

template<typename scalar>
Vector4& Sirikata::Vector4< scalar >::operator-= ( const Vector4< scalar > &  other) [inline]
template<typename scalar>
Vector4 Sirikata::Vector4< scalar >::operator/ ( scalar  scale) const [inline]

Reimplemented in Sirikata::Quaternion.

template<typename scalar>
Vector4& Sirikata::Vector4< scalar >::operator/= ( scalar  scale) [inline]
template<typename scalar>
Vector4& Sirikata::Vector4< scalar >::operator= ( scalar  other) [inline]
template<typename scalar>
bool Sirikata::Vector4< scalar >::operator== ( const Vector4< scalar > &  other) const [inline]
template<typename scalar>
scalar& Sirikata::Vector4< scalar >::operator[] ( const unsigned int  i) [inline]
template<typename scalar>
scalar Sirikata::Vector4< scalar >::operator[] ( const unsigned int  i) const [inline]
template<typename scalar>
std::string Sirikata::Vector4< scalar >::toString ( ) const [inline]
template<typename scalar>
static Vector4 Sirikata::Vector4< scalar >::unitNegX ( ) [inline, static]
template<typename scalar>
static Vector4 Sirikata::Vector4< scalar >::unitNegY ( ) [inline, static]
template<typename scalar>
static Vector4 Sirikata::Vector4< scalar >::unitNegZ ( ) [inline, static]
template<typename scalar>
static Vector4 Sirikata::Vector4< scalar >::unitX ( ) [inline, static]
template<typename scalar>
static Vector4 Sirikata::Vector4< scalar >::unitY ( ) [inline, static]
template<typename scalar>
static Vector4 Sirikata::Vector4< scalar >::unitZ ( ) [inline, static]
template<typename scalar>
static Vector4 Sirikata::Vector4< scalar >::zero ( ) [inline, static]

Reimplemented in Sirikata::Quaternion.


Member Data Documentation

union { ... }
template<typename scalar>
const unsigned char Sirikata::Vector4< scalar >::size = 4 [static]
template<typename scalar>
scalar Sirikata::Vector4< scalar >::v[4]
template<typename scalar>
scalar Sirikata::Vector4< scalar >::w
template<typename scalar>
scalar Sirikata::Vector4< scalar >::x

Referenced by Sirikata::BulletCharacterObject::applyForcedOrientation(), Sirikata::Vector4< float32 >::componentMultiply(), Sirikata::Vector4< float32 >::convert(), Sirikata::Vector4< float32 >::dot(), Sirikata::Vector4< float32 >::downCast(), Sirikata::Quaternion::FromRotationMatrix(), Sirikata::AggregateManager::generateAggregateMeshAsync(), Sirikata::Graphics::OgreSystem::getCamera(), Sirikata::Quaternion::identity(), Sirikata::BulletCharacterObject::load(), Sirikata::Graphics::Skybox::materialLoadFinished(), Sirikata::Vector4< float32 >::max(), Sirikata::Vector4< float32 >::min(), Sirikata::Vector4< float32 >::operator!=(), Sirikata::Vector4< float32 >::operator*(), Sirikata::operator*(), Sirikata::Quaternion::operator*(), Sirikata::Matrix4x4< float32 >::operator*(), Sirikata::Vector4< float32 >::operator*=(), Sirikata::Matrix4x4< float32 >::operator*=(), Sirikata::Vector4< float32 >::operator+(), Sirikata::Vector4< float32 >::operator+=(), Sirikata::Vector4< float32 >::operator-(), Sirikata::Vector4< float32 >::operator-=(), Sirikata::Vector4< float32 >::operator/(), Sirikata::operator/(), Sirikata::Vector4< float32 >::operator/=(), Sirikata::Vector4< float32 >::operator=(), Sirikata::Vector4< float32 >::operator==(), Sirikata::BulletCharacterObject::preTick(), Sirikata::JS::QuaternionFill(), Sirikata::Graphics::toOgre(), Sirikata::Quaternion::ToRotationMatrix(), Sirikata::Vector4< float32 >::toString(), Sirikata::BulletRigidBodyObject::updateBulletFromObject(), and Sirikata::Vector4< float32 >::Vector4().

template<typename scalar>
scalar Sirikata::Vector4< scalar >::y

Referenced by Sirikata::BulletCharacterObject::applyForcedOrientation(), Sirikata::Vector4< float32 >::componentMultiply(), Sirikata::Vector4< float32 >::convert(), Sirikata::Vector4< float32 >::dot(), Sirikata::Vector4< float32 >::downCast(), Sirikata::Quaternion::FromRotationMatrix(), Sirikata::AggregateManager::generateAggregateMeshAsync(), Sirikata::Graphics::OgreSystem::getCamera(), Sirikata::Quaternion::identity(), Sirikata::BulletCharacterObject::load(), Sirikata::Graphics::Skybox::materialLoadFinished(), Sirikata::Vector4< float32 >::max(), Sirikata::Vector4< float32 >::min(), Sirikata::Vector4< float32 >::operator!=(), Sirikata::Vector4< float32 >::operator*(), Sirikata::operator*(), Sirikata::Quaternion::operator*(), Sirikata::Matrix4x4< float32 >::operator*(), Sirikata::Vector4< float32 >::operator*=(), Sirikata::Matrix4x4< float32 >::operator*=(), Sirikata::Vector4< float32 >::operator+(), Sirikata::Vector4< float32 >::operator+=(), Sirikata::Vector4< float32 >::operator-(), Sirikata::Vector4< float32 >::operator-=(), Sirikata::Vector4< float32 >::operator/(), Sirikata::operator/(), Sirikata::Vector4< float32 >::operator/=(), Sirikata::Vector4< float32 >::operator=(), Sirikata::Vector4< float32 >::operator==(), Sirikata::BulletCharacterObject::preTick(), Sirikata::JS::QuaternionFill(), Sirikata::Graphics::toOgre(), Sirikata::Quaternion::ToRotationMatrix(), Sirikata::Vector4< float32 >::toString(), Sirikata::BulletRigidBodyObject::updateBulletFromObject(), and Sirikata::Vector4< float32 >::Vector4().

template<typename scalar>
scalar Sirikata::Vector4< scalar >::z

Referenced by Sirikata::BulletCharacterObject::applyForcedOrientation(), Sirikata::Vector4< float32 >::componentMultiply(), Sirikata::Vector4< float32 >::convert(), Sirikata::Vector4< float32 >::dot(), Sirikata::Vector4< float32 >::downCast(), Sirikata::Quaternion::FromRotationMatrix(), Sirikata::AggregateManager::generateAggregateMeshAsync(), Sirikata::Graphics::OgreSystem::getCamera(), Sirikata::Quaternion::identity(), Sirikata::BulletCharacterObject::load(), Sirikata::Graphics::Skybox::materialLoadFinished(), Sirikata::Vector4< float32 >::max(), Sirikata::Vector4< float32 >::min(), Sirikata::Vector4< float32 >::operator!=(), Sirikata::Vector4< float32 >::operator*(), Sirikata::operator*(), Sirikata::Quaternion::operator*(), Sirikata::Matrix4x4< float32 >::operator*(), Sirikata::Vector4< float32 >::operator*=(), Sirikata::Matrix4x4< float32 >::operator*=(), Sirikata::Vector4< float32 >::operator+(), Sirikata::Vector4< float32 >::operator+=(), Sirikata::Vector4< float32 >::operator-(), Sirikata::Vector4< float32 >::operator-=(), Sirikata::Vector4< float32 >::operator/(), Sirikata::operator/(), Sirikata::Vector4< float32 >::operator/=(), Sirikata::Vector4< float32 >::operator=(), Sirikata::Vector4< float32 >::operator==(), Sirikata::BulletCharacterObject::preTick(), Sirikata::JS::QuaternionFill(), Sirikata::Graphics::toOgre(), Sirikata::Quaternion::ToRotationMatrix(), Sirikata::Vector4< float32 >::toString(), Sirikata::BulletRigidBodyObject::updateBulletFromObject(), and Sirikata::Vector4< float32 >::Vector4().


The documentation for this class was generated from the following file: