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

#include <Vector2.hpp>

Collaboration diagram for Sirikata::Vector2< scalar >:

List of all members.

Public Types

typedef scalar real

Public Member Functions

 Vector2 (scalar x, scalar y)
template<class V >
 Vector2 (const V &other)
 Vector2 ()
scalar & operator[] (const unsigned int i)
template<class T >
convert () const
scalar operator[] (const unsigned int i) const
Vector2operator= (scalar other)
Vector2 operator* (scalar scale) const
Vector2 operator/ (scalar scale) const
Vector2 operator+ (const Vector2 &other) const
Vector2 componentMultiply (const Vector2 &other) const
Vector2 operator- (const Vector2 &other) const
Vector2 operator- () const
Vector2operator*= (scalar scale)
Vector2operator/= (scalar scale)
Vector2operator+= (const Vector2 &other)
Vector2operator-= (const Vector2 &other)
scalar dot (const Vector2 &other) const
Vector2 min (const Vector2 &other) const
Vector2 max (const Vector2 &other) const
scalar lengthSquared () const
scalar length () const
bool operator== (const Vector2 &other) const
bool operator!= (const Vector2 &other) const
Vector2 normal () const
scalar normalizeThis ()
std::string toString () const
Vector2 reflect (const Vector2 &normal) const

Static Public Member Functions

template<class V >
static Vector2 fromSSE (const V &other)
static Vector2 zero ()
static Vector2 unitX ()
static Vector2 unitY ()
static Vector2 unitNegX ()
static Vector2 unitNegY ()

Public Attributes

union {
   struct {
      scalar   x
      scalar   y
   } 
   scalar   v [2]
}; 

Static Public Attributes

static const unsigned char size = 2

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


Member Typedef Documentation

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

Constructor & Destructor Documentation

template<typename scalar >
Sirikata::Vector2< scalar >::Vector2 ( scalar  x,
scalar  y 
) [inline]
template<typename scalar >
template<class V >
Sirikata::Vector2< scalar >::Vector2 ( const V &  other) [inline, explicit]
template<typename scalar >
Sirikata::Vector2< scalar >::Vector2 ( ) [inline]

Member Function Documentation

template<typename scalar >
Vector2 Sirikata::Vector2< scalar >::componentMultiply ( const Vector2< scalar > &  other) const [inline]
template<typename scalar >
template<class T >
T Sirikata::Vector2< scalar >::convert ( ) const [inline]
template<typename scalar >
scalar Sirikata::Vector2< scalar >::dot ( const Vector2< scalar > &  other) const [inline]
template<typename scalar >
template<class V >
static Vector2 Sirikata::Vector2< scalar >::fromSSE ( const V &  other) [inline, static]
template<typename scalar >
scalar Sirikata::Vector2< scalar >::length ( ) const [inline]
template<typename scalar >
scalar Sirikata::Vector2< scalar >::lengthSquared ( ) const [inline]
template<typename scalar >
Vector2 Sirikata::Vector2< scalar >::max ( const Vector2< scalar > &  other) const [inline]
template<typename scalar >
Vector2 Sirikata::Vector2< scalar >::min ( const Vector2< scalar > &  other) const [inline]
template<typename scalar >
Vector2 Sirikata::Vector2< scalar >::normal ( ) const [inline]
template<typename scalar >
scalar Sirikata::Vector2< scalar >::normalizeThis ( ) [inline]
template<typename scalar >
bool Sirikata::Vector2< scalar >::operator!= ( const Vector2< scalar > &  other) const [inline]
template<typename scalar >
Vector2 Sirikata::Vector2< scalar >::operator* ( scalar  scale) const [inline]
template<typename scalar >
Vector2& Sirikata::Vector2< scalar >::operator*= ( scalar  scale) [inline]
template<typename scalar >
Vector2 Sirikata::Vector2< scalar >::operator+ ( const Vector2< scalar > &  other) const [inline]
template<typename scalar >
Vector2& Sirikata::Vector2< scalar >::operator+= ( const Vector2< scalar > &  other) [inline]
template<typename scalar >
Vector2 Sirikata::Vector2< scalar >::operator- ( ) const [inline]
template<typename scalar >
Vector2 Sirikata::Vector2< scalar >::operator- ( const Vector2< scalar > &  other) const [inline]
template<typename scalar >
Vector2& Sirikata::Vector2< scalar >::operator-= ( const Vector2< scalar > &  other) [inline]
template<typename scalar >
Vector2 Sirikata::Vector2< scalar >::operator/ ( scalar  scale) const [inline]
template<typename scalar >
Vector2& Sirikata::Vector2< scalar >::operator/= ( scalar  scale) [inline]
template<typename scalar >
Vector2& Sirikata::Vector2< scalar >::operator= ( scalar  other) [inline]
template<typename scalar >
bool Sirikata::Vector2< scalar >::operator== ( const Vector2< scalar > &  other) const [inline]
template<typename scalar >
scalar Sirikata::Vector2< scalar >::operator[] ( const unsigned int  i) const [inline]
template<typename scalar >
scalar& Sirikata::Vector2< scalar >::operator[] ( const unsigned int  i) [inline]
template<typename scalar >
Vector2 Sirikata::Vector2< scalar >::reflect ( const Vector2< scalar > &  normal) const [inline]
template<typename scalar >
std::string Sirikata::Vector2< scalar >::toString ( ) const [inline]
template<typename scalar >
static Vector2 Sirikata::Vector2< scalar >::unitNegX ( ) [inline, static]
template<typename scalar >
static Vector2 Sirikata::Vector2< scalar >::unitNegY ( ) [inline, static]
template<typename scalar >
static Vector2 Sirikata::Vector2< scalar >::unitX ( ) [inline, static]
template<typename scalar >
static Vector2 Sirikata::Vector2< scalar >::unitY ( ) [inline, static]
template<typename scalar >
static Vector2 Sirikata::Vector2< scalar >::zero ( ) [inline, static]

Member Data Documentation

union { ... }
template<typename scalar >
const unsigned char Sirikata::Vector2< scalar >::size = 2 [static]
template<typename scalar >
scalar Sirikata::Vector2< scalar >::v[2]
template<typename scalar >
scalar Sirikata::Vector2< scalar >::x
template<typename scalar >
scalar Sirikata::Vector2< scalar >::y

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