Public Member Functions | Properties

CC3OpenGLES11StateTrackerVertexPointer Class Reference

CC3OpenGLES11StateTrackerVertexPointer is a type of CC3OpenGLES11StateTrackerComposite that tracks the parameters of a vertex pointer. More...

#import <CC3OpenGLES11VertexArrays.h>

Inheritance diagram for CC3OpenGLES11StateTrackerVertexPointer:
CC3OpenGLES11StateTrackerComposite CC3OpenGLES11StateTracker CC3OpenGLES11StateTrackerVertexColorsPointer CC3OpenGLES11StateTrackerVertexLocationsPointer CC3OpenGLES11StateTrackerVertexNormalsPointer CC3OpenGLES11StateTrackerVertexPointSizesPointer CC3OpenGLES11StateTrackerVertexTexCoordsPointer

List of all members.

Public Member Functions

(void) - logSetGLValues:
(void) - setGLValues
(void) - useElementsAt:withSize:withType:withStride:
(void) - useElementsAt:withType:withStride:

Properties

CC3OpenGLES11StateTrackerPointerelementPointer
CC3OpenGLES11StateTrackerIntegerelementSize
CC3OpenGLES11StateTrackerIntegerelementStride
CC3OpenGLES11StateTrackerEnumerationelementType

Detailed Description

The vertex pointer parameters are read from GL individually, using distinct primitive trackers for each parameters. However, all parameters are set together using either the useElementsAt:withSize:withType:withStride: method, or the useElementsAt:withType:withStride: method, and the parameters are set into the GL engine together using a single call to one of the gl*Pointer functions.

The originalValueHandling property is set to kCC3GLESStateOriginalValueIgnore, which will not read the GL value from the GL engine in the open method.

The shouldAlwaysSetGL property is set to YES, which causes the state in the GL engine to be updated on every invocation of the methods useElementsAt:withSize:withType:withStride: or useElementsAt:withType:withStride:.


Member Function Documentation

- (void) logSetGLValues: (BOOL)  wasChanged

Template method to log the values set in the GL engine by the setGLValues method.

The wasSet parameter indicates whether the value has changed and was therefore set in the GL engine.

The application should not invoke this method directly.

- (void) setGLValues

Template method that sets the values in the GL engine, using one of the gl*Pointer GL functions,.

This abstract implementation does nothing. Subclasses will override to make the appropriate GL function call.

The application should not invoke this method directly.

- (void) useElementsAt: (GLvoid *)  pData
withSize: (GLint)  elemSize
withType: (GLenum)  elemType
withStride: (GLsizei)  elemStride 

Sets element pointer, element size, element type and element stride value together.

The values will be set in the GL engine only if at least one of the values has actually changed, or if the shouldAlwaysSetGL property is YES.

The initial value of the shouldAlwaysSetGL property is YES, so the values will be set in the GL engine every time this method is invoked, unless the shouldAlwaysSetGL property is set to NO.

Invokes the setGLValues method to set the values in the GL engine.

- (void) useElementsAt: (GLvoid *)  pData
withType: (GLenum)  elemType
withStride: (GLsizei)  elemStride 

For vertex pointers that do not use element size, sets element pointer, element type and element stride value together.

The values will be set in the GL engine only if at least one of the values has actually changed, or if the shouldAlwaysSetGL property is YES.

The initial value of the shouldAlwaysSetGL property is YES, so the values will be set in the GL engine every time this method is invoked, unless the shouldAlwaysSetGL property value is set to NO.

Invokes the setGLValues method to set the values in the GL engine.


Property Documentation

- (CC3OpenGLES11StateTrackerPointer *) elementPointer [read, write, retain]

Tracks the pointer to the vertex data.

- (CC3OpenGLES11StateTrackerInteger *) elementSize [read, write, retain]

Tracks vertex element size.

- (CC3OpenGLES11StateTrackerInteger *) elementStride [read, write, retain]

Tracks vertex element stride.

- (CC3OpenGLES11StateTrackerEnumeration *) elementType [read, write, retain]

Tracks vertex element type.


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