Supplies the following operator overloads and type casts for D3DXVECTOR4 structures. The D3DXVECTOR4_16F structure provides 16-bit versions of overloads and type casts.
typedef struct D3DXVECTOR4 { #ifdef __cplusplus public: D3DXVECTOR4() {}; D3DXVECTOR4( CONST FLOAT* ); D3DXVECTOR4( CONST D3DXFLOAT16 * ); D3DXVECTOR4( CONST D3DVECTOR& xyz, FLOAT w ); D3DXVECTOR4( FLOAT x, FLOAT y, FLOAT z, FLOAT w ); // casting operator FLOAT* (); operator CONST FLOAT* () const; // assignment operators D3DXVECTOR4& operator += ( CONST D3DXVECTOR4& ); D3DXVECTOR4& operator -= ( CONST D3DXVECTOR4& ); D3DXVECTOR4& operator *= ( FLOAT ); D3DXVECTOR4& operator /= ( FLOAT ); // unary operators D3DXVECTOR4 operator + () const; D3DXVECTOR4 operator - () const; // binary operators D3DXVECTOR4 operator + ( CONST D3DXVECTOR4& ) const; D3DXVECTOR4 operator - ( CONST D3DXVECTOR4& ) const; D3DXVECTOR4 operator * ( FLOAT ) const; D3DXVECTOR4 operator / ( FLOAT ) const; friend D3DXVECTOR4 operator * ( FLOAT, CONST D3DXVECTOR4& ); BOOL operator == ( CONST D3DXVECTOR4& ) const; BOOL operator != ( CONST D3DXVECTOR4& ) const; public: #endif //__cplusplus FLOAT x, y, z, w; } D3DXVECTOR4, *LPD3DXVECTOR4; typedef struct D3DXVECTOR4_16F { #ifdef __cplusplus public: D3DXVECTOR4_16F() {}; D3DXVECTOR4_16F( CONST FLOAT * ); D3DXVECTOR4_16F( CONST D3DXFLOAT16 * ); D3DXVECTOR4_16F( CONST D3DXVECTOR3_16F& xyz, CONST D3DXFLOAT16& w ); D3DXVECTOR4_16F( CONST D3DXFLOAT16& x, CONST D3DXFLOAT16& y, CONST D3DXFLOAT16& z, CONST D3DXFLOAT16& w ); // casting operator D3DXFLOAT16* (); operator CONST D3DXFLOAT16* () const; // binary operators BOOL operator == ( CONST D3DXVECTOR4_16F& ) const; BOOL operator != ( CONST D3DXVECTOR4_16F& ) const; public: #endif //__cplusplus D3DXFLOAT16 x, y, z, w; } D3DXVECTOR4_16F, *LPD3DXVECTOR4_16F;
For more information about structure members, refer to D3DXVECTOR4.
Operator overloads and type casts for this structure are implemented in d3dx9math.inl.