Skip to main content
U.S. flag

An official website of the United States government

Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Secure .gov websites use HTTPS
A lock ( ) or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

NIST Data Flow System II - User's Guide - Draft Version - Table of Contents

Table of Contents

1. Introduction

The NIST Smart Space Project
About this document
Contact information

2. Concepts

NIST Data Flow System II Introduction
Example of a multimodal application
Main components of the framework
Advantages of using a data flow
Optimized data transport
Language binding
-- Java
-- Octave
Limitations
Complex System simulations

3. Overview of supported hardware and signal processing libraries

Supported architectures
Supported operating systems
Supported sensor hardware
Supported flows
Supported libraries

4. Installation and requirements

Dependencies
Installation
-- Linux/Unix or Mac OS X
-- Windows XP
Checking your firewall
Testing your installation
Web Control Center Installation

5. How to create applications

The Smartflow class
-- Connecting to the NDFS-II network
-- Setting up an exit strategy for your client node
The Flow class
-- Creating a flow
-- Using a flow in your code
-- Stopping a flow
-- Checking the filling level of the queue
-- Avoiding blocking if no data is available
-- Pausing/Restarting a flow
-- Taking advantage of the Flows' policies
-- Handling files
The Buffer class
-- The memcpy approach
-- The pushData/popData approach
-- Data Vs. Metadata
-- Combining an iterator with data and metadata
-- Creating your own metadata type

6. How to manage applications

Starting the data flow server
Starting client nodes
-- Overriding the connection ID of a flow
-- Overriding the client name
-- Additional client parameters
The Log System
-- Adding redirections to the log output
-- Changing the log severity
-- Enabling the Log redirection from threads
-- Using the log macro in your client node

7. Tools

The Control Center
-- Creating a client list
-- Creating an application map
-- Starting an application map
-- Using the discover application capability of the Control Center
-- Reading the map
-- Control Center's Hello World
The Flow Generator
The Client Descriptor
The Web Control Center

8. FAQ

Created March 2, 2016, Updated June 2, 2021