国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

在LabVIEW中創(chuàng)建Actor Framework的抽象消息及接口

倩倩 ? 來源:華穗科技 ? 作者:華穗科技 ? 2022-09-23 10:51 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

ActorFrameWork系列教程來到了第二期,大家還記得什么是對(duì)象什么是類嗎?還沒有學(xué)習(xí)過第一期或者忘記了的同學(xué)們,請(qǐng)看往期教程回顧學(xué)習(xí)一下吧!

本文教程:

LabVIEW中創(chuàng)建Actor Framework的抽象消息及接口

一、為什么要用到抽象消息和接口?

一般情況下,我們?cè)趩?dòng)界面使用“啟動(dòng)根操作者”啟動(dòng)根操作者,然后在根操作者和其他操作者的適當(dāng)位置用“啟動(dòng)嵌套操作者”來啟動(dòng)其他操作者。就好比一個(gè)用戶登錄程序,其根操作者即為Controller,用以控制整體程序的邏輯,它的嵌套操作者可分為:用戶操作界面的VIEW;登錄判斷模塊、用戶管理模塊等Model。這就是所謂的MVC框架,MVC框架的更多內(nèi)容在后續(xù)給大家詳細(xì)講解。

306390fe-3ae5-11ed-9e49-dac502259ad0.png

上一期我們學(xué)會(huì)了在同一個(gè)操作者中進(jìn)行消息的傳輸和接收,但在嵌套操作者之間是怎么互相傳消息的呢?對(duì)于一個(gè)嵌套于跟操作者之下的嵌套操作者,要如何傳消息給根操作者呢?用俗話說,就是小兵要怎么一層層地把前線戰(zhàn)報(bào)傳給將軍呢? 接下來本文以NestActor表示嵌套操作者,是被調(diào)用的關(guān)系。以Root Actor為根操作者,是調(diào)用的關(guān)系。 由于面向?qū)ο笮枰档?a href="http://www.3532n.com/tags/耦合/" target="_blank">耦合性,那么基于類的操作者也需要考慮如何降低耦合性。當(dāng)Nest Actor給Root Actor發(fā)送消息時(shí),需要調(diào)用Root Actor的消息類的Send ***.vi,這就導(dǎo)致了Nest Actor依賴于Root Actor。為了解除這種依賴關(guān)系,我們需要對(duì)Root Actor和NestActor解耦。這時(shí)候我們就需要用到抽象消息或者接口來進(jìn)行Nest Actor對(duì)Root Actor的消息傳輸。

二、 如何創(chuàng)建抽象消息前面我們得知了嵌套操作者傳送消息的方式是抽象消息,那么接下來,小編將手把手教你如何在LavVIEW中創(chuàng)建抽象消息。

1. 創(chuàng)建Actor

創(chuàng)建兩個(gè)Actor,分別命名為Root Actor和Nest Actor。

2. 創(chuàng)建抽象消息

在項(xiàng)目資源管理器中右鍵Nest Actor.lvclass → ActorFramework → Create Abstract Message for Caller,輸入消息名稱為New Data,放置一個(gè)字符串控件,命名為String Data,點(diǎn)擊Create Message。這時(shí)Nest Actor.lvclass的屬性中將新增一個(gè)New Data Msg類,用來指定由哪個(gè)消息來執(zhí)行。為這個(gè)New Data Msg類創(chuàng)建寫入的方法。

30c0a55a-3ae5-11ed-9e49-dac502259ad0.png

312c5368-3ae5-11ed-9e49-dac502259ad0.png

3. 為Root Actor創(chuàng)建一個(gè)靜態(tài)方法

為Root Actor創(chuàng)建一個(gè)靜態(tài)方法作為消息執(zhí)行方法,命名為Update Data.vi。并在前面板放置字符串控件,命名為String Data,并配置接線端。在程序框圖中將String Data連接到單按鈕對(duì)話框。

3166eb4a-3ae5-11ed-9e49-dac502259ad0.png

3199b390-3ae5-11ed-9e49-dac502259ad0.png

4. 繼承抽象消息

在項(xiàng)目資源管理器中右鍵Update Data.vi→ Actor Framework→Create Child of Abstract Message,選擇Nest Actor的New Data Msg.lvclassx消息類。

31df1606-3ae5-11ed-9e49-dac502259ad0.png

320c8b22-3ae5-11ed-9e49-dac502259ad0.png

32476c88-3ae5-11ed-9e49-dac502259ad0.png

5. 重寫Root的Actor Core

為Root Actor重寫Actor Core.vi。在Actor Core.vi中將Root Actor的Update Data Msg.lvclass寫入Nest Actor.lvclass的屬性中,并通過Launch Nested Actor.vi啟用為Root Actor的嵌套操作者。

3298df5a-3ae5-11ed-9e49-dac502259ad0.png

32c63234-3ae5-11ed-9e49-dac502259ad0.png

6. 發(fā)送抽象消息

為Nest Actor創(chuàng)建一個(gè)靜態(tài)方法Write New String Data.vi發(fā)送String Data,如下圖所示,將Hello以New Data類型的抽象消息傳送給調(diào)用方。

32e35b2a-3ae5-11ed-9e49-dac502259ad0.png

7.重寫Nest Actor的Actor Core

重寫Nest Actor的 Actor Core.vi調(diào)用Write New String Data.vi。

33006972-3ae5-11ed-9e49-dac502259ad0.png

8. Launch根操作者

創(chuàng)建一個(gè)Launch.vi啟用Root Actor。

33173f44-3ae5-11ed-9e49-dac502259ad0.png

啟動(dòng)Launch后,可以看見彈窗“Hello”。此時(shí)一個(gè)包含著信息“Hello”的抽象消息就從Nest Actor傳送給了它的調(diào)用方Root Actor。

33382b5a-3ae5-11ed-9e49-dac502259ad0.png

三、如何創(chuàng)建接口

LabVIEW2020以上版本支持利用接口在嵌套操作者之間傳送消息,接口的使用方法比抽象消息要簡(jiǎn)單得多。接下來LabVIEW版本足夠的小伙伴們,我們一起來嘗試創(chuàng)建接口吧!

1. 創(chuàng)建Actor

創(chuàng)建兩個(gè)Actor,分別命名為Root Actor和Nest Actor。

2. 創(chuàng)建接口

在Nest Actor創(chuàng)建一個(gè)接口,命名為Nest Msg Interface.lvclass。

336c5060-3ae5-11ed-9e49-dac502259ad0.png

3. 為接口創(chuàng)建動(dòng)態(tài)方法

為Nest Msg Interface.lvclass創(chuàng)建一個(gè)動(dòng)態(tài)方法New Data.vi,前面板添加字符串控件String Data,并為該方法創(chuàng)建一個(gè)消息。

339f84f8-3ae5-11ed-9e49-dac502259ad0.png

4.繼承接口

設(shè)置Root Actor.lvclass繼承接口Nest Msg Interface.lvclass,并重寫New Data.vi。

33ca1646-3ae5-11ed-9e49-dac502259ad0.png

5. 重寫接口方法

Root Actor.lvclass重寫Nest Msg Interface.lvclass的New Data.vi方法。

33f09514-3ae5-11ed-9e49-dac502259ad0.png

6. 重寫Root Actor的Actor Core

為Root Actor重寫Actor Core.vi。在Actor Core.vi中通過Launch Nested Actor.vi啟用Nest Actor為Root Actor的嵌套操作者。

7. 重寫NestActor的Actor Core

為Nest Actor創(chuàng)建一個(gè)靜態(tài)方法Write New String Data.vi發(fā)送String Data,并重寫 Actor Core.vi調(diào)用Write New String Data.vi。

34458808-3ae5-11ed-9e49-dac502259ad0.png

8.Launch 根操作者

創(chuàng)建一個(gè)Launch.vi啟用Root Actor。

3466d148-3ae5-11ed-9e49-dac502259ad0.png

我們可以看到Hello的彈窗也出現(xiàn)了,通過接口也可以實(shí)現(xiàn)嵌套操作者向調(diào)用方傳送消息。

怎么樣,接口的使用方法是不是比抽象消息方便呢?而且改變接口的方法只需要修改Root Actor的重寫方法就可以了,而不是像抽象消息那樣需要把消息刪除后重新創(chuàng)建消息。

以上就是如何在LabVIEW中為ActorFramework創(chuàng)建抽象消息和接口的方法,如果想要進(jìn)一步了解抽象的類和對(duì)象是如何通過ActorFramework來實(shí)現(xiàn)的話,敬請(qǐng)期待接下來關(guān)于ActorFramework的一系列技術(shù)分享。

審核編輯 :李倩

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 接口
    +關(guān)注

    關(guān)注

    33

    文章

    9520

    瀏覽量

    157027
  • LabVIEW
    +關(guān)注

    關(guān)注

    2017

    文章

    3688

    瀏覽量

    347110
  • 華穗科技
    +關(guān)注

    關(guān)注

    2

    文章

    15

    瀏覽量

    260

原文標(biāo)題:教程 | ActorFramework的抽象消息和接口

文章出處:【微信號(hào):華穗科技,微信公眾號(hào):華穗科技】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    Labview接口(interface)的工作過程

    labview的組織工具“庫(kù)” 實(shí)現(xiàn)過程: 步驟一: 1、重寫UI actoractor core 創(chuàng)建用戶事件: 事件1:當(dāng)顯示控
    發(fā)表于 02-03 11:07

    如何在LabVIEW環(huán)境通過NISoftMotion驅(qū)動(dòng)配置與運(yùn)用NI9512

    NI 9512是C系列步進(jìn)電機(jī)驅(qū)動(dòng)接口模塊,采用NI-RIO、NI-SoftMotion驅(qū)動(dòng),可以生成精確的步進(jìn)脈沖和方向信號(hào)。通過硬件集成,保證步進(jìn)電機(jī)成本優(yōu)勢(shì)的同時(shí),大幅提升了其運(yùn)動(dòng)性能
    的頭像 發(fā)表于 01-30 17:34 ?2018次閱讀
    如何在<b class='flag-5'>LabVIEW</b>環(huán)境<b class='flag-5'>中</b>通過NISoftMotion驅(qū)動(dòng)配置與運(yùn)用NI9512

    求助:錯(cuò)誤1003發(fā)生于actor framework;導(dǎo)出EXE后,無法正常運(yùn)行。。。

    程序?qū)С鰹镋XE后,調(diào)試監(jiān)控了一下,類進(jìn)入launch root actor后報(bào)錯(cuò),錯(cuò)誤如圖,求大神指點(diǎn)!
    發(fā)表于 12-06 17:02

    激光焊接技術(shù)焊接腦機(jī)接口工藝的應(yīng)用

    激光焊接技術(shù)腦機(jī)接口制造工藝扮演著關(guān)鍵角色。腦機(jī)接口作為一種連接大腦與外部設(shè)備的先進(jìn)技術(shù),其核心部件通常包括微型電極、傳感器和植入式裝置。這些元件對(duì)焊接工藝的要求極高,需要實(shí)現(xiàn)精密
    的頭像 發(fā)表于 11-20 16:58 ?685次閱讀
    激光焊接技術(shù)<b class='flag-5'>在</b>焊接腦機(jī)<b class='flag-5'>接口</b>工藝<b class='flag-5'>中</b>的應(yīng)用

    深度剖析Nios II 處理器的硬件抽象

    硬件抽象層(Hardware Abstraction Layer, HAL)是一個(gè)輕量級(jí)嵌入式運(yùn)行時(shí)環(huán)境,它為用戶應(yīng)用程序和底層硬件提供了一個(gè)簡(jiǎn)單的設(shè)備驅(qū)動(dòng)程序接口。HAL應(yīng)用程序接口(API
    的頭像 發(fā)表于 10-31 15:25 ?5001次閱讀
    深度剖析Nios II 處理器的硬件<b class='flag-5'>抽象</b>層

    CANdelaStudio如何配置OBD服務(wù)?

    創(chuàng)建01/02服務(wù)及PID1、首先在CDDT文件添加對(duì)應(yīng)的DiagnosticClass,即可激活對(duì)應(yīng)的OBD診斷服務(wù);2、舉例:CDD創(chuàng)建
    的頭像 發(fā)表于 10-31 11:19 ?1521次閱讀
    <b class='flag-5'>在</b>CANdelaStudio<b class='flag-5'>中</b>如何配置OBD服務(wù)?

    Labview技巧合集】16 labview嵌入python做的界面

    labview嵌入python做的GUI界面 無所不能的labview
    發(fā)表于 09-22 05:30

    labview的AF架構(gòu)的VI文件

    C:\\\\Program Files (x86)\\\\National Instruments\\\\LabVIEW 2024\\\\resource\\\\Framework
    發(fā)表于 08-18 13:10

    打開lvpro缺少vi文件,尋求VIPM來源!!!!

    1.resources:Framework\\\\Providers\\\\AFQ_Helper\\\\ActorRegister\\\\Methods\\\\Unregister?Actor
    發(fā)表于 07-17 13:43

    LabVIEW的詳細(xì)簡(jiǎn)介和應(yīng)用(文末免費(fèi)分享LabVIEW相關(guān)資料合集)

    LabVIEW是一種程序開發(fā)環(huán)境,由美國(guó)國(guó)家儀器(NI)公司研制開發(fā),類似于C和BASIC開發(fā)環(huán)境,但是LabVIEW與其他計(jì)算機(jī)語言的顯著區(qū)別是:其他計(jì)算機(jī)語言都是采用基于文本的語言產(chǎn)生代碼,而
    的頭像 發(fā)表于 05-22 11:43 ?2533次閱讀
    <b class='flag-5'>LabVIEW</b>的詳細(xì)簡(jiǎn)介和應(yīng)用(文末免費(fèi)分享<b class='flag-5'>LabVIEW</b>相關(guān)資料合集)

    有可能在 FX3 GPIF2 創(chuàng)建兩個(gè)獨(dú)立的狀態(tài)機(jī)嗎?

    我想,如果我想通過 FX3 GPIF2 創(chuàng)建兩個(gè)獨(dú)立的傳輸流接口,我需要在 GPIF2 設(shè)計(jì)器創(chuàng)建兩個(gè)獨(dú)立的狀態(tài)機(jī),我是否有可能在 GPIF2 設(shè)計(jì)器
    發(fā)表于 05-20 06:14

    [Actor] 通過actor創(chuàng)建控制中心與數(shù)據(jù)采集工作站來看操作者架構(gòu)

    。///) 2)創(chuàng)建方法后,利用actor框架自帶的“創(chuàng)建消息”功能,右擊方法VI,選擇創(chuàng)建消息,labview會(huì)自動(dòng)生成一個(gè)針對(duì)該方法的消
    發(fā)表于 05-14 18:44

    [Actor]程序框圖編程時(shí),如何操作消息和方法對(duì)應(yīng)的VI

    actor應(yīng)用的關(guān)鍵: 當(dāng)在程序框圖編程時(shí),核心是針對(duì)“消息”vi 進(jìn)行操作,并不操作消息對(duì)應(yīng)的方法vi(具體要實(shí)現(xiàn)的功能)。 調(diào)用的消息vi時(shí),后臺(tái)自動(dòng)調(diào)用對(duì)應(yīng)方法vi。 相當(dāng)于隊(duì)列狀態(tài)機(jī),隊(duì)列元素的進(jìn)、出操作 與 該元素
    發(fā)表于 05-13 18:10

    為什么SDK 1.3.5創(chuàng)建的配置文件是SDK 1.3.4創(chuàng)建的 打不開?

    為什么 SDK 1.3.5 創(chuàng)建的配置文件是 SDK 1.3.4 創(chuàng)建的 打不開?
    發(fā)表于 05-13 07:22

    Framework召開第二代產(chǎn)品發(fā)布會(huì),新品搶先看!

    2025年2月25日,Framework美國(guó)舊金山召開了盛大的第二代產(chǎn)品發(fā)布會(huì)。Framework發(fā)布了有史以來最大規(guī)模的一系列新品,包括Framework臺(tái)式機(jī)
    的頭像 發(fā)表于 03-19 17:55 ?1502次閱讀
    <b class='flag-5'>Framework</b>召開第二代產(chǎn)品發(fā)布會(huì),新品搶先看!