PS2GL
OpenGL*-like API for the PS2
Loading...
Searching...
No Matches
CImmGeomManager Class Reference
+ Inheritance diagram for CImmGeomManager:
+ Collaboration diagram for CImmGeomManager:

Public Member Functions

 CImmGeomManager (CGLContext &context, int immBufferQwordSize)
 
CRendererManagerGetRendererManager ()
 
void SwapBuffers ()
 
void PrimChanged (GLenum primType)
 
void SyncRendererContext (GLenum primType)
 
void SyncRenderer ()
 
void SyncGsContext ()
 
void SyncColorMaterial (bool pvColorsArePresent)
 
void DrawingLinearArray ()
 
void DrawingIndexedArray ()
 
void SyncArrayType (ArrayType::tArrayType type)
 
CDmaPacket & GetNormalBuf ()
 
CDmaPacket & GetTexCoordBuf ()
 
void EnableCustom (tU64 flag)
 
void DisableCustom (tU64 flag)
 
void BeginGeom (GLenum mode)
 
void Vertex (cpu_vec_xyzw newVert)
 
void Normal (cpu_vec_xyz normal)
 
void TexCoord (float u, float v)
 
void Color (cpu_vec_xyzw color)
 
void EndGeom ()
 
void DrawArrays (GLenum mode, int first, int count)
 
void DrawIndexedArrays (GLenum primType, int numIndices, const unsigned char *indices, int numVertices)
 
void Flush ()
 
- Public Member Functions inherited from CGeomManager
 CGeomManager (CGLContext &context)
 
void SetUserRenderContextChanged ()
 
cpu_vec_xyz GetCurNormal () const
 
void SetCurNormal (cpu_vec_xyz normal)
 
const float * GetCurTexCoord () const
 
void SetCurTexCoord (float u, float v)
 
void SetDoNormalize (bool normalize)
 
CVertArrayGetVertArray ()
 

Private Member Functions

void CommitNewGeom ()
 

Private Attributes

CRendererManager RendererManager
 
CDmaPacket VertexBuf0
 
CDmaPacket NormalBuf0
 
CDmaPacket TexCoordBuf0
 
CDmaPacket ColorBuf0
 
CDmaPacket VertexBuf1
 
CDmaPacket NormalBuf1
 
CDmaPacket TexCoordBuf1
 
CDmaPacket ColorBuf1
 
CDmaPacket * CurVertexBuf
 
CDmaPacket * CurNormalBuf
 
CDmaPacket * CurTexCoordBuf
 
CDmaPacket * CurColorBuf
 
CGeometryBlock Geometry
 

Additional Inherited Members

- Static Public Member Functions inherited from CGeomManager
static bool IsUserPrimType (unsigned int prim)
 
static void RegisterUserPrimType (GLenum prim, tU64 requirements, tU64 rendererReqMask, bool mergeContiguous)
 
static tU64 GetUserPrimRequirements (GLenum prim)
 
static bool GetUserPrimMerge (GLenum prim)
 
static tU64 GetUserPrimReqMask (GLenum prim)
 
- Static Protected Member Functions inherited from CGeomManager
static void CheckPrimAccess (GLenum prim)
 
- Protected Attributes inherited from CGeomManager
CGLContextGLContext
 
cpu_vec_xyz CurNormal
 
float CurTexCoord [2]
 
GLenum Prim
 
bool InsideBeginEnd
 
bool LastArrayAccessWasIndexed
 
bool LastArrayAccessIsValid
 
bool UserRenderContextChanged
 
- Static Protected Attributes inherited from CGeomManager
static CVertArrayVertArray
 
static const unsigned int kMaxUserPrimTypes = PGL_MAX_CUSTOM_PRIM_TYPES
 
static tUserPrimEntry UserPrimTypes [kMaxUserPrimTypes]
 
static bool DoNormalize = false
 

Detailed Description

Definition at line 16 of file immgmanager.h.

Constructor & Destructor Documentation

◆ CImmGeomManager()

CImmGeomManager::CImmGeomManager ( CGLContext context,
int  immBufferQwordSize 
)

Definition at line 31 of file immgmanager.cpp.

◆ ~CImmGeomManager()

CImmGeomManager::~CImmGeomManager ( )
virtual

Definition at line 61 of file immgmanager.cpp.

Member Function Documentation

◆ CommitNewGeom()

void CImmGeomManager::CommitNewGeom ( )
private

Definition at line 304 of file immgmanager.cpp.

◆ GetRendererManager()

CRendererManager & CImmGeomManager::GetRendererManager ( )
inline

Definition at line 35 of file immgmanager.h.

◆ SwapBuffers()

void CImmGeomManager::SwapBuffers ( )

Definition at line 66 of file immgmanager.cpp.

◆ PrimChanged()

void CImmGeomManager::PrimChanged ( GLenum  primType)

Definition at line 349 of file immgmanager.cpp.

◆ SyncRendererContext()

void CImmGeomManager::SyncRendererContext ( GLenum  primType)

Definition at line 363 of file immgmanager.cpp.

◆ SyncRenderer()

void CImmGeomManager::SyncRenderer ( )

Definition at line 355 of file immgmanager.cpp.

◆ SyncGsContext()

void CImmGeomManager::SyncGsContext ( )

Definition at line 378 of file immgmanager.cpp.

◆ SyncColorMaterial()

void CImmGeomManager::SyncColorMaterial ( bool  pvColorsArePresent)

Definition at line 409 of file immgmanager.cpp.

◆ DrawingLinearArray()

void CImmGeomManager::DrawingLinearArray ( )

Definition at line 294 of file immgmanager.cpp.

◆ DrawingIndexedArray()

void CImmGeomManager::DrawingIndexedArray ( )

Definition at line 219 of file immgmanager.cpp.

◆ SyncArrayType()

void CImmGeomManager::SyncArrayType ( ArrayType::tArrayType  type)
inline

Definition at line 50 of file immgmanager.h.

◆ GetNormalBuf()

CDmaPacket & CImmGeomManager::GetNormalBuf ( )
inline

Definition at line 62 of file immgmanager.h.

◆ GetTexCoordBuf()

CDmaPacket & CImmGeomManager::GetTexCoordBuf ( )
inline

Definition at line 63 of file immgmanager.h.

◆ EnableCustom()

void CImmGeomManager::EnableCustom ( tU64  flag)
inlinevirtual

Implements CGeomManager.

Definition at line 67 of file immgmanager.h.

◆ DisableCustom()

void CImmGeomManager::DisableCustom ( tU64  flag)
inlinevirtual

Implements CGeomManager.

Definition at line 68 of file immgmanager.h.

◆ BeginGeom()

void CImmGeomManager::BeginGeom ( GLenum  mode)
virtual

Implements CGeomManager.

Definition at line 95 of file immgmanager.cpp.

◆ Vertex()

void CImmGeomManager::Vertex ( cpu_vec_xyzw  newVert)
virtual

Implements CGeomManager.

Definition at line 111 of file immgmanager.cpp.

◆ Normal()

void CImmGeomManager::Normal ( cpu_vec_xyz  normal)
virtual

Implements CGeomManager.

Definition at line 127 of file immgmanager.cpp.

◆ TexCoord()

void CImmGeomManager::TexCoord ( float  u,
float  v 
)
virtual

Implements CGeomManager.

Definition at line 144 of file immgmanager.cpp.

◆ Color()

void CImmGeomManager::Color ( cpu_vec_xyzw  color)
virtual

Implements CGeomManager.

Definition at line 134 of file immgmanager.cpp.

◆ EndGeom()

void CImmGeomManager::EndGeom ( )
virtual

Implements CGeomManager.

Definition at line 150 of file immgmanager.cpp.

◆ DrawArrays()

void CImmGeomManager::DrawArrays ( GLenum  mode,
int  first,
int  count 
)
virtual

Implements CGeomManager.

Definition at line 183 of file immgmanager.cpp.

◆ DrawIndexedArrays()

void CImmGeomManager::DrawIndexedArrays ( GLenum  primType,
int  numIndices,
const unsigned char *  indices,
int  numVertices 
)
virtual

Implements CGeomManager.

Definition at line 229 of file immgmanager.cpp.

◆ Flush()

void CImmGeomManager::Flush ( )
virtual

Implements CGeomManager.

Definition at line 438 of file immgmanager.cpp.

Field Documentation

◆ RendererManager

CRendererManager CImmGeomManager::RendererManager
private

Definition at line 18 of file immgmanager.h.

◆ VertexBuf0

CDmaPacket CImmGeomManager::VertexBuf0
private

Definition at line 23 of file immgmanager.h.

◆ NormalBuf0

CDmaPacket CImmGeomManager::NormalBuf0
private

Definition at line 23 of file immgmanager.h.

◆ TexCoordBuf0

CDmaPacket CImmGeomManager::TexCoordBuf0
private

Definition at line 23 of file immgmanager.h.

◆ ColorBuf0

CDmaPacket CImmGeomManager::ColorBuf0
private

Definition at line 23 of file immgmanager.h.

◆ VertexBuf1

CDmaPacket CImmGeomManager::VertexBuf1
private

Definition at line 24 of file immgmanager.h.

◆ NormalBuf1

CDmaPacket CImmGeomManager::NormalBuf1
private

Definition at line 24 of file immgmanager.h.

◆ TexCoordBuf1

CDmaPacket CImmGeomManager::TexCoordBuf1
private

Definition at line 24 of file immgmanager.h.

◆ ColorBuf1

CDmaPacket CImmGeomManager::ColorBuf1
private

Definition at line 24 of file immgmanager.h.

◆ CurVertexBuf

CDmaPacket* CImmGeomManager::CurVertexBuf
private

Definition at line 25 of file immgmanager.h.

◆ CurNormalBuf

CDmaPacket * CImmGeomManager::CurNormalBuf
private

Definition at line 25 of file immgmanager.h.

◆ CurTexCoordBuf

CDmaPacket * CImmGeomManager::CurTexCoordBuf
private

Definition at line 25 of file immgmanager.h.

◆ CurColorBuf

CDmaPacket * CImmGeomManager::CurColorBuf
private

Definition at line 25 of file immgmanager.h.

◆ Geometry

CGeometryBlock CImmGeomManager::Geometry
private

Definition at line 27 of file immgmanager.h.


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