[ome-devel] ome access with c++
Zachary Pincus
zpincus at stanford.edu
Sat Sep 24 02:45:36 BST 2005
Hi Folks,
Gerhard emailed me earlier about my progress on the C++ bindings. For
the record, I was never able to get them to work properly, much less
keep them in synch with changes in the remote API.
I think the idea as a whole isn't a bad one; I just didn't have
enough experience in software design to really choose the right way
to build a set of proxy wrapper classes.
In the mean time, I think that the OME::Remote API is clear enough,
and the state of C++ XML-RPC libraries is good enough, that it should
be pretty easy to just write directly to the OME::Remote API without
needing a layer of proxy classes. This clearly isn't ideal, but for
getting code to do specific tasks it should work.
I might one day wind up re-implementing the java bindings in Python.
(This would be a pretty simple task thanks to Python's supremacy over
all other scripting languages that begin with the letter P. :) And
who would want to write C++ when they could be writing python/perl/java?
Zach
On Sep 23, 2005, at 2:10 PM, Ilya Goldberg wrote:
> I think it would help to get some clarification of what parts of
> OME you would like to access from c++.
> There is a library written by BitPlane to read OME XML from c++:
> http://www.embl.de/eamnet/html/downloads.html
>
> Zach Pincus <zpincus at stanford.edu> wrote a c++ library to talk to
> the OME data server via XMLRPC. I haven't tried it, but I think he
> got it to a functional state. I don't know if he's listening in
> (hello? Zach?), but maybe you can contact him off-list.
>
> Tomasz wrote a sub-set of the functionality available in OMEIS
> accessible from C. The OMEIS interface is essentially HTTP, so
> there's not a lot to do other than call the appropriate methods in
> libcurl or libwww.
>
> I wouldn't go so far as to call it a library, but I wrote some
> helper routines to access the OME data server from Excel using
> VBA. This happens using HTTP requests to issue queries with
> results being sent back as flat, tab-separated plain-text tables
> (which is convenient for Excel, but probably not what you want).
>
> -Ilya
>
> On Sep 24, 2005, at 5:07 AM, gerhard wrote:
>
>
>> T. J. Macura wrote:
>>
>>>
>>> On Sep 23, 2005, at 11:44 AM, gerhard wrote:
>>>
>>>
>>>> T. J. Macura wrote:
>>>>
>>>>
>>>>> Gerhard,
>>>>>
>>>>>
>>>>>> reading through the posts of the last months I saw several
>>>>>> postings
>>>>>> about accessing ome with c++;
>>>>>>
>>>>>
>>>>> I can only speak about C client-library access to OMEIS.
>>>>> That exists, has been thoroughly tested, and we use it nearly
>>>>> constantly (through MEX bindings to MATLAB).
>>>>>
>>>>> It is even documented:
>>>>> http://www.openmicroscopy.org/api/omeis/client-interface.html
>>>>>
>>>>> Tom
>>>>>
>>>>>
>>>> Thanks very much,
>>>> but are there methods to upload and download files from OMEIS.
>>>>
>>> Those weren't implemented. Knowing C, Perl, and OME internals I
>>> would
>>> find writing an image format importer in C++ (how would it interface
>>> with OME's Perl Logical Layer?) is much harder than writing it in
>>> Perl. If there are some specific functions e.g. decompression which
>>> are easier to write in C, perhaps XS perl bindings are the way
>>> forward.
>>>
>>>
>>>> Reading through the methods section the most functions aren't'
>>>> implemented (file methods..)
>>>>
>>> "most functions" depends on the perspective. I implemented all the
>>> functions that were important to me and meet a wide range of
>>> needs. I
>>> didn't implement the other functions because we didn't have any real
>>> use-cases for them. I would be quite willing to implement OMEIS
>>> client-libarary functions you need for your work.
>>>
>>> _______________________________________________
>>>
>>>> ome-devel mailing list
>>>> ome-devel at lists.openmicroscopy.org.uk
>>>> http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-devel
>>>>
>>>>
>>>
>>> I think at the moment the C client library can only be used to get
>>> pixels out of OME and run for example algorithmns on them.
>>> But how does shoola access OME? XML-RPC and HTTP. But both can be
>>> used
>>> also in C++. QT for example has classes to access http....
>>>
>>>
>>
>> _______________________________________________
>> ome-devel mailing list
>> ome-devel at lists.openmicroscopy.org.uk
>> http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-devel
>>
>>
>
> _______________________________________________
> ome-devel mailing list
> ome-devel at lists.openmicroscopy.org.uk
> http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-devel
>
More information about the ome-devel
mailing list