Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(76)

Unified Diff: core/cross/command_buffer/render_surface_cb.h

Issue 176026: C++ Readability (Closed) Base URL: svn://chrome-svn/chrome/trunk/src/o3d/
Patch Set: '' Created 11 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: core/cross/command_buffer/render_surface_cb.h
===================================================================
--- core/cross/command_buffer/render_surface_cb.h (revision 26267)
+++ core/cross/command_buffer/render_surface_cb.h (working copy)
@@ -33,16 +33,39 @@
#ifndef O3D_CORE_CROSS_COMMAND_BUFFER_RENDER_SURFACE_CB_H_
#define O3D_CORE_CROSS_COMMAND_BUFFER_RENDER_SURFACE_CB_H_
+// This file contains the definition of the CB versions of
+// render surface sub-classes.
+
#include "core/cross/render_surface.h"
#include "core/cross/command_buffer/renderer_cb.h"
#include "command_buffer/common/cross/resource.h"
namespace o3d {
+// The RenderSurfaceCB class represents a render surface in the core library
+// of the client for command buffers. This class is responsible for sending
+// calls across the command buffer to create an actual render surface resource
+// on the server.
class RenderSurfaceCB : public RenderSurface {
public:
typedef SmartPointer<RenderSurfaceCB> Ref;
+ // The render surface maintains a reference to its texture and renderer but
+ // does not own them. The owner of the render surface is responsible for
+ // properly deleting any textures.
+ // Parameters:
+ // service_locator - for central lookup. Not owned by RenderSurfaceCB.
+ // width - width of the bitmap for this render surface. It must match the
+ // the width of the texture at 'mip_level'
+ // height - height of the bitmap for this render surface. It must match the
+ // the height of the texture at 'mip_level'
+ // mip_level - mip level of 'texture' for this render surface.
+ // side - which side of a cube texture the render surface represents. The
+ // 'side' parameter will not be used for a texture2d render surface.
+ // texture - the texture this render surface maps to. Not owned by
+ // RenderSurfaceCB.
+ // renderer - the renderer to render to render surface. Not owned by
+ // RenderSurfaceCB.
RenderSurfaceCB(ServiceLocator *service_locator,
int width,
int height,
@@ -50,41 +73,65 @@
int side,
Texture *texture,
RendererCB *renderer);
- virtual ~RenderSurfaceCB();
-
+ virtual ~RenderSurfaceCB();
+
+ // The CB specific implementation of GetBitmap.
+ // Returns:
+ // a reference to the underlying bitmap of the render surface.
virtual Bitmap::Ref PlatformSpecificGetBitmap() const {
// TODO(rlp): Add this functionality.
DCHECK(false);
return Bitmap::Ref();
}
+ // Destroys any data structures associated with the render surface and
+ // resets any allocated IDs. This function should never be called during
+ // rendering.
virtual void Destroy();
- // Gets the render surface resource ID.
+ // Returns the render surface resource ID.
command_buffer::ResourceID resource_id() const { return resource_id_; }
+
private:
command_buffer::ResourceID resource_id_;
- RendererCB* renderer_;
+ RendererCB *renderer_;
DISALLOW_COPY_AND_ASSIGN(RenderSurfaceCB);
};
+// The RenderDepthStencilSurfaceCB class represents a depth stencil surface in
+// the core library of the client for command buffers. This class is
+// responsible for sending calls across the command buffer to create an actual
+// depth stencil surface resource on the server.
class RenderDepthStencilSurfaceCB : public RenderDepthStencilSurface {
public:
typedef SmartPointer<RenderDepthStencilSurfaceCB> Ref;
+ // The depth stencil surface maintains a reference to its renderer which is
+ // also what typically creates it (though not always). The depth stencil
+ // does not maintain ownership of the renderer.
+ // Parameters:
+ // service_locator - for central lookup.
+ // width - width of the bitmap for this render surface.
+ // height - height of the bitmap for this render surface.
+ // renderer - the renderer to render to render surface. Not owned by
+ // RenderDepthStencilSurfaceCB.
RenderDepthStencilSurfaceCB(ServiceLocator *service_locator,
int width,
int height,
RendererCB *renderer);
virtual ~RenderDepthStencilSurfaceCB() {}
+ // Destroys any data structures associated with the render surface and
+ // resets any allocated IDs. This function should never be called during
+ // rendering.
virtual void Destroy();
- // Gets the render depth stencil surface resource ID.
+ // Returns the render depth stencil surface resource ID.
command_buffer::ResourceID resource_id() const { return resource_id_; }
+
private:
command_buffer::ResourceID resource_id_;
- RendererCB* renderer_;
+ RendererCB *renderer_;
DISALLOW_COPY_AND_ASSIGN(RenderDepthStencilSurfaceCB);
};
« no previous file with comments | « command_buffer/service/win/d3d9/render_surface_d3d9.cc ('k') | core/cross/command_buffer/render_surface_cb.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698