在BlinkScript节点的Kernel Parameters标签页添加各类属性控件

原创 2018年04月17日 11:32:40

这是较为基本的BlinkScript脚本语言,用于在Kernel Parameters标签页添加所需的属性控件。以下笔者对脚本语言进行了详细解说,如有错误请指正。


kernel KnobsKernel : ImageComputationKernel<eComponentWise>
//将代码命名为KnobsKernel,并指定Kernel的类型为ImageComputationKernel<eComponentWise>,即,该类型将作用于图像的全部组成部分(RGB和Alpha通道),目前,BlinkScripts只能针对于图像的RGBA通道,如果需要将BlinkScripts运用于图像的其他通道则需要使用Shuffle节点进行转换。Kernel Granularity(粒度:表现一个事物或活动特征的相对大小/规模和细节层次等)含有eComponentWise和ePixelWise两种形式,eComponentWise是指Kernel在每次执行过程中对图像的某一部分进行运算;ePixelWise是指Kernel在每次执行过程中对图像的一个像素进行运算。//

{
  Image<eRead> src;
  Image<eWrite> dst;
//使用“src”定义输入端,使用“dst”定义输出端//

param:
  float single_float;
  float2 xy;
  float3 xyz;
  float4 acolor;
  float multi_float[5];
  float3x3 array3x3;
  float4x4 array4x4;
  int single_int;
  int multi_int[4];
  bool default_true_knob;
  bool default_false_knob;
//定义param可见变量。Kernel的可见变量可以含有param和local两种可见级别。param可见变量类似于C++中的public变量,可以在Kermel外部进行访问;local可见变量类似于C++中的private变量,仅可在Kernel内部进行访问//
//bool是布尔值变量,它有两个值,一个是真,一个为假。在这里bool变量用于建立选框控件。//

local:
  void define() {
    defineParam(single_float, "SingleFloat", 4.0f); 
    defineParam(xy, "XY"); 
    defineParam(xyz, "XYZ"); 
    defineParam(acolor, "AColor"); 
    defineParam(multi_float, "MultiFloat"); 
    defineParam(array3x3, "Array3x3"); 
    defineParam(array4x4, "Array4x4"); 
    defineParam(single_int, "SingleInt", 4); 
    defineParam(multi_int, "MultiInt"); 
    defineParam(default_true_knob, "DefaultTrue", true); 
    defineParam(default_false_knob, "DefaultFalse", false); 
  }
//定义Kernel Parameters标签页添加各类属性控件,大写字母开头的名称即为控件名//

  void init() {
  }
  void process() { //void process()语句是指在迭代空间进行重复运算//
    dst() = src();//拷贝src输入端到dst输出端//
  }
};

各类接口测试实战合集

-
  • 1970年01月01日 08:00

Linux Kernel Parameters

Kernel Parameters ~~~~~~~~~~~~~~~~~ The following is a consolidated list ...
  • tody_guo
  • tody_guo
  • 2012-03-30 17:43:41
  • 7938

Kernel Parameters

Linux内核参数是在Linux内核中由宏__setup定义的一系列参数。内核参数包括启动参数和内核模块参数,完整的内核参数列表可以参见Documents/kernel-parameters.txt。...
  • liushuimpc
  • liushuimpc
  • 2015-03-11 16:56:26
  • 481

MFC对话框使用标签页控件

MFC对话框使用标签页控件 2014年6月16日10:08:39 1、使用VS2008创建一
  • seulww
  • seulww
  • 2014-06-16 10:26:43
  • 4580

Linux Kernel Boot Parameters(Linux内核启动参数)

http://redsymbol.net/linux_boot_parameters/ The following is a consolidated list of the kernel para...
  • ariesjzj
  • ariesjzj
  • 2012-02-06 11:11:45
  • 8695

移植linux2.6.38.8内核到Mini2440 ---- 记录

直接使用2.6.38.8的Mini2440的板文件,啥都不用改,直接make mini2440_defconfig,然后make zImage编译内核…… 完成,下载测试……出现问题…… ...
  • AK_winson08
  • AK_winson08
  • 2011-09-07 10:45:35
  • 742

基于FL2440的3.6.6内核移植出现Uncompressing Linux... done, booting the kernel.

一前期准备工作 二修改内核源码 1 修改编译器 2 增加配置项 三错误记录 1 内核启动后串口打印信息停留在Uncompressing Linux done booting the kernel ...
  • flfihpv259
  • flfihpv259
  • 2016-07-16 19:17:36
  • 2328

VS2010/MFC编程入门之三十二(常用控件:标签控件Tab Control 上)

前面两节鸡啄米讲了树形控件Tree Control,本节开始讲解标签控件Tab Control,也可以称为选项卡控件。        标签控件简介        标签控件也比较常见。它可以把多个页...
  • my_lord_
  • my_lord_
  • 2016-08-24 21:13:48
  • 962

转:Labview中引用,属性节点,局…

Labview中引用,属性节点,局部变量之间的区别        在Labview中我们经常会碰到这样几个概念,那就是控件的引用,属性节点以及局部变量,他们之间到底有哪些区别呢?        首...
  • a827415225
  • a827415225
  • 2016-05-21 10:20:17
  • 2285

js节点属性的创建 添加 删除

//--------------------------节点的访问关系--------------------- //节点的访问关系是以属性形式存在 ...
  • gyq04551
  • gyq04551
  • 2016-11-20 17:13:45
  • 3225
收藏助手
不良信息举报
您举报文章:在BlinkScript节点的Kernel Parameters标签页添加各类属性控件
举报原因:
原因补充:

(最多只允许输入30个字)