Пример #1
0
/**
 * Plug in the Get/Put routines for the given driRenderbuffer.
 */
void
r128SetSpanFunctions(driRenderbuffer *drb, const GLvisual *vis)
{
   if (drb->Base.Format == MESA_FORMAT_RGB565) {
      r128InitPointers_RGB565(&drb->Base);
   }
   else if (drb->Base.Format == MESA_FORMAT_ARGB8888) {
      r128InitPointers_ARGB8888(&drb->Base);
   }
   else if (drb->Base.Format == MESA_FORMAT_Z16) {
      r128InitDepthPointers_z16(&drb->Base);
   }
   else if (drb->Base.Format == MESA_FORMAT_S8_Z24) {
      r128InitDepthPointers_z24_s8(&drb->Base);
   }
   else if (drb->Base.Format == MESA_FORMAT_S8) {
      radeonInitStencilPointers_z24_s8(&drb->Base);
   }
}
/**
 * Plug in the Get/Put routines for the given driRenderbuffer.
 */
void
r128SetSpanFunctions(driRenderbuffer *drb, const GLvisual *vis)
{
   if (drb->Base.InternalFormat == GL_RGBA) {
      if (vis->redBits == 5 && vis->greenBits == 6 && vis->blueBits == 5) {
         r128InitPointers_RGB565(&drb->Base);
      }
      else {
         r128InitPointers_ARGB8888(&drb->Base);
      }
   }
   else if (drb->Base.InternalFormat == GL_DEPTH_COMPONENT16) {
      r128InitDepthPointers_z16(&drb->Base);
   }
   else if (drb->Base.InternalFormat == GL_DEPTH_COMPONENT24) {
      r128InitDepthPointers_z24_s8(&drb->Base);
   }
   else if (drb->Base.InternalFormat == GL_STENCIL_INDEX8_EXT) {
      radeonInitStencilPointers_z24_s8(&drb->Base);
   }
}
Пример #3
0
/**
 * Plug in the Get/Put routines for the given driRenderbuffer.
 */
void
r128SetSpanFunctions(driRenderbuffer *drb, const GLvisual *vis)
{
   if (drb->Base.InternalFormat == GL_RGBA) {
      if (vis->redBits == 5 && vis->greenBits == 6 && vis->blueBits == 5) {
         r128InitPointers_RGB565(&drb->Base);
      }
      else {
         r128InitPointers_ARGB8888(&drb->Base);
      }
   }
   else if (drb->Base.InternalFormat == GL_DEPTH_COMPONENT16) {
      drb->Base.GetRow        = r128ReadDepthSpan_16;
      drb->Base.GetValues     = r128ReadDepthPixels_16;
      drb->Base.PutRow        = r128WriteDepthSpan_16;
      drb->Base.PutMonoRow    = r128WriteMonoDepthSpan_16;
      drb->Base.PutValues     = r128WriteDepthPixels_16;
      drb->Base.PutMonoValues = NULL;
   }
   else if (drb->Base.InternalFormat == GL_DEPTH_COMPONENT24) {
      drb->Base.GetRow        = r128ReadDepthSpan_24_8;
      drb->Base.GetValues     = r128ReadDepthPixels_24_8;
      drb->Base.PutRow        = r128WriteDepthSpan_24_8;
      drb->Base.PutMonoRow    = r128WriteMonoDepthSpan_24_8;
      drb->Base.PutValues     = r128WriteDepthPixels_24_8;
      drb->Base.PutMonoValues = NULL;
   }
   else if (drb->Base.InternalFormat == GL_STENCIL_INDEX8_EXT) {
      drb->Base.GetRow        = NULL;
      drb->Base.GetValues     = NULL;
      drb->Base.PutRow        = NULL;
      drb->Base.PutMonoRow    = NULL;
      drb->Base.PutValues     = NULL;
      drb->Base.PutMonoValues = NULL;
   }
}