component

package
v0.0.7 Latest Latest
Warning

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

Go to latest
Published: Jun 17, 2021 License: MIT Imports: 3 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BaseComponent

type BaseComponent struct {
	// contains filtered or unexported fields
}

BaseComponent implements the Component interface{}

func NewBaseComponent

func NewBaseComponent(name string) *BaseComponent

NewBaseComponent creates a BaseComponent

func (*BaseComponent) Init

func (com *BaseComponent) Init() error

Init implements Component Init method

func (*BaseComponent) Logger

func (com *BaseComponent) Logger() log.Logger

Logger implements Component Logger method

func (*BaseComponent) Name

func (com *BaseComponent) Name() string

Name implements Component Name method

func (*BaseComponent) Shutdown

func (com *BaseComponent) Shutdown()

Shutdown implements Component Shutdown method

func (*BaseComponent) Start

func (com *BaseComponent) Start()

Start implements Component Start method

func (*BaseComponent) Update

func (com *BaseComponent) Update(now time.Time, dt time.Duration)

Update implements Component Update method

type Component

type Component interface {
	// Name returns name of component
	Name() string
	// Init initializes the component
	Init() error
	// Start starts the component
	Start()
	// Shutdown shutdwons the component
	Shutdown()
	// Update updates the component per frame
	Update(time.Time, time.Duration)
	// Logger returns a logger interface
	Logger() log.Logger
}

Component represents a generic logic component

type Manager

type Manager struct {
	// contains filtered or unexported fields
}

Manager used to manages a group of components

func NewManager

func NewManager() *Manager

NewManager creates a Manager

func (*Manager) Add

func (m *Manager) Add(com Component) Component

Add adds a component to the manager

func (*Manager) Find

func (m *Manager) Find(t reflect.Type) Component

Find finds a component from the manager by type

func (*Manager) Get

func (m *Manager) Get(i int) Component

Get returns ith component

func (*Manager) Init

func (m *Manager) Init() error

Init initializes all components

func (*Manager) Len

func (m *Manager) Len() int

Len returns the number of components

func (*Manager) Shutdown

func (m *Manager) Shutdown()

Shutdown shutdowns all components in reverse order

func (*Manager) Start

func (m *Manager) Start()

Start starts all components

func (*Manager) Update

func (m *Manager) Update(now time.Time, dt time.Duration)

Update updates all components

Jump to

Keyboard shortcuts

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