1
0
mirror of https://github.com/opencv/opencv_contrib.git synced 2025-10-22 16:08:41 +08:00
Files
Archit Rungta 091f97987a Merge pull request #2622 from archit120:julia_phase3
[GSoC] Julia Bindings Phase 3

* Add Julia Bindings Phase 3

* Code style and warning fixes for Julia bindings

* Add copyright notice to .py files

* fix typo
2020-08-15 22:49:57 +00:00

52 lines
1.0 KiB
Julia

# using StaticArrays
include("typestructs.jl")
include("Vec.jl")
const dtypes = Union{UInt8, Int8, UInt16, Int16, Int32, Float32, Float64}
size_t = UInt64
using CxxWrap
@wrapmodule(joinpath(@__DIR__,"lib","libopencv_julia"), :cv_wrap)
function __init__()
@initcxx
if jlopencv_core_get_sizet()==4
size_t = UInt32
end
end
const Scalar = Union{Tuple{}, Tuple{Number}, Tuple{Number, Number}, Tuple{Number, Number, Number}, NTuple{4, Number}}
include("Mat.jl")
const InputArray = Union{AbstractArray{T, 3} where {T <: dtypes}, CxxMat}
include("mat_conversion.jl")
include("types_conversion.jl")
function cpp_to_julia(var)
return var
end
function julia_to_cpp(var)
return var
end
function cpp_to_julia(var::Tuple)
ret_arr = Array{Any, 1}()
for it in var
push!(ret_arr, cpp_to_julia(it))
end
return tuple(ret_arr...)
end
function cpp_to_julia(var::CxxBool)
return Bool(var)
end
function julia_to_cpp(var::Bool)
return CxxBool(var)
end
include("cv_cxx_wrap.jl")
include("cv_manual_wrap.jl")