Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Anders Blomdell
moberg
Commits
00c1ec6c
Commit
00c1ec6c
authored
Mar 27, 2019
by
Fredrik Bagge Carlson
Browse files
formatting + double GC.gc
parent
9e6d5436
Changes
7
Hide whitespace changes
Inline
Side-by-side
adaptors/julia/AnalogIn.jl
View file @
00c1ec6c
...
...
@@ -7,16 +7,16 @@ mutable struct AnalogIn
moberg
::
Moberg
index
::
UInt32
channel
::
AnalogInChannel
AnalogIn
(
moberg
::
Moberg
,
index
::
Unsigned
)
=
(
channel
=
AnalogInChannel
(
0
,
0
)
;
function
AnalogIn
(
moberg
::
Moberg
,
index
::
Unsigned
)
channel
=
AnalogInChannel
(
0
,
0
)
checkOK
(
ccall
((
:
moberg_analog_in_open
,
"libmoberg"
),
Status
,
(
Moberg
,
Cint
,
Ref
{
AnalogInChannel
}),
moberg
,
index
,
channel
))
;
self
=
new
(
moberg
,
index
,
channel
)
;
finalizer
(
close
,
self
)
;
moberg
,
index
,
channel
))
self
=
new
(
moberg
,
index
,
channel
)
finalizer
(
close
,
self
)
self
)
end
end
function
close
(
ain
::
AnalogIn
)
...
...
@@ -35,4 +35,3 @@ function read(ain::AnalogIn)
ain
.
channel
.
context
,
result
))
return
result
[]
end
adaptors/julia/AnalogOut.jl
View file @
00c1ec6c
...
...
@@ -7,16 +7,16 @@ mutable struct AnalogOut
moberg
::
Moberg
index
::
UInt32
channel
::
AnalogOutChannel
AnalogOut
(
moberg
::
Moberg
,
index
::
Unsigned
)
=
(
channel
=
AnalogOutChannel
(
0
,
0
)
;
function
AnalogOut
(
moberg
::
Moberg
,
index
::
Unsigned
)
channel
=
AnalogOutChannel
(
0
,
0
)
checkOK
(
ccall
((
:
moberg_analog_out_open
,
"libmoberg"
),
Status
,
(
Moberg
,
Cint
,
Ref
{
AnalogOutChannel
}),
moberg
,
index
,
channel
));
self
=
new
(
moberg
,
index
,
channel
)
;
finalizer
(
close
,
self
)
;
self
=
new
(
moberg
,
index
,
channel
)
finalizer
(
close
,
self
)
self
)
end
end
function
close
(
aout
::
AnalogOut
)
...
...
@@ -25,7 +25,7 @@ function close(aout::AnalogOut)
Status
,
(
Moberg
,
Cint
,
AnalogOutChannel
),
aout
.
moberg
,
aout
.
index
,
aout
.
channel
))
end
;
end
function
write
(
aout
::
AnalogOut
,
value
::
Cdouble
)
checkOK
(
ccall
(
aout
.
channel
.
write
,
...
...
adaptors/julia/DigitalIn.jl
View file @
00c1ec6c
...
...
@@ -7,16 +7,16 @@ mutable struct DigitalIn
moberg
::
Moberg
index
::
UInt32
channel
::
DigitalInChannel
DigitalIn
(
moberg
::
Moberg
,
index
::
Unsigned
)
=
(
channel
=
DigitalInChannel
(
0
,
0
)
;
function
DigitalIn
(
moberg
::
Moberg
,
index
::
Unsigned
)
channel
=
DigitalInChannel
(
0
,
0
)
checkOK
(
ccall
((
:
moberg_digital_in_open
,
"libmoberg"
),
Status
,
(
Moberg
,
Cint
,
Ref
{
DigitalInChannel
}),
moberg
,
index
,
channel
));
self
=
new
(
moberg
,
index
,
channel
)
;
finalizer
(
close
,
self
)
;
self
=
new
(
moberg
,
index
,
channel
)
finalizer
(
close
,
self
)
self
)
end
end
function
close
(
din
::
DigitalIn
)
...
...
@@ -35,4 +35,3 @@ function read(din::DigitalIn)
din
.
channel
.
context
,
result
))
return
result
[]
!=
0
end
adaptors/julia/DigitalOut.jl
View file @
00c1ec6c
...
...
@@ -7,16 +7,16 @@ mutable struct DigitalOut
moberg
::
Moberg
index
::
UInt32
channel
::
DigitalOutChannel
DigitalOut
(
moberg
::
Moberg
,
index
::
Unsigned
)
=
(
channel
=
DigitalOutChannel
(
0
,
0
)
;
function
DigitalOut
(
moberg
::
Moberg
,
index
::
Unsigned
)
channel
=
DigitalOutChannel
(
0
,
0
)
checkOK
(
ccall
((
:
moberg_digital_out_open
,
"libmoberg"
),
Status
,
(
Moberg
,
Cint
,
Ref
{
DigitalOutChannel
}),
moberg
,
index
,
channel
))
;
self
=
new
(
moberg
,
index
,
channel
)
;
finalizer
(
close
,
self
)
;
moberg
,
index
,
channel
))
self
=
new
(
moberg
,
index
,
channel
)
finalizer
(
close
,
self
)
self
)
end
end
function
close
(
dout
::
DigitalOut
)
...
...
@@ -25,7 +25,7 @@ function close(dout::DigitalOut)
Status
,
(
Moberg
,
Cint
,
DigitalOutChannel
),
dout
.
moberg
,
dout
.
index
,
dout
.
channel
))
end
;
end
function
write
(
dout
::
DigitalOut
,
value
::
Bool
)
checkOK
(
ccall
(
dout
.
channel
.
write
,
...
...
adaptors/julia/EncoderIn.jl
View file @
00c1ec6c
...
...
@@ -7,16 +7,16 @@ mutable struct EncoderIn
moberg
::
Moberg
index
::
UInt32
channel
::
EncoderInChannel
EncoderIn
(
moberg
::
Moberg
,
index
::
Unsigned
)
=
(
channel
=
EncoderInChannel
(
0
,
0
)
;
function
EncoderIn
(
moberg
::
Moberg
,
index
::
Unsigned
)
channel
=
EncoderInChannel
(
0
,
0
)
checkOK
(
ccall
((
:
moberg_encoder_in_open
,
"libmoberg"
),
Status
,
(
Moberg
,
Cint
,
Ref
{
EncoderInChannel
}),
moberg
,
index
,
channel
))
;
self
=
new
(
moberg
,
index
,
channel
)
;
finalizer
(
close
,
self
)
;
moberg
,
index
,
channel
))
self
=
new
(
moberg
,
index
,
channel
)
finalizer
(
close
,
self
)
self
)
end
end
function
close
(
ein
::
EncoderIn
)
...
...
@@ -35,4 +35,3 @@ function read(ein::EncoderIn)
ein
.
channel
.
context
,
result
))
return
result
[]
end
adaptors/julia/moberg.jl
View file @
00c1ec6c
...
...
@@ -14,7 +14,7 @@ mutable struct moberg
handle
::
Ptr
{
Nothing
}
end
function
moberg
()
function
moberg
()
handle
=
ccall
((
:
moberg_new
,
"libmoberg"
),
Ptr
{
Nothing
},
())
println
(
handle
)
m
=
moberg
(
handle
)
...
...
@@ -31,46 +31,46 @@ mutable struct moberg_analog_in
context
::
Ptr
{
Nothing
}
do_read
::
Ptr
{
Nothing
}
handle
::
moberg
moberg_analog_in
(
m
::
moberg
,
index
::
Unsigned
)
=
(
self
=
new
()
;
function
moberg_analog_in
(
m
::
moberg
,
index
::
Unsigned
)
self
=
new
()
check_OK
(
ccall
((
:
moberg_analog_in_open
,
"libmoberg"
),
moberg_status
,
(
Ptr
{
Nothing
},
Cint
,
Ref
{
moberg_analog_in
}),
m
.
handle
,
index
,
self
))
;
self
.
handle
=
m
;
m
.
handle
,
index
,
self
))
self
.
handle
=
m
function
close
(
channel
::
moberg_analog_in
)
println
(
channel
)
ccall
((
:
moberg_analog_in_close
,
"libmoberg"
),
moberg_status
,
(
Ptr
{
Nothing
},
Cint
,
moberg_analog_in
),
channel
.
handle
.
handle
,
index
,
self
)
end
;
finalizer
(
close
,
self
)
;
end
finalizer
(
close
,
self
)
self
)
end
end
mutable struct
moberg_analog_out
context
::
Ptr
{
Nothing
}
do_write
::
Ptr
{
Nothing
}
handle
::
moberg
moberg_analog_out
(
m
::
moberg
,
index
::
Unsigned
)
=
(
self
=
new
()
;
function
moberg_analog_out
(
m
::
moberg
,
index
::
Unsigned
)
self
=
new
()
check_OK
(
ccall
((
:
moberg_analog_out_open
,
"libmoberg"
),
moberg_status
,
(
Ptr
{
Nothing
},
Cint
,
Ref
{
moberg_analog_out
}),
m
.
handle
,
index
,
self
))
;
self
.
handle
=
m
;
m
.
handle
,
index
,
self
))
self
.
handle
=
m
function
close
(
channel
::
moberg_analog_out
)
println
(
channel
)
ccall
((
:
moberg_analog_out_close
,
"libmoberg"
),
moberg_status
,
(
Ptr
{
Nothing
},
Cint
,
moberg_analog_out
),
channel
.
handle
.
handle
,
index
,
self
)
end
;
finalizer
(
close
,
self
)
;
end
finalizer
(
close
,
self
)
self
)
end
end
function
read
(
ain
::
moberg_analog_in
)
...
...
@@ -92,12 +92,12 @@ end
function
test
()
m
=
moberg
()
println
(
m
)
for
v
in
-
10.0
:
2.0
:
10
for
v
in
-
10.0
:
2.0
:
10
for
i
in
30
:
31
try
aout
=
moberg_analog_out
(
m
,
Unsigned
(
i
))
value
=
v
+
i
-
32
;
value
=
v
+
i
-
32
write
(
aout
,
value
)
print
(
"
$
value "
)
catch
...
...
@@ -123,4 +123,5 @@ test()
println
(
"DONE"
)
GC
.
gc
()
GC
.
gc
()
# See https://github.com/JuliaCI/BenchmarkTools.jl/blob/af35d0513fe1e336ad0d8b9a35f924e8461aefa2/src/execution.jl#L1
println
(
"Really DONE"
)
adaptors/julia/test_moberg.jl
View file @
00c1ec6c
...
...
@@ -8,12 +8,12 @@ import MobergIO: read, write
function
test
()
m
=
MobergIO
.
Moberg
()
println
(
m
)
for
v
in
-
10.0
:
2.0
:
10
for
v
in
-
10.0
:
2.0
:
10
for
i
in
30
:
31
try
aout
=
MobergIO
.
AnalogOut
(
m
,
Unsigned
(
i
))
value
=
v
+
i
-
32
;
value
=
v
+
i
-
32
write
(
aout
,
value
)
print
(
"
$
value "
)
catch
ex
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment