Lines Matching full:ctx
53 GET_CURRENT_CONTEXT(ctx);
55 ASSERT_OUTSIDE_BEGIN_END(ctx);
57 if (ctx->Pixel.ZoomX == xfactor &&
58 ctx->Pixel.ZoomY == yfactor)
61 FLUSH_VERTICES(ctx, _NEW_PIXEL);
62 ctx->Pixel.ZoomX = xfactor;
63 ctx->Pixel.ZoomY = yfactor;
76 get_pixelmap(struct gl_context *ctx, GLenum map)
80 return &ctx->PixelMaps.ItoI;
82 return &ctx->PixelMaps.StoS;
84 return &ctx->PixelMaps.ItoR;
86 return &ctx->PixelMaps.ItoG;
88 return &ctx->PixelMaps.ItoB;
90 return &ctx->PixelMaps.ItoA;
92 return &ctx->PixelMaps.RtoR;
94 return &ctx->PixelMaps.GtoG;
96 return &ctx->PixelMaps.BtoB;
98 return &ctx->PixelMaps.AtoA;
109 store_pixelmap(struct gl_context *ctx, GLenum map, GLsizei mapsize,
113 struct gl_pixelmap *pm = get_pixelmap(ctx, map);
115 _mesa_error(ctx, GL_INVALID_ENUM, "glPixelMap(map)");
122 ctx->PixelMaps.StoS.Size = mapsize;
124 ctx->PixelMaps.StoS.Map[i] = (GLfloat)IROUND(values[i]);
129 ctx->PixelMaps.ItoI.Size = mapsize;
131 ctx->PixelMaps.ItoI.Map[i] = values[i];
149 validate_pbo_access(struct gl_context *ctx,
157 _mesa_reference_buffer_object(ctx,
158 &ctx->DefaultPacking.BufferObj,
161 ok = _mesa_validate_pbo_access(1, &ctx->DefaultPacking, mapsize, 1, 1,
165 _mesa_reference_buffer_object(ctx,
166 &ctx->DefaultPacking.BufferObj,
167 ctx->Shared->NullBufferObj);
171 _mesa_error(ctx, GL_INVALID_OPERATION,
174 _mesa_error(ctx, GL_INVALID_OPERATION,
186 GET_CURRENT_CONTEXT(ctx);
187 ASSERT_OUTSIDE_BEGIN_END(ctx);
189 /* XXX someday, test against ctx->Const.MaxPixelMapTableSize */
191 _mesa_error( ctx, GL_INVALID_VALUE, "glPixelMapfv(mapsize)" );
198 _mesa_error( ctx, GL_INVALID_VALUE, "glPixelMapfv(mapsize)" );
203 FLUSH_VERTICES(ctx, _NEW_PIXEL);
205 if (!validate_pbo_access(ctx, &ctx->Unpack, mapsize, GL_INTENSITY,
210 values = (const GLfloat *) _mesa_map_pbo_source(ctx, &ctx->Unpack, values);
212 if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) {
213 _mesa_error(ctx, GL_INVALID_OPERATION,
219 store_pixelmap(ctx, map, mapsize, values);
221 _mesa_unmap_pbo_source(ctx, &ctx->Unpack);
229 GET_CURRENT_CONTEXT(ctx);
230 ASSERT_OUTSIDE_BEGIN_END(ctx);
233 _mesa_error( ctx, GL_INVALID_VALUE, "glPixelMapuiv(mapsize)" );
240 _mesa_error( ctx, GL_INVALID_VALUE, "glPixelMapuiv(mapsize)" );
245 FLUSH_VERTICES(ctx, _NEW_PIXEL);
247 if (!validate_pbo_access(ctx, &ctx->Unpack, mapsize, GL_INTENSITY,
252 values = (const GLuint *) _mesa_map_pbo_source(ctx, &ctx->Unpack, values);
254 if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) {
255 _mesa_error(ctx, GL_INVALID_OPERATION,
275 _mesa_unmap_pbo_source(ctx, &ctx->Unpack);
277 store_pixelmap(ctx, map, mapsize, fvalues);
285 GET_CURRENT_CONTEXT(ctx);
286 ASSERT_OUTSIDE_BEGIN_END(ctx);
289 _mesa_error( ctx, GL_INVALID_VALUE, "glPixelMapusv(mapsize)" );
296 _mesa_error( ctx, GL_INVALID_VALUE, "glPixelMapuiv(mapsize)" );
301 FLUSH_VERTICES(ctx, _NEW_PIXEL);
303 if (!validate_pbo_access(ctx, &ctx->Unpack, mapsize, GL_INTENSITY,
308 values = (const GLushort *) _mesa_map_pbo_source(ctx, &ctx->Unpack, values);
310 if (_mesa_is_bufferobj(ctx->Unpack.BufferObj)) {
311 _mesa_error(ctx, GL_INVALID_OPERATION,
331 _mesa_unmap_pbo_source(ctx, &ctx->Unpack);
333 store_pixelmap(ctx, map, mapsize, fvalues);
340 GET_CURRENT_CONTEXT(ctx);
344 ASSERT_OUTSIDE_BEGIN_END(ctx);
346 pm = get_pixelmap(ctx, map);
348 _mesa_error(ctx, GL_INVALID_ENUM, "glGetPixelMapfv(map)");
354 if (!validate_pbo_access(ctx, &ctx->Pack, mapsize, GL_INTENSITY,
359 values = (GLfloat *) _mesa_map_pbo_dest(ctx, &ctx->Pack, values);
361 if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) {
362 _mesa_error(ctx, GL_INVALID_OPERATION,
371 values[i] = (GLfloat) ctx->PixelMaps.StoS.Map[i];
378 _mesa_unmap_pbo_dest(ctx, &ctx->Pack);
391 GET_CURRENT_CONTEXT(ctx);
395 ASSERT_OUTSIDE_BEGIN_END(ctx);
397 pm = get_pixelmap(ctx, map);
399 _mesa_error(ctx, GL_INVALID_ENUM, "glGetPixelMapuiv(map)");
405 if (!validate_pbo_access(ctx, &ctx->Pack, mapsize, GL_INTENSITY,
410 values = (GLuint *) _mesa_map_pbo_dest(ctx, &ctx->Pack, values);
412 if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) {
413 _mesa_error(ctx, GL_INVALID_OPERATION,
421 memcpy(values, ctx->PixelMaps.StoS.Map, mapsize * sizeof(GLint));
429 _mesa_unmap_pbo_dest(ctx, &ctx->Pack);
442 GET_CURRENT_CONTEXT(ctx);
446 ASSERT_OUTSIDE_BEGIN_END(ctx);
448 pm = get_pixelmap(ctx, map);
450 _mesa_error(ctx, GL_INVALID_ENUM, "glGetPixelMapusv(map)");
456 if (!validate_pbo_access(ctx, &ctx->Pack, mapsize, GL_INTENSITY,
461 values = (GLushort *) _mesa_map_pbo_dest(ctx, &ctx->Pack, values);
463 if (_mesa_is_bufferobj(ctx->Pack.BufferObj)) {
464 _mesa_error(ctx, GL_INVALID_OPERATION,
474 values[i] = (GLushort) CLAMP(ctx->PixelMaps.ItoI.Map[i], 0.0, 65535.);
479 values[i] = (GLushort) CLAMP(ctx->PixelMaps.StoS.Map[i], 0.0, 65535.);
488 _mesa_unmap_pbo_dest(ctx, &ctx->Pack);
511 GET_CURRENT_CONTEXT(ctx);
512 ASSERT_OUTSIDE_BEGIN_END(ctx);
516 if (ctx->Pixel.MapColorFlag == (param ? GL_TRUE : GL_FALSE))
518 FLUSH_VERTICES(ctx, _NEW_PIXEL);
519 ctx->Pixel.MapColorFlag = param ? GL_TRUE : GL_FALSE;
522 if (ctx->Pixel.MapStencilFlag == (param ? GL_TRUE : GL_FALSE))
524 FLUSH_VERTICES(ctx, _NEW_PIXEL);
525 ctx->Pixel.MapStencilFlag = param ? GL_TRUE : GL_FALSE;
528 if (ctx->Pixel.IndexShift == (GLint) param)
530 FLUSH_VERTICES(ctx, _NEW_PIXEL);
531 ctx->Pixel.IndexShift = (GLint) param;
534 if (ctx->Pixel.IndexOffset == (GLint) param)
536 FLUSH_VERTICES(ctx, _NEW_PIXEL);
537 ctx->Pixel.IndexOffset = (GLint) param;
540 if (ctx->Pixel.RedScale == param)
542 FLUSH_VERTICES(ctx, _NEW_PIXEL);
543 ctx->Pixel.RedScale = param;
546 if (ctx->Pixel.RedBias == param)
548 FLUSH_VERTICES(ctx, _NEW_PIXEL);
549 ctx->Pixel.RedBias = param;
552 if (ctx->Pixel.GreenScale == param)
554 FLUSH_VERTICES(ctx, _NEW_PIXEL);
555 ctx->Pixel.GreenScale = param;
558 if (ctx->Pixel.GreenBias == param)
560 FLUSH_VERTICES(ctx, _NEW_PIXEL);
561 ctx->Pixel.GreenBias = param;
564 if (ctx->Pixel.BlueScale == param)
566 FLUSH_VERTICES(ctx, _NEW_PIXEL);
567 ctx->Pixel.BlueScale = param;
570 if (ctx->Pixel.BlueBias == param)
572 FLUSH_VERTICES(ctx, _NEW_PIXEL);
573 ctx->Pixel.BlueBias = param;
576 if (ctx->Pixel.AlphaScale == param)
578 FLUSH_VERTICES(ctx, _NEW_PIXEL);
579 ctx->Pixel.AlphaScale = param;
582 if (ctx->Pixel.AlphaBias == param)
584 FLUSH_VERTICES(ctx, _NEW_PIXEL);
585 ctx->Pixel.AlphaBias = param;
588 if (ctx->Pixel.DepthScale == param)
590 FLUSH_VERTICES(ctx, _NEW_PIXEL);
591 ctx->Pixel.DepthScale = param;
594 if (ctx->Pixel.DepthBias == param)
596 ctx, _NEW_PIXEL);
597 ctx->Pixel.DepthBias = param;
600 _mesa_error( ctx, GL_INVALID_ENUM, "glPixelTransfer(pname)" );
623 update_image_transfer_state(struct gl_context *ctx)
627 if (ctx->Pixel.RedScale != 1.0F || ctx->Pixel.RedBias != 0.0F ||
628 ctx->Pixel.GreenScale != 1.0F || ctx->Pixel.GreenBias != 0.0F ||
629 ctx->Pixel.BlueScale != 1.0F || ctx->Pixel.BlueBias != 0.0F ||
630 ctx->Pixel.AlphaScale != 1.0F || ctx->Pixel.AlphaBias != 0.0F)
633 if (ctx->Pixel.IndexShift || ctx->Pixel.IndexOffset)
636 if (ctx->Pixel.MapColorFlag)
639 ctx->_ImageTransferState = mask;
646 void _mesa_update_pixel( struct gl_context *ctx, GLuint new_state )
649 update_image_transfer_state(ctx);
692 _mesa_init_pixel( struct gl_context *ctx )
695 ctx->Pixel.RedBias = 0.0;
696 ctx->Pixel.RedScale = 1.0;
697 ctx->Pixel.GreenBias = 0.0;
698 ctx->Pixel.GreenScale = 1.0;
699 ctx->Pixel.BlueBias = 0.0;
700 ctx->Pixel.BlueScale = 1.0;
701 ctx->Pixel.AlphaBias = 0.0;
702 ctx->Pixel.AlphaScale = 1.0;
703 ctx->Pixel.DepthBias = 0.0;
704 ctx->Pixel.DepthScale = 1.0;
705 ctx->Pixel.IndexOffset = 0;
706 ctx->Pixel.IndexShift = 0;
707 ctx->Pixel.ZoomX = 1.0;
708 ctx->Pixel.ZoomY = 1.0;
709 ctx->Pixel.MapColorFlag = GL_FALSE;
710 ctx->Pixel.MapStencilFlag = GL_FALSE;
711 init_pixelmap(&ctx->PixelMaps.StoS);
712 init_pixelmap(&ctx->PixelMaps.ItoI);
713 init_pixelmap(&ctx->PixelMaps.ItoR);
714 init_pixelmap(&ctx->PixelMaps.ItoG);
715 init_pixelmap(&ctx->PixelMaps.ItoB);
716 init_pixelmap(&ctx->PixelMaps.ItoA);
717 init_pixelmap(&ctx->PixelMaps.RtoR);
718 init_pixelmap(&ctx->PixelMaps.GtoG);
719 init_pixelmap(&ctx->PixelMaps.BtoB);
720 init_pixelmap(&ctx->PixelMaps.AtoA);
722 if (ctx->Visual.doubleBufferMode) {
723 ctx->Pixel.ReadBuffer = GL_BACK;
726 ctx->Pixel.ReadBuffer = GL_FRONT;
730 ctx->_ImageTransferState = 0;