Commit ed0c757ed16ecfdafc0eba2c510ec3a4c3abfd21

Remove a layer of func call overhead.

QGLOperation is now a completely inlined "syntactic sugar" class that
costs pretty much zero to use.
  
6767 inline void end();
6868private:
6969 QGLDisplayList *m_list;
70 QGLPrimitive *m_prim;
7071};
7172
7273inline QGLOperation::QGLOperation(QGLDisplayList *list, QGL::Operation op)
7374 : m_list(list)
7475{
7576 m_list->begin(op);
77 m_prim = m_list->currentPrimitive();
7678}
7779
7880inline QGLOperation::~QGLOperation()
8484
8585inline void QGLOperation::setFlags(QGL::OperationFlags flags)
8686{
87 m_list->setFlags(flags);
87 m_prim->setFlags(flags);
8888}
8989
9090inline QGL::OperationFlags QGLOperation::flags() const
9191{
92 return m_list->flags();
92 return m_prim->flags();
9393}
9494
9595inline void QGLOperation::addVertex(const QVector3D &vertex)
9696{
97 m_list->addVertex(vertex);
97 m_prim->appendVertex(vertex);
9898}
9999
100100inline void QGLOperation::addNormal(const QVector3D &normal)
101101{
102 m_list->addNormal(normal);
102 m_prim->appendNormal(normal);
103103}
104104
105105inline void QGLOperation::addColor(const QColor4B &color)
106106{
107 m_list->addColor(color);
107 m_prim->appendColor(color);
108108}
109109
110110inline void QGLOperation::addTexCoord(const QVector2D &texCoord,
111111 QGL::VertexAttribute attr)
112112{
113 m_list->addTexCoord(texCoord, attr);
113 m_prim->appendTexCoord(texCoord, attr);
114114}
115115
116116inline void QGLOperation::addAttribute(const QVector3D &a, QGL::VertexAttribute attr)
117117{
118 m_list->addAttribute(a, attr);
118 m_prim->appendAttribute(a, attr);
119119}
120120
121121inline void QGLOperation::addVertexArray(const QVector3DArray &vertices)
122122{
123 m_list->addVertexArray(vertices);
123 m_prim->appendVertexArray(vertices);
124124}
125125
126126inline void QGLOperation::addNormalArray(const QVector3DArray &normals)
127127{
128 m_list->addNormalArray(normals);
128 m_prim->appendNormalArray(normals);
129129}
130130
131131inline void QGLOperation::addColorArray(const QArray<QColor4B> &colors)
132132{
133 m_list->addColorArray(colors);
133 m_prim->appendColorArray(colors);
134134}
135135
136136inline void QGLOperation::addTexCoordArray(const QVector2DArray &texCoords,
137137 QGL::VertexAttribute attr)
138138{
139 m_list->addTexCoordArray(texCoords, attr);
139 m_prim->appendTexCoordArray(texCoords, attr);
140140}
141141
142142inline void QGLOperation::addAttributeArray(const QCustomDataArray &ary, QGL::VertexAttribute attr)
143143{
144 m_list->addAttributeArray(ary, attr);
144 m_prim->appendAttributeArray(ary, attr);
145145}
146146
147147inline void QGLOperation::end()