From a73cada4f51ec9c44f4665e322884ce74ab7a8dc Mon Sep 17 00:00:00 2001 From: Knut Ahlers Date: Wed, 11 Dec 2019 18:38:23 +0100 Subject: [PATCH] Add new blocks Signed-off-by: Knut Ahlers --- block_economy_event.go | 21 +++++++++++++++++++++ block_economy_event_queue.go | 19 +++++++++++++++++++ block_gps_waypoint_storage.go | 20 ++++++++++++++++++++ block_registry.go | 22 ++++++++++++++++++++++ 4 files changed, 82 insertions(+) create mode 100644 block_economy_event.go create mode 100644 block_economy_event_queue.go create mode 100644 block_gps_waypoint_storage.go create mode 100644 block_registry.go diff --git a/block_economy_event.go b/block_economy_event.go new file mode 100644 index 0000000..57ebad5 --- /dev/null +++ b/block_economy_event.go @@ -0,0 +1,21 @@ +package sii + +func init() { + RegisterBlock(&EconomyEvent{}) +} + +type EconomyEvent struct { + Time int64 `sii:"time"` + UnitLink Ptr `sii:"unit_link"` + Param int64 `sii:"param"` + + blockName string +} + +func (EconomyEvent) Class() string { return "economy_event" } + +func (e *EconomyEvent) Init(class, name string) { + e.blockName = name +} + +func (e EconomyEvent) Name() string { return e.blockName } diff --git a/block_economy_event_queue.go b/block_economy_event_queue.go new file mode 100644 index 0000000..0bfabc1 --- /dev/null +++ b/block_economy_event_queue.go @@ -0,0 +1,19 @@ +package sii + +func init() { + RegisterBlock(&EconomyEventQueue{}) +} + +type EconomyEventQueue struct { + Data []Ptr `sii:"data"` + + blockName string +} + +func (EconomyEventQueue) Class() string { return "economy_event_queue" } + +func (e *EconomyEventQueue) Init(class, name string) { + e.blockName = name +} + +func (e EconomyEventQueue) Name() string { return e.blockName } diff --git a/block_gps_waypoint_storage.go b/block_gps_waypoint_storage.go new file mode 100644 index 0000000..36ad9ca --- /dev/null +++ b/block_gps_waypoint_storage.go @@ -0,0 +1,20 @@ +package sii + +func init() { + RegisterBlock(&GPSWaypointStorage{}) +} + +type GPSWaypointStorage struct { + NavNodePosition [3]float32 `sii:"nav_node_position"` + Direction Ptr `sii:"direction"` + + blockName string +} + +func (GPSWaypointStorage) Class() string { return "gps_waypoint_storage" } + +func (g *GPSWaypointStorage) Init(class, name string) { + g.blockName = name +} + +func (g GPSWaypointStorage) Name() string { return g.blockName } diff --git a/block_registry.go b/block_registry.go new file mode 100644 index 0000000..6f3d99f --- /dev/null +++ b/block_registry.go @@ -0,0 +1,22 @@ +package sii + +func init() { + RegisterBlock(&Registry{}) +} + +type Registry struct { + Data []int64 `sii:"data"` + Valid []bool `sii:"valid"` + Keys []int64 `sii:"keys"` + Index []int64 `sii:"index"` + + blockName string +} + +func (Registry) Class() string { return "registry" } + +func (r *Registry) Init(class, name string) { + r.blockName = name +} + +func (r Registry) Name() string { return r.blockName }