effects

package
v0.0.0-...-6312dd6 Latest Latest
Warning

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

Go to latest
Published: Aug 3, 2022 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

View Source
const TypeActionEffect = "ActionEffect"
View Source
const TypeEffect = "Effect"
View Source
const TypeMultiEffect = "MultiEffect"
View Source
const TypeNotificationEffect = "NotificationEffect"
View Source
const TypeNotifierOutletEffect = "NotifierOutletEffect"
View Source
const TypePulseEffect = "PulseEffect"
View Source
const TypeSetEffect = "SetEffect"

Variables

This section is empty.

Functions

This section is empty.

Types

type Description

type Description = any

type Effect

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

func NewEffect

func NewEffect(des EffectDescription) *Effect

func (*Effect) GetLabel

func (e *Effect) GetLabel() string

func (*Effect) GetType

func (e *Effect) GetType() string

func (*Effect) SetState

func (e *Effect) SetState(s state.State)

func (*Effect) ToDescription

func (e *Effect) ToDescription() EffectDescription

type EffectDescription

type EffectDescription struct {
	Type  string `json:"type"`
	Label string `json:"label,omitempty"`
}

type Entity

type Entity interface {
	SetState(state2 state.State)
	GetType() string
	GetLabel() string
}

func FromDescription

func FromDescription(a any, container container.Container) Entity

type MultiEffect

type MultiEffect struct {
	*Effect
	// contains filtered or unexported fields
}

func NewMultiEffect

func NewMultiEffect(desc MultiEffectDescription, container container.Container) *MultiEffect

func (*MultiEffect) MarshalJSON

func (e *MultiEffect) MarshalJSON() ([]byte, error)

func (*MultiEffect) SetState

func (e *MultiEffect) SetState(state state.State)

func (*MultiEffect) ToDescription

func (e *MultiEffect) ToDescription() MultiEffectDescription

type MultiEffectDescription

type MultiEffectDescription struct {
	Effects []Description `json:"effects"`
	EffectDescription
}

type PropertyEffect

type PropertyEffect struct {
	*Effect
	// contains filtered or unexported fields
}

func NewPropertyEffect

func NewPropertyEffect(des PropertyEffectDescription, container container.Container) *PropertyEffect

func (*PropertyEffect) MarshalJSON

func (e *PropertyEffect) MarshalJSON() ([]byte, error)

func (*PropertyEffect) ToDescription

func (e *PropertyEffect) ToDescription() PropertyEffectDescription

type PropertyEffectDescription

type PropertyEffectDescription struct {
	EffectDescription
	Property property.Description `json:"property"`
}

type PulseEffect

type PulseEffect struct {
	*PropertyEffect
	// contains filtered or unexported fields
}

func NewPulseEffect

func NewPulseEffect(des PulseEffectDescription, container container.Container) *PulseEffect

func (*PulseEffect) MarshalJSON

func (s *PulseEffect) MarshalJSON() ([]byte, error)

func (*PulseEffect) SetState

func (s *PulseEffect) SetState(state state.State)

func (*PulseEffect) ToDescription

func (s *PulseEffect) ToDescription() PulseEffectDescription

type PulseEffectDescription

type PulseEffectDescription struct {
	PropertyEffectDescription
	Value any `json:"value"`
}

type SetEffect

type SetEffect struct {
	*PropertyEffect
	// contains filtered or unexported fields
}

func NewSetEffect

func NewSetEffect(des SetEffectDescription, container container.Container) *SetEffect

func (*SetEffect) MarshalJSON

func (s *SetEffect) MarshalJSON() ([]byte, error)

func (*SetEffect) SetState

func (s *SetEffect) SetState(state state.State)

func (*SetEffect) ToDescription

func (s *SetEffect) ToDescription() SetEffectDescription

type SetEffectDescription

type SetEffectDescription struct {
	PropertyEffectDescription
	Value any `json:"value"`
}

Jump to

Keyboard shortcuts

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