add some omp data to serde
This commit is contained in:
parent
57bb9ba17c
commit
83debb7459
172
examples/bpc_sliced.omp
Normal file
172
examples/bpc_sliced.omp
Normal file
@ -0,0 +1,172 @@
|
|||||||
|
(
|
||||||
|
setf *om-current-persistent*
|
||||||
|
(
|
||||||
|
om-load-patch1 "Patch 2"
|
||||||
|
(
|
||||||
|
quote
|
||||||
|
(
|
||||||
|
(
|
||||||
|
let
|
||||||
|
(
|
||||||
|
(
|
||||||
|
box
|
||||||
|
(
|
||||||
|
om-load-editor-box1 "BPC"
|
||||||
|
(
|
||||||
|
quote bpc
|
||||||
|
)
|
||||||
|
(
|
||||||
|
quote
|
||||||
|
(
|
||||||
|
(
|
||||||
|
om-load-inputfun
|
||||||
|
(
|
||||||
|
quote input-funbox
|
||||||
|
)
|
||||||
|
"object" "self" nil
|
||||||
|
)
|
||||||
|
(
|
||||||
|
om-load-inputfun
|
||||||
|
(
|
||||||
|
quote input-funbox
|
||||||
|
)
|
||||||
|
"X coordinates (list)" "x-points"
|
||||||
|
(
|
||||||
|
list 0 100
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
om-load-inputfun
|
||||||
|
(
|
||||||
|
quote input-funbox
|
||||||
|
)
|
||||||
|
"Y coordinates (list)" "y-points"
|
||||||
|
(
|
||||||
|
list 0 100
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
om-load-inputfun
|
||||||
|
(
|
||||||
|
quote input-funbox
|
||||||
|
)
|
||||||
|
"precision
|
||||||
|
(
|
||||||
|
integer
|
||||||
|
) [0 - 10]" "decimals" 0
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
om-make-point 151 96
|
||||||
|
)
|
||||||
|
(
|
||||||
|
om-make-point 40 60
|
||||||
|
)
|
||||||
|
(
|
||||||
|
let
|
||||||
|
(
|
||||||
|
(
|
||||||
|
newobj
|
||||||
|
(
|
||||||
|
when
|
||||||
|
(
|
||||||
|
find-class
|
||||||
|
(
|
||||||
|
quote bpc
|
||||||
|
)
|
||||||
|
nil
|
||||||
|
)
|
||||||
|
(
|
||||||
|
let
|
||||||
|
(
|
||||||
|
(
|
||||||
|
newbpf
|
||||||
|
(
|
||||||
|
simple-bpf-from-list
|
||||||
|
(
|
||||||
|
quote
|
||||||
|
(
|
||||||
|
-1 99 70
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
quote
|
||||||
|
(
|
||||||
|
0 100 65
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
quote bpc
|
||||||
|
)
|
||||||
|
0
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
setf
|
||||||
|
(
|
||||||
|
bpfcolor newbpf
|
||||||
|
)
|
||||||
|
(
|
||||||
|
om-make-color 0 0 0
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
set-name newbpf "BPC"
|
||||||
|
)
|
||||||
|
newbpf
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
when newobj
|
||||||
|
)
|
||||||
|
newobj
|
||||||
|
)
|
||||||
|
"x" nil
|
||||||
|
(
|
||||||
|
pairlis
|
||||||
|
(
|
||||||
|
quote
|
||||||
|
(
|
||||||
|
picture winpos winsize
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
list nil
|
||||||
|
(
|
||||||
|
om-make-point 0 0
|
||||||
|
)
|
||||||
|
(
|
||||||
|
om-make-point 1900 1006
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
nil nil nil nil
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
when
|
||||||
|
(
|
||||||
|
fboundp
|
||||||
|
(
|
||||||
|
quote set-active
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
set-active box nil
|
||||||
|
)
|
||||||
|
)
|
||||||
|
box
|
||||||
|
)
|
||||||
|
)
|
||||||
|
)
|
||||||
|
(
|
||||||
|
quote nil
|
||||||
|
)
|
||||||
|
nil 6.19
|
||||||
|
)
|
||||||
|
)
|
@ -7,3 +7,5 @@ type BPC struct {
|
|||||||
func (s BPC) Init() {
|
func (s BPC) Init() {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// InitPatch()
|
||||||
|
@ -4,6 +4,8 @@ type Header struct {
|
|||||||
Data []byte
|
Data []byte
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
//TODO: It must be create dynamically for different kinds of entities (patch, maquette, etc)
|
||||||
func (h *Header) Init() {
|
func (h *Header) Init() {
|
||||||
h.Data = []byte(`; OM File Header - Saved 2022/12/29 14:43:16
|
h.Data = []byte(`; OM File Header - Saved 2022/12/29 14:43:16
|
||||||
; (6.19 :patc (om-make-point 10 10) (om-make-point 50 50) (om-make-point 500 400) "" 183 0 "2022/12/29 14:43:16" "2022/12/29 14:43:16")
|
; (6.19 :patc (om-make-point 10 10) (om-make-point 50 50) (om-make-point 500 400) "" 183 0 "2022/12/29 14:43:16" "2022/12/29 14:43:16")
|
||||||
|
@ -1,6 +1,9 @@
|
|||||||
package omp
|
package omp
|
||||||
|
|
||||||
import "bytes"
|
import (
|
||||||
|
"bytes"
|
||||||
|
"fmt"
|
||||||
|
)
|
||||||
|
|
||||||
type OMP struct {
|
type OMP struct {
|
||||||
Header Header
|
Header Header
|
||||||
@ -12,12 +15,14 @@ func (s OMP) Build() []byte {
|
|||||||
buff.Write(s.Header.GetData())
|
buff.Write(s.Header.GetData())
|
||||||
buff.Write(s.Data.GetIntro())
|
buff.Write(s.Data.GetIntro())
|
||||||
buff.Write(s.Data.GetLibFor())
|
buff.Write(s.Data.GetLibFor())
|
||||||
|
buff.Write(s.Data.GetOMCurrentPersistent())
|
||||||
return buff.Bytes()
|
return buff.Bytes()
|
||||||
}
|
}
|
||||||
|
|
||||||
type Data struct {
|
type Data struct {
|
||||||
Intro []byte
|
Intro []byte
|
||||||
LibFor []byte
|
LibFor []byte
|
||||||
|
CurrentPersistent []byte
|
||||||
}
|
}
|
||||||
|
|
||||||
func (s *Data) GetIntro() []byte {
|
func (s *Data) GetIntro() []byte {
|
||||||
@ -35,3 +40,11 @@ func (s *Data) GetLibFor() []byte {
|
|||||||
func (s *Data) SetLibFor() {
|
func (s *Data) SetLibFor() {
|
||||||
s.LibFor = []byte("(load-lib-for (quote nil))")
|
s.LibFor = []byte("(load-lib-for (quote nil))")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func (s *Data) SetOMCurrentPersistent(kind string, name string) {
|
||||||
|
s.CurrentPersistent = []byte(fmt.Sprintf("(setf *om-current-persistent* (%s \"%s\" (quote nil) (quote nil) nil 6.19))", kind, name))
|
||||||
|
}
|
||||||
|
|
||||||
|
func (s *Data) GetOMCurrentPersistent() []byte{
|
||||||
|
return s.CurrentPersistent
|
||||||
|
}
|
||||||
|
@ -8,12 +8,13 @@ import (
|
|||||||
const ompExample = `; OM File Header - Saved 2022/12/29 14:43:16
|
const ompExample = `; OM File Header - Saved 2022/12/29 14:43:16
|
||||||
; (6.19 :patc (om-make-point 10 10) (om-make-point 50 50) (om-make-point 500 400) "" 183 0 "2022/12/29 14:43:16" "2022/12/29 14:43:16")
|
; (6.19 :patc (om-make-point 10 10) (om-make-point 50 50) (om-make-point 500 400) "" 183 0 "2022/12/29 14:43:16" "2022/12/29 14:43:16")
|
||||||
; End File Header
|
; End File Header
|
||||||
(in-package :om)(load-lib-for (quote nil))`
|
(in-package :om)(load-lib-for (quote nil))(setf *om-current-persistent* (om-load-patch1 "Test Patch" (quote nil) (quote nil) nil 6.19))`
|
||||||
|
|
||||||
func TestOmpBuilder(t *testing.T) {
|
func TestOmpBuilder(t *testing.T) {
|
||||||
header := &omp.OMP{}
|
header := &omp.OMP{}
|
||||||
header.Data.SetIntro()
|
header.Data.SetIntro()
|
||||||
header.Data.SetLibFor()
|
header.Data.SetLibFor()
|
||||||
|
header.Data.SetOMCurrentPersistent("om-load-patch1", "Test Patch")
|
||||||
header.Header.Init()
|
header.Header.Init()
|
||||||
str := string(header.Build())
|
str := string(header.Build())
|
||||||
if str != ompExample {
|
if str != ompExample {
|
||||||
|
Loading…
Reference in New Issue
Block a user