Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OE-1 "Maintaining OpenCV 1.x C API" discussion #11000

Open
vpisarev opened this issue Mar 6, 2018 · 3 comments
Open

OE-1 "Maintaining OpenCV 1.x C API" discussion #11000

vpisarev opened this issue Mar 6, 2018 · 3 comments
Milestone

Comments

@vpisarev
Copy link
Contributor

vpisarev commented Mar 6, 2018

the feature request about evolution proposal OE-1

@vpisarev vpisarev added this to the 4.0 milestone Mar 6, 2018
@vpisarev vpisarev changed the title OE-1 "Maintaining C API" discussion OE-1 "Maintaining OpenCV 1.x C API" discussion Mar 6, 2018
@kinchungwong
Copy link
Contributor

kinchungwong commented Mar 27, 2018

/cc @alalek Re: #10246 (comment)

Possible solution here is FFI (https://en.wikipedia.org/wiki/Foreign_function_interface) bindings for C which should be able to emulate C++ features effectively.
To implement this we must think about emulation of C++ exceptions in C, classes/methods/objects, etc, including some "runtime library" to support this.
If you want strategic/political answer then you should ask

/cc @dkogan Re: #10246 (comment)

Can you please update the docs, and at least the front webpage to not claim there's a C API anymore?

Dear Vadim,

Please clarify whether a C-compatible FFI (foreign function interface) is within the scope of OE-1 or outside. Whether it is or not in OE-1, a C-compatible FFI needs to be on Evolution Proposals, because many open-source projects require the functionality of OpenCV. This issue also affects the relationship between OpenCV and the larger open-source community.

Some of them require OpenCV 1.x, but some of them may also require newer functionalities from 2.x or 3.x.

Also of interest is OpenVX. I wonder if C projects might benefit from using OpenVX directly, for at least some of their functionalities? Feedback from open-source projects are appreciated.

There may also be a need to either section off parts of core/cvdef.h for C compilers, or to poison off the entire file for C compilers (so that it's clear it won't build).

@alalek
Copy link
Member

alalek commented Mar 28, 2018

This OE is about "OpenCV 1.x API" and about using of this API in other OpenCV parts.

C-compatible FFI is not covered here. Perhaps it would be another C-like API - at least internally (but compatibility headers/wrappers may be proposed).
See: #11666

@sturkmen72
Copy link
Contributor

i think functions like cvCanny can be cleaned up. i can work on this

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Todo
Development

No branches or pull requests

5 participants