plugin

package
v0.7.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 6, 2025 License: GPL-3.0 Imports: 3 Imported by: 0

README

pkg/plugin

This package provides functionality for loading and managing plugins.

Responsibility

  • Load plugins into the launchrail application.
  • Manage the lifecycle of plugins.

Scope

  • Support different plugin types.
  • Provide a secure and isolated environment for plugins.

Gotchas

  • Security vulnerabilities in plugins.
  • Compatibility issues between plugins and the launchrail application.

Test Suite Overview

The test suite includes unit tests for the core functionality of the package, including:

  • Loading plugins.
  • Managing the lifecycle of plugins.
  • Ensuring plugin security.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type SimulationPlugin

type SimulationPlugin interface {
	// Initialize is called when the plugin is loaded
	Initialize(log logf.Logger, cfg *config.Config) error

	// Name returns the unique identifier of the plugin
	Name() string

	// Version returns the plugin version
	Version() string

	// BeforeSimStep is called before each simulation step
	BeforeSimStep(state *states.PhysicsState) error

	// AfterSimStep is called after each simulation step
	AfterSimStep(state *states.PhysicsState) error

	// Cleanup is called when the simulation ends
	Cleanup() error
}

SimulationPlugin defines the interface that all plugins must implement

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL