openscenegraph
Public Types | Public Member Functions | Public Attributes | List of all members
osg::Vec4ub Class Reference

Public Types

enum  { num_components = 4 }
 
typedef unsigned char value_type
 

Public Member Functions

 Vec4ub ()
 
 Vec4ub (value_type x, value_type y, value_type z, value_type w)
 
bool operator== (const Vec4ub &v) const
 
bool operator!= (const Vec4ub &v) const
 
bool operator< (const Vec4ub &v) const
 
value_type * ptr ()
 
const value_type * ptr () const
 
void set (value_type r, value_type g, value_type b, value_type a)
 
value_type & operator[] (unsigned int i)
 
value_type operator[] (unsigned int i) const
 
value_type & x ()
 
value_type & y ()
 
value_type & z ()
 
value_type & w ()
 
value_type x () const
 
value_type y () const
 
value_type z () const
 
value_type w () const
 
value_type & r ()
 
value_type & g ()
 
value_type & b ()
 
value_type & a ()
 
value_type r () const
 
value_type g () const
 
value_type b () const
 
value_type a () const
 
Vec4ub operator* (float rhs) const
 
Vec4ub & operator*= (float rhs)
 
Vec4ub operator/ (float rhs) const
 
Vec4ub & operator/= (float rhs)
 
Vec4ub operator+ (const Vec4ub &rhs) const
 
Vec4ub & operator+= (const Vec4ub &rhs)
 
Vec4ub operator- (const Vec4ub &rhs) const
 
Vec4ub & operator-= (const Vec4ub &rhs)
 

Public Attributes

value_type _v [4]
 

Detailed Description

General purpose float quad. Uses include representation of color coordinates. No support yet added for float * Vec4ub - is it necessary? Need to define a non-member non-friend operator* etc. Vec4ub * float is okay

Member Typedef Documentation

◆ value_type

typedef unsigned char osg::Vec4ub::value_type

Data type of vector components.

Member Enumeration Documentation

◆ anonymous enum

anonymous enum

Number of vector components.

Enumerator
num_components 

Constructor & Destructor Documentation

◆ Vec4ub() [1/2]

osg::Vec4ub::Vec4ub ( )
inline

Constructor that sets all components of the vector to zero

◆ Vec4ub() [2/2]

osg::Vec4ub::Vec4ub ( value_type  x,
value_type  y,
value_type  z,
value_type  w 
)
inline

Member Function Documentation

◆ a() [1/2]

value_type & osg::Vec4ub::a ( )
inline

◆ a() [2/2]

value_type osg::Vec4ub::a ( ) const
inline

◆ b() [1/2]

value_type & osg::Vec4ub::b ( )
inline

◆ b() [2/2]

value_type osg::Vec4ub::b ( ) const
inline

◆ g() [1/2]

value_type & osg::Vec4ub::g ( )
inline

◆ g() [2/2]

value_type osg::Vec4ub::g ( ) const
inline

◆ operator!=()

bool osg::Vec4ub::operator!= ( const Vec4ub &  v) const
inline

◆ operator*()

Vec4ub osg::Vec4ub::operator* ( float  rhs) const
inline

Multiply by scalar.

◆ operator*=()

Vec4ub & osg::Vec4ub::operator*= ( float  rhs)
inline

Unary multiply by scalar.

◆ operator+()

Vec4ub osg::Vec4ub::operator+ ( const Vec4ub &  rhs) const
inline

Binary vector add.

◆ operator+=()

Vec4ub & osg::Vec4ub::operator+= ( const Vec4ub &  rhs)
inline

Unary vector add. Slightly more efficient because no temporary intermediate object.

◆ operator-()

Vec4ub osg::Vec4ub::operator- ( const Vec4ub &  rhs) const
inline

Binary vector subtract.

◆ operator-=()

Vec4ub & osg::Vec4ub::operator-= ( const Vec4ub &  rhs)
inline

Unary vector subtract.

◆ operator/()

Vec4ub osg::Vec4ub::operator/ ( float  rhs) const
inline

Divide by scalar.

◆ operator/=()

Vec4ub & osg::Vec4ub::operator/= ( float  rhs)
inline

Unary divide by scalar.

◆ operator<()

bool osg::Vec4ub::operator< ( const Vec4ub &  v) const
inline

◆ operator==()

bool osg::Vec4ub::operator== ( const Vec4ub &  v) const
inline

◆ operator[]() [1/2]

value_type & osg::Vec4ub::operator[] ( unsigned int  i)
inline

◆ operator[]() [2/2]

value_type osg::Vec4ub::operator[] ( unsigned int  i) const
inline

◆ ptr() [1/2]

value_type * osg::Vec4ub::ptr ( )
inline

◆ ptr() [2/2]

const value_type * osg::Vec4ub::ptr ( ) const
inline

◆ r() [1/2]

value_type & osg::Vec4ub::r ( )
inline

◆ r() [2/2]

value_type osg::Vec4ub::r ( ) const
inline

◆ set()

void osg::Vec4ub::set ( value_type  r,
value_type  g,
value_type  b,
value_type  a 
)
inline

◆ w() [1/2]

value_type & osg::Vec4ub::w ( )
inline

◆ w() [2/2]

value_type osg::Vec4ub::w ( ) const
inline

◆ x() [1/2]

value_type & osg::Vec4ub::x ( )
inline

◆ x() [2/2]

value_type osg::Vec4ub::x ( ) const
inline

◆ y() [1/2]

value_type & osg::Vec4ub::y ( )
inline

◆ y() [2/2]

value_type osg::Vec4ub::y ( ) const
inline

◆ z() [1/2]

value_type & osg::Vec4ub::z ( )
inline

◆ z() [2/2]

value_type osg::Vec4ub::z ( ) const
inline

Member Data Documentation

◆ _v

value_type osg::Vec4ub::_v[4]

Vec member variable.


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