VR-Forces 4.0.4 Class Documentation
include/vrvGraphics/DtPrimitiveRenderer.h
Go to the documentation of this file.
00001 /******************************************************************************
00002 ** Copyright (c) 2010 MAK Technologies, Inc.
00003 ** All rights reserved.
00004 ******************************************************************************/
00006 
00007 #pragma once
00008 
00009 #include <vrvGraphics/vrvGraphics.h>
00010 
00011 namespace makVrv
00012 {
00013 
00014    class DtOverlayResourceProvider;
00015 
00018    class DT_DLL_VRVGRAPHICS DtPrimitiveRenderer
00019    {
00020    public:
00021 
00022       enum RenderModes
00023       {
00024          RenderMode_VertexArray = 1,
00025          RenderMode_VertexBufferObject,
00026          RenderMode_SortedVertexArray,
00027          RenderMode_SortedVertexBufferObject,      
00028          RenderModes_End
00029       };
00030 
00031       enum OrderModes
00032       {
00033          OrderMode_None = 0,
00034          OrderMode_Queue,
00035          OrderMode_Group,
00036          OrderModes_end
00037       };
00038 
00039       DtPrimitiveRenderer(DtOverlayResourceProvider& provider);
00040       virtual ~DtPrimitiveRenderer();
00041 
00043       virtual int numberOfPrimitives() const = 0;
00044 
00046       virtual void releaseResources() = 0;
00047 
00049       virtual bool isRenderModeSupported(int mode) = 0;
00050 
00051       // Set the render mode
00052       void setRenderMode(int mode);
00053 
00054       // Get the render mode
00055       int renderMode() const;
00056 
00057       // Get the number of render modes
00058       int numberOfRenderModes() const;
00059 
00062       void setOrderMode(int mode);
00063 
00065       int orderMode() const;  
00066 
00067       void addGroupRef( unsigned int group );
00068 
00069       void removeGroupRef( unsigned int group );
00070 
00071       unsigned int groupCount() const;
00072 
00073    protected:
00074 
00075       DtOverlayResourceProvider& myProvider;
00076       int myRenderMode;
00077       int myOrderMode;
00078       bool myForceUpdate;
00079 
00080    };
00081 }

Document ID: Generated on Fri Jun 29 16:33:32 EDT 2012 from SVN revision 116588
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)