This is an "unaligned" LVecBase4. More...
#include "lvecBase4.h"
Public Types | |
enum | { num_components = 4, is_int = 0 } |
typedef double | numeric_type |
typedef LSimpleMatrix< double, 1, 4 > | UVector4 |
Public Member Functions | |
UnalignedLVecBase4d (const LVecBase4d ©) | |
UnalignedLVecBase4d (const UnalignedLVecBase4d ©) | |
UnalignedLVecBase4d (double x, double y, double z, double w) | |
const double * | get_data () const |
Returns the address of the first of the three data elements in the vector. More... | |
int | get_num_components () const |
Returns the number of elements in the vector, 4. More... | |
UnalignedLVecBase4d & | operator= (const LVecBase4d ©) |
UnalignedLVecBase4d & | operator= (const UnalignedLVecBase4d ©) |
double | operator[] (int i) const |
double & | operator[] (int i) |
void | set (double x, double y, double z, double w) |
Static Public Member Functions | |
static TypeHandle | get_class_type () |
static void | init_type () |
static int | size () |
Returns 4: the number of components of a LVecBase4. More... | |
Public Attributes | |
UVector4 | _v |
This is an "unaligned" LVecBase4.
It has no functionality other than to store numbers, and it will pack them in as tightly as possible, avoiding any SSE2 alignment requirements shared by the primary LVecBase4 class.
Use it only when you need to pack numbers tightly without respect to alignment, and then copy it to a proper LVecBase4 to get actual use from it.
Definition at line 1849 of file lvecBase4.h.
|
inline |
Returns the address of the first of the three data elements in the vector.
The remaining elements occupy the next positions consecutively in memory.
Definition at line 3122 of file lvecBase4.h.
|
inline |
Returns the number of elements in the vector, 4.
Definition at line 3132 of file lvecBase4.h.
|
inlinestatic |
Returns 4: the number of components of a LVecBase4.
Definition at line 3110 of file lvecBase4.h.