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
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

-- 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