Web Analytics Made Easy - Statcounter
Skip to content

Fundamentals#

This page is the concept map for the SAMSON Developer Guide. Use it when you need to understand how the SDK is organized before choosing a tutorial or when a tutorial sends you here for background.

If you are new to the SDK, start with the pages that define extension roles and the data graph. If you are already implementing an extension, jump directly to the runtime mechanisms that match the feature you are building.

Extension roles#

  • Apps: command-style extensions, tools, and panels exposed to users.
  • Controllers: nodes that control or steer other nodes in the data graph.
  • Editors: viewport-driven tools that react to mouse and keyboard input.
  • Exporters: classes that write SAMSON data to external formats.
  • Importers: classes that read external data into SAMSON.

Data and visualization#

  • Animations: timeline-driven changes inside documents and presentations.
  • Color schemes: reusable coloring logic for nodes and visual models.
  • Materials: visual appearance information applied to nodes and renderables.
  • Node Specification Language: concise ways to describe node sets.
  • Rendering: how extensions submit geometry and rendering behavior.
  • Selectors: reusable node selection logic that can be plugged into workflows.

Runtime mechanics#

Infrastructure and utilities#

  • Functors: reusable predicates and callable helpers used across the SDK.
  • Identifiers: UUIDs, class descriptors, and stable identities.
  • Logging: developer-facing logging and diagnostics.
  • Units: strongly typed physical quantities and conversions.
  • Versioning: version numbers, compatibility, and upgrade-related checks.

Suggested reading paths#