mirror of
https://github.com/opencv/opencv_contrib.git
synced 2025-10-22 16:08:41 +08:00

[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
52 lines
1.0 KiB
Julia
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") |