VTK
vtkOpenGLPainterDeviceAdapter.h
Go to the documentation of this file.
1 /*=========================================================================
2 
3  Program: Visualization Toolkit
4  Module: vtkOpenGLPainterDeviceAdapter.h
5 
6  Copyright (c) Ken Martin, Will Schroeder, Bill Lorensen
7  All rights reserved.
8  See Copyright.txt or http://www.kitware.com/Copyright.htm for details.
9 
10  This software is distributed WITHOUT ANY WARRANTY; without even
11  the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
12  PURPOSE. See the above copyright notice for more information.
13 
14 =========================================================================*/
15 /*
16  * Copyright 2004 Sandia Corporation.
17  * Under the terms of Contract DE-AC04-94AL85000, there is a non-exclusive
18  * license for use of this work by or on behalf of the
19  * U.S. Government. Redistribution and use in source and binary forms, with
20  * or without modification, are permitted provided that this Notice and any
21  * statement of authorship are reproduced on all copies.
22  */
23 
42 #ifndef vtkOpenGLPainterDeviceAdapter_h
43 #define vtkOpenGLPainterDeviceAdapter_h
44 
45 #include "vtkRenderingOpenGLModule.h" // For export macro
47 
48 // To switch off deprecated warning about
49 // vtkPainterDeviceAdapter::MakeVertexEmphasisWithStencilCheck
50 #if defined(_MSC_VER)
51 #pragma warning(push)
52 #pragma warning(disable:4996)
53 #endif
54 
57 {
58 public:
61  virtual void PrintSelf(ostream &os, vtkIndent indent);
62 
64  virtual void BeginPrimitive(int mode);
65 
67  virtual void EndPrimitive();
68 
71  virtual int IsAttributesSupported(int attribute);
72 
74 
75  virtual void SendAttribute(int index, int components, int type,
76  const void *attribute, vtkIdType offset=0);
78 
80 
81  virtual void SendMultiTextureCoords(int numcomp, int type, const void *attribute,
82  int idx, vtkIdType offset);
84 
86 
88  virtual void SetAttributePointer(int index, int numcomponents, int type,
89  int stride, const void *pointer);
91 
93 
94  virtual void EnableAttributeArray(int index);
95  virtual void DisableAttributeArray(int index);
97 
99  virtual void DrawArrays(int mode, vtkIdType first, vtkIdType count);
100 
103  virtual void DrawElements(int mode, vtkIdType count, int type, void *indices);
104 
106  virtual int Compatible(vtkRenderer *renderer);
107 
110  VTK_LEGACY(virtual void MakeLighting(int mode));
111 
114  VTK_LEGACY(virtual int QueryLighting());
115 
118  VTK_LEGACY(virtual void MakeMultisampling(int mode));
119 
122  VTK_LEGACY(virtual int QueryMultisampling());
123 
126  VTK_LEGACY(virtual void MakeBlending(int mode));
127 
130  VTK_LEGACY(virtual int QueryBlending());
131 
135  virtual void MakeVertexEmphasis(bool mode);
136 
138 
139  virtual void Stencil(int on);
140  virtual void WriteStencil(vtkIdType value);
141  virtual void TestStencil(vtkIdType value);
143 
144 protected:
147 
148  double PointSize;
149  double RangeNear;
150  double RangeFar;
153 private:
155  void operator=(const vtkOpenGLPainterDeviceAdapter &); // Not implemented.
156 };
157 
158 #if defined(_MSC_VER)
159 #pragma warning(pop)
160 #endif
161 
162 #endif
virtual void MakeVertexEmphasis(bool mode)=0
const GLint * first
Definition: vtkgl.h:11686
GLuint GLuint GLsizei GLenum type
Definition: vtkgl.h:11315
GLuint index
Definition: vtkgl.h:11983
GLintptr offset
Definition: vtkgl.h:11844
virtual void SendAttribute(int index, int components, int type, const void *attribute, vtkIdType offset=0)=0
virtual void EnableAttributeArray(int index)=0
virtual void WriteStencil(vtkIdType value)=0
GLuint GLuint GLsizei count
Definition: vtkgl.h:11315
virtual void MakeLighting(int mode)=0
GLenum GLenum GLuint components
Definition: vtkgl.h:16909
abstract specification for renderers
Definition: vtkRenderer.h:63
virtual int QueryLighting()=0
GLsizei const GLfloat * value
Definition: vtkgl.h:12021
int vtkIdType
Definition: vtkType.h:281
virtual int QueryMultisampling()=0
GLsizei stride
Definition: vtkgl.h:11728
static vtkPainterDeviceAdapter * New()
virtual void SendMultiTextureCoords(int numcomp, int type, const void *attribute, int idx, vtkIdType offset)=0
virtual void Stencil(int on)=0
#define vtkTypeMacro(thisClass, superclass)
Definition: vtkSetGet.h:632
virtual int IsAttributesSupported(int attribute)=0
virtual void TestStencil(vtkIdType value)=0
An adapter between a vtkPainter and a rendering device.
a simple class to control print indentation
Definition: vtkIndent.h:38
virtual int QueryBlending()=0
#define VTKRENDERINGOPENGL_EXPORT
virtual void PrintSelf(ostream &os, vtkIndent indent)
void SetAttributePointer(int index, vtkDataArray *attributeArray)
virtual void DisableAttributeArray(int index)=0
GLuint GLuint GLsizei GLenum const GLvoid * indices
Definition: vtkgl.h:11315
#define VTK_LEGACY(method)
Definition: vtkSetGet.h:800
virtual int Compatible(vtkRenderer *renderer)=0
virtual void EndPrimitive()=0
virtual void DrawElements(int mode, vtkIdType count, int type, void *indices)=0
GLsizei const GLvoid * pointer
Definition: vtkgl.h:11728
An adapter between a vtkPainter and a rendering device.
virtual void BeginPrimitive(int mode)=0
virtual void MakeMultisampling(int mode)=0
virtual void DrawArrays(int mode, vtkIdType first, vtkIdType count)=0
GLenum mode
Definition: vtkgl.h:12325
virtual void MakeBlending(int mode)=0