您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ vg_set_error函数代码示例

51自学网 2021-06-03 09:39:23
  C++
这篇教程C++ vg_set_error函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中vg_set_error函数的典型用法代码示例。如果您正苦于以下问题:C++ vg_set_error函数的具体用法?C++ vg_set_error怎么用?C++ vg_set_error使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了vg_set_error函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: vegaSetGlyphToPath

void vegaSetGlyphToPath(VGFont font,                        VGuint glyphIndex,                        VGPath path,                        VGboolean isHinted,                        const VGfloat glyphOrigin[2],                        const VGfloat escapement[2]){   struct vg_context *ctx = vg_current_context();   struct path *pathObj;   struct vg_font *f;   if (font == VG_INVALID_HANDLE ||       !vg_context_is_object_valid(ctx, VG_OBJECT_FONT, (void *)font)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!glyphOrigin || !escapement ||       !is_aligned(glyphOrigin) || !is_aligned(escapement)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (path != VG_INVALID_HANDLE &&       !vg_context_is_object_valid(ctx, VG_OBJECT_PATH, (void *)path)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   pathObj = (struct path*) path;   f = (struct vg_font*) font;   font_set_glyph_to_path(f, glyphIndex, pathObj,         isHinted, glyphOrigin, escapement);}
开发者ID:GunioRobot,项目名称:mesa-7.10.2-PS3,代码行数:33,


示例2: vegaSetGlyphToImage

void vegaSetGlyphToImage(VGFont font,                         VGuint glyphIndex,                         VGImage image,                         const VGfloat glyphOrigin[2],                         const VGfloat escapement[2]){   struct vg_context *ctx = vg_current_context();   struct vg_image *img_obj;   struct vg_font *f;   if (font == VG_INVALID_HANDLE ||       !vg_context_is_object_valid(ctx, VG_OBJECT_FONT, (void *)font)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!glyphOrigin || !escapement ||       !is_aligned(glyphOrigin) || !is_aligned(escapement)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (image != VG_INVALID_HANDLE &&       !vg_context_is_object_valid(ctx, VG_OBJECT_IMAGE, (void *)image)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   img_obj = (struct vg_image*)image;   f = (struct vg_font*)font;   font_set_glyph_to_image(f, glyphIndex, img_obj, glyphOrigin, escapement);}
开发者ID:GunioRobot,项目名称:mesa-7.10.2-PS3,代码行数:31,


示例3: vgDrawGlyph

void vgDrawGlyph(VGFont font,                 VGuint glyphIndex,                 VGbitfield paintModes,                 VGboolean allowAutoHinting){   struct vg_context *ctx = vg_current_context();   struct vg_font *f;   if (font == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (glyphIndex <= 0) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (paintModes & (~(VG_STROKE_PATH|VG_FILL_PATH))) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   f = (struct vg_font*)font;   if (!font_contains_glyph(f, glyphIndex)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }}
开发者ID:CPFDSoftware-Tony,项目名称:gmv,代码行数:26,


示例4: vgPathLength

VGfloat vgPathLength(VGPath path,                     VGint startSegment,                     VGint numSegments){   struct vg_context *ctx = vg_current_context();   struct path *p = 0;   if (path == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return -1;   }   if (startSegment < 0) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return -1;   }   if (numSegments <= 0) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return -1;   }   p = (struct path*)path;   if (!(path_capabilities(p) & VG_PATH_CAPABILITY_PATH_LENGTH)) {      vg_set_error(ctx, VG_PATH_CAPABILITY_ERROR);      return -1;   }   if (startSegment + numSegments > path_num_segments(p)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return -1;   }   return path_length(p, startSegment, numSegments);}
开发者ID:emcmanus,项目名称:FlashMesa3D,代码行数:32,


示例5: vgChildImage

VGImage vgChildImage(VGImage parent,                     VGint x, VGint y,                     VGint width, VGint height){   struct vg_context *ctx = vg_current_context();   struct vg_image *p;   if (parent == VG_INVALID_HANDLE ||       !vg_context_is_object_valid(ctx, VG_OBJECT_IMAGE, (void*)parent) ||       !vg_object_is_valid((void*)parent, VG_OBJECT_IMAGE)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return VG_INVALID_HANDLE;   }   if (width <= 0 || height <= 0 || x < 0 || y < 0) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return VG_INVALID_HANDLE;   }   p = (struct vg_image *)parent;   if (x > p->width  || y > p->height) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return VG_INVALID_HANDLE;   }   if (x + width > p->width  || y + height > p->height) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return VG_INVALID_HANDLE;   }   return (VGImage)image_child_image(p, x, y, width, height);}
开发者ID:MttDs,项目名称:new-rexeno-tindpe,代码行数:29,


示例6: vgClearGlyph

void vgClearGlyph(VGFont font,                  VGuint glyphIndex){   struct vg_context *ctx = vg_current_context();   struct vg_font *f;   VGint i;   if (font == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (glyphIndex <= 0) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   f = (struct vg_font*)font;   if (!font_contains_glyph(f, glyphIndex)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   for (i = 0; i < f->num_glyphs; ++i) {      if (f->glyph_indices[i] == glyphIndex) {         /*FIXME*/         f->glyph_indices[f->num_glyphs] = 0;         --f->num_glyphs;         return;      }   }}
开发者ID:CPFDSoftware-Tony,项目名称:gmv,代码行数:30,


示例7: vegaMask

void vegaMask(VGHandle mask, VGMaskOperation operation,              VGint x, VGint y,              VGint width, VGint height){   struct vg_context *ctx = vg_current_context();   if (width <=0 || height <= 0) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (operation < VG_CLEAR_MASK || operation > VG_SUBTRACT_MASK) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   vg_validate_state(ctx);   if (operation == VG_CLEAR_MASK) {      mask_fill(x, y, width, height, 0.f);   } else if (operation == VG_FILL_MASK) {      mask_fill(x, y, width, height, 1.f);   } else if (vg_object_is_valid(mask, VG_OBJECT_IMAGE)) {      struct vg_image *image = handle_to_image(mask);      mask_using_image(image, operation, x, y, width, height);   } else if (vg_object_is_valid(mask, VG_OBJECT_MASK)) {      struct vg_mask_layer *layer = handle_to_masklayer(mask);      mask_using_layer(layer, operation, x, y, width, height);   } else {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);   }}
开发者ID:CSRedRat,项目名称:mesa-1,代码行数:33,


示例8: vgCreateImage

VGImage vgCreateImage(VGImageFormat format,                      VGint width, VGint height,                      VGbitfield allowedQuality){   struct vg_context *ctx = vg_current_context();   if (!supported_image_format(format)) {      vg_set_error(ctx, VG_UNSUPPORTED_IMAGE_FORMAT_ERROR);      return VG_INVALID_HANDLE;   }   if (width <= 0 || height <= 0) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return VG_INVALID_HANDLE;   }   if (width > vgGeti(VG_MAX_IMAGE_WIDTH) ||       height > vgGeti(VG_MAX_IMAGE_HEIGHT)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return VG_INVALID_HANDLE;   }   if (width * height > vgGeti(VG_MAX_IMAGE_PIXELS)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return VG_INVALID_HANDLE;   }   if (!(allowedQuality & ((VG_IMAGE_QUALITY_NONANTIALIASED |                           VG_IMAGE_QUALITY_FASTER |                           VG_IMAGE_QUALITY_BETTER)))) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return VG_INVALID_HANDLE;   }   return (VGImage)image_create(format, width, height);}
开发者ID:MttDs,项目名称:new-rexeno-tindpe,代码行数:33,


示例9: vgCreatePath

VGPath vgCreatePath(VGint pathFormat,                    VGPathDatatype datatype,                    VGfloat scale, VGfloat bias,                    VGint segmentCapacityHint,                    VGint coordCapacityHint,                    VGbitfield capabilities){   struct vg_context *ctx = vg_current_context();   if (pathFormat != VG_PATH_FORMAT_STANDARD) {      vg_set_error(ctx, VG_UNSUPPORTED_PATH_FORMAT_ERROR);      return VG_INVALID_HANDLE;   }   if (datatype < VG_PATH_DATATYPE_S_8 ||       datatype > VG_PATH_DATATYPE_F) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return VG_INVALID_HANDLE;   }   if (!scale) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return VG_INVALID_HANDLE;   }   return (VGPath)path_create(datatype, scale, bias,                              segmentCapacityHint, coordCapacityHint,                              capabilities);}
开发者ID:emcmanus,项目名称:FlashMesa3D,代码行数:27,


示例10: vegaCopyMask

void vegaCopyMask(VGMaskLayer maskLayer,                  VGint sx, VGint sy,                  VGint dx, VGint dy,                  VGint width, VGint height){   struct vg_context *ctx = vg_current_context();   struct vg_mask_layer *mask = 0;   if (maskLayer == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (width <= 0 || height <= 0) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (!vg_object_is_valid(maskLayer, VG_OBJECT_MASK)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   vg_validate_state(ctx);   mask = handle_to_masklayer(maskLayer);   mask_copy(mask, sx, sy, dx, dy, width, height);}
开发者ID:CSRedRat,项目名称:mesa-1,代码行数:26,


示例11: vegaRenderToMask

void vegaRenderToMask(VGPath path,                      VGbitfield paintModes,                      VGMaskOperation operation){   struct vg_context *ctx = vg_current_context();   if (path == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!paintModes || (paintModes&(~(VG_STROKE_PATH|VG_FILL_PATH)))) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (operation < VG_CLEAR_MASK ||       operation > VG_SUBTRACT_MASK) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (!vg_object_is_valid(path, VG_OBJECT_PATH)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   vg_validate_state(ctx);   mask_render_to(handle_to_path(path), paintModes, operation);}
开发者ID:CSRedRat,项目名称:mesa-1,代码行数:28,


示例12: vegaColorMatrix

void vegaColorMatrix(VGImage dst, VGImage src,                     const VGfloat * matrix){   struct vg_context *ctx = vg_current_context();   struct vg_image *d, *s;   struct filter_info info;   if (dst == VG_INVALID_HANDLE || src == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!matrix || !is_aligned(matrix)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   d = handle_to_image(dst);   s = handle_to_image(src);   if (vg_image_overlaps(d, s)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   info.dst = d;   info.src = s;   info.setup_shader = &setup_color_matrix;   info.user_data = NULL;   info.const_buffer = matrix;   info.const_buffer_len = 20 * sizeof(VGfloat);   info.tiling_mode = VG_TILE_PAD;   info.extra_texture_view = NULL;   execute_filter(ctx, &info);}
开发者ID:Forzaferrarileo,项目名称:mesa,代码行数:34,


示例13: vegaPaintPattern

void vegaPaintPattern(VGPaint paint, VGImage pattern){   struct vg_context *ctx = vg_current_context();   if (paint == VG_INVALID_HANDLE ||       !vg_context_is_object_valid(ctx, VG_OBJECT_PAINT, (void *)paint)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (pattern == VG_INVALID_HANDLE) {      paint_set_type((struct vg_paint*)paint, VG_PAINT_TYPE_COLOR);      return;   }   if (!vg_context_is_object_valid(ctx, VG_OBJECT_IMAGE, (void *)pattern)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!vg_object_is_valid((void*)paint, VG_OBJECT_PAINT) ||       !vg_object_is_valid((void*)pattern, VG_OBJECT_IMAGE)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   paint_set_pattern((struct vg_paint*)paint,                     (struct vg_image*)pattern);}
开发者ID:GunioRobot,项目名称:mesa-7.10.2-PS3,代码行数:29,


示例14: vgInterpolatePath

VGboolean vgInterpolatePath(VGPath dstPath,                            VGPath startPath,                            VGPath endPath,                            VGfloat amount){   struct vg_context *ctx = vg_current_context();   struct path *start = 0, *dst = 0, *end = 0;   if (dstPath == VG_INVALID_HANDLE ||       startPath == VG_INVALID_HANDLE ||       endPath == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return VG_FALSE;   }   dst = (struct path *)dstPath;   start = (struct path *)startPath;   end = (struct path *)endPath;   if (!(path_capabilities(dst) & VG_PATH_CAPABILITY_INTERPOLATE_TO) ||       !(path_capabilities(start) & VG_PATH_CAPABILITY_INTERPOLATE_FROM) ||       !(path_capabilities(end) & VG_PATH_CAPABILITY_INTERPOLATE_FROM)) {      vg_set_error(ctx, VG_PATH_CAPABILITY_ERROR);      return VG_FALSE;   }   return path_interpolate(dst,                           start, end, amount);}
开发者ID:emcmanus,项目名称:FlashMesa3D,代码行数:28,


示例15: image_sub_data

void image_sub_data(struct vg_image *image,                    const void * data,                    VGint dataStride,                    VGImageFormat dataFormat,                    VGint x, VGint y,                    VGint width, VGint height){   const VGint yStep = 1;   VGubyte *src = (VGubyte *)data;   VGfloat temp[VEGA_MAX_IMAGE_WIDTH][4];   VGfloat *df = (VGfloat*)temp;   VGint i;   struct vg_context *ctx = vg_current_context();   struct pipe_context *pipe = ctx->pipe;   struct pipe_resource *texture = image_texture(image);   VGint xoffset = 0, yoffset = 0;   if (x < 0) {      xoffset -= x;      width += x;      x = 0;   }   if (y < 0) {      yoffset -= y;      height += y;      y = 0;   }   if (width <= 0 || height <= 0) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (x > image->width || y > image->width) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (x + width > image->width) {      width = image->width - x;   }   if (y + height > image->height) {      height = image->height - y;   }   { /* upload color_data */      struct pipe_transfer *transfer = pipe_get_transfer(         pipe, texture, 0, 0,         PIPE_TRANSFER_WRITE, 0, 0, texture->width0, texture->height0);      src += (dataStride * yoffset);      for (i = 0; i < height; i++) {         _vega_unpack_float_span_rgba(ctx, width, xoffset, src, dataFormat, temp);         pipe_put_tile_rgba(pipe, transfer, x+image->x, y+image->y, width, 1, df);         y += yStep;         src += dataStride;      }      pipe->transfer_destroy(pipe, transfer);   }}
开发者ID:ChillyWillyGuru,项目名称:RSXGL,代码行数:60,


示例16: vgModifyPathCoords

void vgModifyPathCoords(VGPath dstPath,                        VGint startIndex,                        VGint numSegments,                        const void * pathData){   struct vg_context *ctx = vg_current_context();   struct path *p = 0;   if (dstPath == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (startIndex < 0 || numSegments <= 0) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   p = (struct path *)dstPath;   if (!pathData || !is_aligned_to(pathData, path_datatype_size(p))) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (startIndex + numSegments > path_num_segments(p)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (!(path_capabilities(p)&VG_PATH_CAPABILITY_MODIFY)) {      vg_set_error(ctx, VG_PATH_CAPABILITY_ERROR);      return;   }   path_modify_coords(p, startIndex, numSegments, pathData);}
开发者ID:emcmanus,项目名称:FlashMesa3D,代码行数:34,


示例17: vgSetGlyphToImage

void vgSetGlyphToImage(VGFont font,                       VGuint glyphIndex,                       VGImage image,                       VGfloat glyphOrigin [2],                       VGfloat escapement[2]){   struct vg_context *ctx = vg_current_context();   struct vg_object *img_obj;   struct vg_font *f;   if (font == VG_INVALID_HANDLE ||       !vg_context_is_object_valid(ctx, VG_OBJECT_FONT, (void *)font)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!glyphOrigin || !escapement ||       !is_aligned(glyphOrigin) || !is_aligned(escapement)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (image != VG_INVALID_HANDLE &&       !vg_context_is_object_valid(ctx, VG_OBJECT_IMAGE, (void *)image)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   img_obj = (struct vg_object*)image;   if (img_obj && img_obj->type != VG_OBJECT_IMAGE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   f = (struct vg_font*)font;   f->glyph_indices[f->num_glyphs] = glyphIndex;   ++f->num_glyphs;}
开发者ID:CPFDSoftware-Tony,项目名称:gmv,代码行数:34,


示例18: vgGetImageSubData

void vgGetImageSubData(VGImage image,                       void * data,                       VGint dataStride,                       VGImageFormat dataFormat,                       VGint x, VGint y,                       VGint width, VGint height){   struct vg_context *ctx = vg_current_context();   struct vg_image *img;   if (image == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!supported_image_format(dataFormat)) {      vg_set_error(ctx, VG_UNSUPPORTED_IMAGE_FORMAT_ERROR);      return;   }   if (width <= 0 || height <= 0 || !data || !is_aligned(data)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   img = (struct vg_image*)image;   image_get_sub_data(img, data, dataStride, dataFormat,                      x, y, width, height);}
开发者ID:MttDs,项目名称:new-rexeno-tindpe,代码行数:26,


示例19: vegaSetPaint

void vegaSetPaint(VGPaint paint, VGbitfield paintModes){   struct vg_context *ctx = vg_current_context();   if (paint == VG_INVALID_HANDLE) {      /* restore the default */      paint = paint_to_handle(ctx->default_paint);   } else if (!vg_object_is_valid(paint, VG_OBJECT_PAINT)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!(paintModes & ((VG_FILL_PATH|VG_STROKE_PATH)))) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (paintModes & VG_FILL_PATH) {      ctx->state.vg.fill_paint = handle_to_paint(paint);   }   if (paintModes & VG_STROKE_PATH) {      ctx->state.vg.stroke_paint = handle_to_paint(paint);   }   ctx->state.dirty |= PAINT_DIRTY;}
开发者ID:venkatarajasekhar,项目名称:Qt,代码行数:26,


示例20: vegaLookup

void vegaLookup(VGImage dst, VGImage src,                const VGubyte * redLUT,                const VGubyte * greenLUT,                const VGubyte * blueLUT,                const VGubyte * alphaLUT,                VGboolean outputLinear,                VGboolean outputPremultiplied){   struct vg_context *ctx = vg_current_context();   struct vg_image *d, *s;   VGuint color_data[256];   VGint i;   struct pipe_sampler_view *lut_texture_view;   VGfloat buffer[4];   struct filter_info info;   if (dst == VG_INVALID_HANDLE || src == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!redLUT || !greenLUT || !blueLUT || !alphaLUT) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   d = handle_to_image(dst);   s = handle_to_image(src);   if (vg_image_overlaps(d, s)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   for (i = 0; i < 256; ++i) {      color_data[i] = blueLUT[i] << 24 | greenLUT[i] << 16 |                      redLUT[i]  <<  8 | alphaLUT[i];   }   lut_texture_view = create_texture_1d_view(ctx, color_data, 255);   buffer[0] = 0.f;   buffer[1] = 0.f;   buffer[2] = 1.f;   buffer[3] = 1.f;   info.dst = d;   info.src = s;   info.setup_shader = &setup_lookup;   info.user_data = NULL;   info.const_buffer = buffer;   info.const_buffer_len = 4 * sizeof(VGfloat);   info.tiling_mode = VG_TILE_PAD;   info.extra_texture_view = lut_texture_view;   execute_filter(ctx, &info);   pipe_sampler_view_reference(&lut_texture_view, NULL);}
开发者ID:Forzaferrarileo,项目名称:mesa,代码行数:58,


示例21: vgDestroyImage

void vgDestroyImage(VGImage image){   struct vg_context *ctx = vg_current_context();   struct vg_image *img = (struct vg_image *)image;   if (image == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!vg_object_is_valid((void*)image, VG_OBJECT_IMAGE)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   image_destroy(img);}
开发者ID:MttDs,项目名称:new-rexeno-tindpe,代码行数:15,


示例22: vegaDestroyFont

void vegaDestroyFont(VGFont f){   struct vg_font *font = (struct vg_font *)f;   struct vg_context *ctx = vg_current_context();   if (f == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!vg_object_is_valid((void *) font, VG_OBJECT_FONT)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   font_destroy(font);}
开发者ID:GunioRobot,项目名称:mesa-7.10.2-PS3,代码行数:16,


示例23: font_draw_glyphs

void font_draw_glyphs(struct vg_font *font,                      VGint glyphCount,                      const VGuint *glyphIndices,                      const VGfloat *adjustments_x,                      const VGfloat *adjustments_y,                      VGbitfield paintModes,                      VGboolean allowAutoHinting){   struct vg_context *ctx = vg_current_context();   VGint i;   for (i = 0; i < glyphCount; ++i) {      if (!get_glyph(font, glyphIndices[i])) {         vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);         return;      }   }   for (i = 0; i < glyphCount; ++i) {      struct vg_glyph *glyph;      VGfloat adj_x, adj_y;      glyph = get_glyph(font, glyphIndices[i]);      vg_render_glyph(ctx, glyph, paintModes, allowAutoHinting);      adj_x = (adjustments_x) ? adjustments_x[i] : 0.0f;      adj_y = (adjustments_y) ? adjustments_y[i] : 0.0f;      vg_advance_glyph(ctx, glyph, adj_x, adj_y, (i == glyphCount - 1));   }}
开发者ID:CSRedRat,项目名称:mesa-1,代码行数:31,


示例24: vgCopyPixels

void vgCopyPixels(VGint dx, VGint dy,                  VGint sx, VGint sy,                  VGint width, VGint height){   struct vg_context *ctx = vg_current_context();   struct pipe_framebuffer_state *fb = &ctx->state.g3d.fb;   struct st_renderbuffer *strb = ctx->draw_buffer->strb;   if (width <= 0 || height <= 0) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   /* do nothing if we copy from outside the fb */   if (dx >= (VGint)fb->width || dy >= (VGint)fb->height ||       sx >= (VGint)fb->width || sy >= (VGint)fb->height)      return;   vg_validate_state(ctx);   /* make sure rendering has completed */   vgFinish();   vg_copy_surface(ctx, strb->surface, dx, dy,                   strb->surface, sx, sy, width, height);}
开发者ID:MttDs,项目名称:new-rexeno-tindpe,代码行数:25,


示例25: vegaSeparableConvolve

void vegaSeparableConvolve(VGImage dst, VGImage src,                           VGint kernelWidth,                           VGint kernelHeight,                           VGint shiftX, VGint shiftY,                           const VGshort * kernelX,                           const VGshort * kernelY,                           VGfloat scale,                           VGfloat bias,                           VGTilingMode tilingMode){   struct vg_context *ctx = vg_current_context();   VGshort *kernel;   VGint i, j, idx = 0;   const VGint max_kernel_size = vegaGeti(VG_MAX_SEPARABLE_KERNEL_SIZE);   if (dst == VG_INVALID_HANDLE || src == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (kernelWidth <= 0 || kernelHeight <= 0 ||       kernelWidth > max_kernel_size || kernelHeight > max_kernel_size) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (!kernelX || !kernelY ||       !is_aligned_to(kernelX, 2) || !is_aligned_to(kernelY, 2)) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (tilingMode < VG_TILE_FILL ||       tilingMode > VG_TILE_REFLECT) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   kernel = malloc(sizeof(VGshort)*kernelWidth*kernelHeight);   for (i = 0; i < kernelWidth; ++i) {      for (j = 0; j < kernelHeight; ++j) {         kernel[idx] = kernelX[i] * kernelY[j];         ++idx;      }   }   vegaConvolve(dst, src, kernelWidth, kernelHeight, shiftX, shiftY,                kernel, scale, bias, tilingMode);   free(kernel);}
开发者ID:Forzaferrarileo,项目名称:mesa,代码行数:47,


示例26: font_clear_glyph

void font_clear_glyph(struct vg_font *font,                      VGuint glyphIndex){   if (!del_glyph(font, glyphIndex)) {      struct vg_context *ctx = vg_current_context();      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);   }}
开发者ID:CSRedRat,项目名称:mesa-1,代码行数:8,


示例27: vegaDestroyMaskLayer

void vegaDestroyMaskLayer(VGMaskLayer maskLayer){   struct vg_mask_layer *mask = 0;   struct vg_context *ctx = vg_current_context();   if (maskLayer == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!vg_object_is_valid(maskLayer, VG_OBJECT_MASK)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   mask = handle_to_masklayer(maskLayer);   mask_layer_destroy(mask);}
开发者ID:CSRedRat,项目名称:mesa-1,代码行数:17,


示例28: vg_create_context

struct vg_context * vg_create_context(struct pipe_context *pipe,                                      const void *visual,                                      struct vg_context *share){   struct vg_context *ctx;   ctx = CALLOC_STRUCT(vg_context);   ctx->pipe = pipe;   if (!choose_depth_stencil_format(ctx)) {      FREE(ctx);      return NULL;   }   ctx->dispatch = api_create_dispatch();   vg_init_state(&ctx->state.vg);   ctx->state.dirty = ALL_DIRTY;   ctx->cso_context = cso_create_context(pipe);   ctx->default_paint = paint_create(ctx);   ctx->state.vg.stroke_paint = ctx->default_paint;   ctx->state.vg.fill_paint = ctx->default_paint;   ctx->mask.sampler.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE;   ctx->mask.sampler.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE;   ctx->mask.sampler.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE;   ctx->mask.sampler.min_mip_filter = PIPE_TEX_MIPFILTER_NONE;   ctx->mask.sampler.min_img_filter = PIPE_TEX_FILTER_NEAREST;   ctx->mask.sampler.mag_img_filter = PIPE_TEX_FILTER_NEAREST;   ctx->mask.sampler.normalized_coords = 0;   ctx->blend_sampler.wrap_s = PIPE_TEX_WRAP_CLAMP_TO_EDGE;   ctx->blend_sampler.wrap_t = PIPE_TEX_WRAP_CLAMP_TO_EDGE;   ctx->blend_sampler.wrap_r = PIPE_TEX_WRAP_CLAMP_TO_EDGE;   ctx->blend_sampler.min_mip_filter = PIPE_TEX_MIPFILTER_NONE;   ctx->blend_sampler.min_img_filter = PIPE_TEX_FILTER_NEAREST;   ctx->blend_sampler.mag_img_filter = PIPE_TEX_FILTER_NEAREST;   ctx->blend_sampler.normalized_coords = 0;   vg_set_error(ctx, VG_NO_ERROR);   ctx->owned_objects[VG_OBJECT_PAINT] = cso_hash_create();   ctx->owned_objects[VG_OBJECT_IMAGE] = cso_hash_create();   ctx->owned_objects[VG_OBJECT_MASK] = cso_hash_create();   ctx->owned_objects[VG_OBJECT_FONT] = cso_hash_create();   ctx->owned_objects[VG_OBJECT_PATH] = cso_hash_create();   ctx->renderer = renderer_create(ctx);   ctx->sc = shaders_cache_create(ctx);   ctx->shader = shader_create(ctx);   ctx->blit = util_create_blit(ctx->pipe, ctx->cso_context);   return ctx;}
开发者ID:venkatarajasekhar,项目名称:Qt,代码行数:58,


示例29: vegaSetColor

void vegaSetColor(VGPaint paint, VGuint rgba){   struct vg_context *ctx = vg_current_context();   if (paint == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!vg_object_is_valid((void*)paint, VG_OBJECT_PAINT)) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   {      struct vg_paint *p = (struct vg_paint *)paint;      paint_set_colori(p, rgba);   }}
开发者ID:GunioRobot,项目名称:mesa-7.10.2-PS3,代码行数:18,


示例30: vgDrawPath

void vgDrawPath(VGPath path, VGbitfield paintModes){   struct vg_context *ctx = vg_current_context();   if (path == VG_INVALID_HANDLE) {      vg_set_error(ctx, VG_BAD_HANDLE_ERROR);      return;   }   if (!(paintModes & (VG_STROKE_PATH | VG_FILL_PATH))) {      vg_set_error(ctx, VG_ILLEGAL_ARGUMENT_ERROR);      return;   }   if (path_is_empty((struct path*)path))      return;   path_render((struct path*)path, paintModes);}
开发者ID:emcmanus,项目名称:FlashMesa3D,代码行数:18,



注:本文中的vg_set_error函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ vgacon_text_force函数代码示例
C++ vg_current_context函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。