zoukankan      html  css  js  c++  java
  • 基于C#的PISDK研究(理论)

    本篇文章主要对PISDK体系结构以及重点类进行阐述。

    当我们决定使用PISDK时,可能会使用到下面的类库:

    clip_image002

    在上表中,PISDK.dll为核心类,大部分主要功能都在该类中。PISDKCommon.dl和PITimeServer.dll为通用类和PI自定义的时间类。我们利用上述3个类库就可以完成访问PI服务的主要功能;最后两个类库提供了一些PI的图形界面和控件对象,这里主要介绍PISDK类。

    接下来,我们看一下PISDK的部分体系结构图:

    clip_image003

    上图引用自SDK手册,从图中我们可以看出在顶级PISDK类下是Servers类,在Servers类下又分为3个类,这3个类中最重要的是Server类,想要使用SDK中的功能必须先要连接到PI服务器,取得一个Server对象;我们还能从该图中发现,部分类都是从集合到对象的结构,例如PIPoints->PIPoint,这也是PISDK的有规律可循的对象结构。

    下面介绍一下重点的类。

    1. PIPoints

    该类就是存放tag标签的类,当然它是集合,要想找到具体的标签按照规律肯定是要得到PIPoint了。当然它只存放标签名,不存放标签值,要想得到值的话也可以调用该类中的方法。

    2. PointList

    该类也是存放tag标签的类,虽然在上图中没有标出,但是同样重要。那既然都是存放标签它与PIPoints有什么区别呢?该类中有方法可以批量处理tag标签,而PIPoints没有这个功能,PIPoints只能利用循环机制得到PIPoint,再由PIPoint中的方法处理。

    3. PIValues

    该类在上图中也没有出现,但是也同样重要。该类想必部分读者应该猜到了,它就是存放tag标签值的类。由存放tag的类调用方法就得到了tag的值,存放在该类中,当然它也是集合类了。

    4. 其他

    其实上图中的每一个类都有各自的功能,并不能说它们没用,只能说可能我们还不会用或者用的概率比较低。比如说上图中的PointAttributes类,它就存放了相关tag的所有属性值;StateSets类,设置存放值的类型;PIGroups类,为存放的值分组等等。

    在下一篇中,会使用具体的代码介绍从PI取数的过程。

  • 相关阅读:
    后缀自动机/回文自动机/AC自动机/序列自动机----各种自动机(自冻鸡) 题目泛做
    BZOJ 1001 狼抓兔子 (网络流最小割/平面图的对偶图的最短路)
    FFT与多项式、生成函数题目泛做
    BZOJ 2243 SDOI 2011染色
    莫队/分块 题目泛做
    Cogs 12 运输问题2 (有上下界网络流)
    可并堆/左偏树 题目泛做
    TC快速搜索在win10下不可用
    (转)Tomcat调优
    (转)Tomcat文件详解
  • 原文地址:https://www.cnblogs.com/Johnny_Z/p/3234822.html
Copyright © 2011-2022 走看看