BLUEPRINT Developer Zone
Home
Library
Learn
Downloads
Report Bugs
DevZone Site Map
BLUEPRINT Developer Zone
>
Documentation Library
Blueprint Documentation
Blueprint
Getting Started
Frequently Used Terms and Concepts
Parallel Processing Issues
Introduction to CLIP
The Blueprint Programming Model
Connective Logic
Holographic Processing
The Infrastructure Oriented Approach
Introduction to the Blueprint Toolset
Definition Editor
Creating a Complete Blueprint Application
Creating a Blueprint Library Project
Creating Definitions
Creating a New CDL Definition File
Adding a Definition Object
Adding Primitives and Circuit Instances to a Definition
Connecting Objects Within a Definition
Defining a Circuit's Public Interface
Creating the Main Application
Translating Circuitry
Browsing and Inserting User Code
Entering Harness Code
Entering Processing Code
Entering Device Code
Entering Store Records
Entering State and Workspace
Entering GUI code
Reusing Components
Exporting and Importing Definitions
Circuit Arguments
Creating Connection Mappings
Creating Overload Mappings
Accretion Editor
Creating An Autonomous Process
Creating Colonies
Example Projects
Hello World
Creating the Project
Creating Circuitry
Entering Code
Creating a GUI
Build and Test
Finite Difference Time Domain
Creating the Projects
Basic GUI Modifications
Creating Circuitry
Data Structures
Method Code
Workspace Code
Callback Function Code
Final GUI Modifications
Build and Test
Additional Code
Egg Timer
The Santa Claus Problem
The Dining Philosophers Problem
Irregular Parallelism
Matrix Processor
Fractal Generator
Variable Fidelity Torus
The Congestion Charger Example
Towed Array Sonar
NetComm
Programmer's Guide
Understanding The Symbolism
The Language Structure
Fundamental Concepts
Heavy vs. Light-Weight Execution
Data Management and Arbitration
Fundamental Event Operations
Collection and Non-Blocking Execution
Distribution and Managing Data Lifetime
Multiplexing, Overloading and Shared State
A Closer Look at Events
Accessing CLIP from Regular Threads
Writing Portable Devices
Workspace and State
Arrays of Objects
Advanced Concepts
Splitting Compound Collected Events
Demultiplexing Compound Multiplexed Events
Exclusion and Atomic Operations
Routing Events
Reducing and Repeating Events
Competing for a Distributed Event
Generating a Periodic Timer Event
Excluding Objects from an Event Tree
Nodal Objects
Object Summary
Object Attributes
Name
Dimensionality
Presence
Visibility
Reentrancy
Compound Objects
Connections
Connection Summary
Manual Connections
Automatic Connections
Trigger Connections
Reference Connections
Notifications
AST Update Notifications
Connection Attributes
Name
Timeouts
Connection Mappings
Access Modes
Keys and Rules
Connection Labels
Repeat Count
Event Trees
Access Functions
Aborting Events
Aborting Transient Stores
Circuits (Definitions, Instances and References)
Prototyping
Container Definitions
Conduits, T-Bars and Labels
Sinking Events
Avoiding Typical Problems
Avoiding Races
Avoiding Deadly Embraces
Multiple Store Updates
Avoiding Log Jams
User Code
Naming and Referencing
Initialization Code
Harness Code
Processing Code
Exit Code
Macro Definitions
User Include Files
Interfacing a Blueprint Library to a GUI
Setting Attributes at Runtime
Accessing Parent Objects
Circuit Locks
Data Objects
Data Components
Store Data Objects
State and Workspace Objects
Common Programming Patterns
Inheritance
Processing Pipelines
Looping
Switching
Branching
The Variable Output Problem
Calling Sub-Circuits
Ordering Execution
Stream Ordering
Service Brokerage
Managing a Diagnostic Service
GUI Techniques
Aperiodic Device Input
Reducing Scheduling Latency with Sink Objects
Aperiodic Processing Chains
Creating and Using Adaptors
Built In Test
Basic Communication Patterns
Programming Distributed Applications
Accreting Circuits to Processes
Colonies
Circuit Accretion
The Main Thread
Structure
Initialization
Attributes
Distribution Schemes
Method Pinning and Floating
Float-Point and End-Point Data
Job Overlapping
Definitive Objects
Data-Parallel Farms
Heart Beats
Runtime Services
Diagnostics
Scheduling
Process Management
Memory Management
Dynamic Memory Allocation
Overloading New and Delete
The Standard Template library
Red Zones
Colony Management
System Calls
Advanced Topics
Shared Writes to Transient Stores
Reentrant Exclusion
Configuration Files
Connection Signatures
Basic Signatures
Advanced Signatures
General Guidelines
Design Issues
Portability
Performance Issues
Component Re-use
Migrating to Blueprint
Hints Control
Hints Deadlocks
Hints Performance
Hints Maintenance
Hints Portability
Hints Naming Conventions
Hints Design Logic
Realizing Concurrency
Programmer's Reference
Nodal Objects
Stores
Arbitrated Stores
Transient Stores
Store Keys and Rules
Semaphores
Counting Semaphores
Logical Semaphores
Event Propagators
Distributors
Competers
Collectors
Splitters
Multiplexors
Demultiplexors
Reducers
Active Objects
Methods
Call backs
Threads
Circuits
Circuit Definitions
Prototypes
Container Definitions
Circuit Scope Locks
Executable Objects
Devices
Interface Objects
The Timer Object
Connection Objects
Manual Connections
Automatic Connections
Trigger Connections
Stores
Arbitrated Stores
OpenWrite
OpenRead
OpenUpdate
Close
Transient Stores
OpenWrite
OpenRead
Close
AbortWrite
AbortReadToBack
AbortReadToFront
Semaphores
Counting Semaphores
Signal
Request
Logical Semaphores
Signal
Request
Event Propogators
Collectors
WaitEvent
Close
Competers
WaitEvent
Close
Distributors
WaitEvent
Close
Demultiplexors
WaitEvent
Close
Multiplexors
WaitEvent
Close
Reducers
WaitEvent
Close
Splitters
WaitEvent
Close
Executable Objects
Devices
Interface Objects
The Timer Object
Active Timers
Services
Diagnostics
Scheduling
Process Management
Memory Management
ClpHeapAllocTs
ClpHeapFreeTs
ClpHeapOverhead
ClpMallocTs
ClpFreeTs
ClpReallocTs
ClpCheckAlloc
ClpBlockSize
ClpHeapStats
ClpSetOversize
ClpEnableRedZones
ClpDisableRedZones
Colony Management
Runtime System Calls
ClpAmAutonomous
ClpAmSlave
ClpAmSubMaster
ClpAmRootMaster
ClpAmRegistrar
ClpThisSlaveId
ClpThisMasterId
ClpNumProcessors
ClpDefaultSeg
ClpMemAllocated
ClpMaxFreeBlockSize
ClpConcurrency
ClpMaxConcurrency
ClpExit
ClpRetireThisProcess
ClpSleep
ClpDiag
Glossary of Terms
Bibliography and External Links
(C) Copyright 2009 Connective Logic Systems Ltd.