1. 2 Introduction to the Actor Framework Stephen R. Mercer Senior Software Engineer LabVIEW R&D...
-
Upload
lucas-woods -
Category
Documents
-
view
219 -
download
0
Transcript of 1. 2 Introduction to the Actor Framework Stephen R. Mercer Senior Software Engineer LabVIEW R&D...
1
2
Introduction to the Actor Framework
Stephen R. MercerSenior Software EngineerLabVIEW R&D
Allen C. SmithSenior Systems EngineerSystems Engineering
3
Agenda
• What Actor Framework Replaces• How AF Minimizes Code Replication• How AF Standardizes Module Communication• Getting started with Actor Framework• Where to Learn More
4
Queue-Driven State Machine
5
Larger Systems
6
Three Sources of Code Replication
1. Override the handling of one message2. Extend the set of handled messages3. Decorate the machine with additional behavior
Override
Extend
Decorate
7
Source 1: Override
Speed
Direction
ToggleOn
Speed
Direction
Toggle/Notify
8
Cluster and Node...
9
… become Class and Method
10
… become Class and Method
11
Source 2: Extend
Speed
Direction
Speed
E-Stop
ToggleOn
ToggleOn
Direction
12
Message and Case Structure…
13
… become Class and Dynamic Dispatch
15
Source 3: Decorate
16
New Class: Actor.lvclass
17
Using the Parent
18
Fan UI.lvclass:Actor Core.viUsing the Child
19
Standardizing Communication:Launch Actor.vi
21
Demonstration
• Making an Actor…• Making a Message…
24
For Best Results
• Announcement messages, not request messages• No message should get or set the entire actor• Embrace peer-to-peer messaging• Actors may register as listeners for other Actors• Synchronous messages can be created at your risk
Real-world applications demonstrate scalability
25
Watch Tomorrow’s Keynote…
When you see this, you’re seeing the Actor Framework in action!
32
Recap• Extensible along three axes without replication:
Override Extend Decorate
• Messages have strict type and direction• Standard for highly scalable communications• Reduced the risk associated with by-reference
architectures in a dataflow environment
33
Download the Actor Framework
• QUESTIONS?
34
Other Object-Oriented Sessions• Tuesday
2:15 Intro to OOP 3:30 Trends in LabVIEW OOP 4:45 Hands-On: Intro to OO Design Patterns in LV
• Wednesday 1:00 Hands-On: Intro to OO Design Patterns in LV
• Thursday 1:00 Building Plug-in Architectures and HALs
35
Alliance Partner Network 20th Anniversary Celebration
Join us for an evening of drinks, music, networking, and a celebratory toast by Dr. James Truchard at
5:30 p.m. in the exhibition hall.