Thanks Josh that was helpful.<br><br>Aside from getting used to C++ again, I&#39;m making some progress. I started playing around with one of the other examples (TreeList), but I think I&#39;m having another issue. If my understanding is correct, TreeList should print out the name of all the projects for a given username (or something close to that).<br>

<br>I currently have 1 project in my local OMERO server. There is one dataset containing one image in this project. However, when I run TreeList, nothing prints. Also, it thinks the vector resulting from <br><br>std::vector&lt;omero::model::ProjectPtr&gt; projects = AllProjects::getProjects(factory-&gt;getQueryService(), &quot;nick&quot;);<br>

<br>has size 0. I would think with one project for the username I&#39;m giving it (&quot;nick&quot;) that the vector of pointers should have size 1... Makes me think that something is wrong in AllProjects.h, but nothing is popping out at me as wrong.<br>

<br>Do you have any idea what might be going on?<br><br>Also, are there are more examples for C++ or is the best way for me to figure out  how to write clients by going through docs/slice definitions one by one to find the methods I need...?<br>

<br>Nick<br><br><br><div class="gmail_quote">On Wed, Sep 9, 2009 at 5:58 PM,  <span dir="ltr">&lt;<a href="mailto:josh.moore@gmx.de">josh.moore@gmx.de</a>&gt;</span> wrote:<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">

Nick Perry writes:<br>
 &gt; Hey Josh,<br>
<br>
Hey Nick,<br>
<div class="im"><br>
 &gt; Sorry to bug you with something so specific,<br>
<br>
</div>No worries. The C++ documentation is definitely lacking, but as more<br>
of you want to use it, we&#39;ll do everything we can to make it<br>
easier. So please ask away.<br>
<div class="im"><br>
 &gt; but if I&#39;m trying to find out what methods / documentation are<br>
 &gt; available for IObjectList in the line<br>
 &gt;<br>
 &gt;      omero::api::IObjectList results =<br>
 &gt;      q-&gt;findAllByQuery(query_string, p);<br>
 &gt;<br>
 &gt; on <a href="http://hudson.openmicroscopy.org.uk/job/OMERO/javadoc/" target="_blank">http://hudson.openmicroscopy.org.uk/job/OMERO/javadoc/</a>, how<br>
 &gt; would i go about doing it? Probably just my inexperience with<br>
 &gt; C++/C, but I would go to the top left frame, click on api, then<br>
 &gt; look for IObjectList, since I imagine &#39;results&#39; is an object of<br>
 &gt; type IObjectList, and look for methods there. But I can&#39;t find it<br>
 &gt; on that list. How do I actually look up IObjectList?<br>
<br>
</div>When you run up against something in the source code which you don&#39;t<br>
know how to handle, the first thing to do is to find it in the slice<br>
definition files. omero::api::IObjectList can be found here:<br>
<br>
  <a href="https://trac.openmicroscopy.org.uk/omero/browser/trunk/components/blitz/resources/omero/Collections.ice#L102" target="_blank">https://trac.openmicroscopy.org.uk/omero/browser/trunk/components/blitz/resources/omero/Collections.ice#L102</a><br>


<br>
As you can see there&#39;s an annotation for mapping the list to a<br>
List&lt;IObject&gt; in Java, rather than IObject[]. This means that it won&#39;t<br>
show up in the Java docs since it&#39;s not a special type. You can read<br>
more about that in the Ice manual:<br>
<br>
  <a href="http://zeroc.com/doc/Ice-3.3.1/manual/Java.11.16.html#95298" target="_blank">http://zeroc.com/doc/Ice-3.3.1/manual/Java.11.16.html#95298</a><br>
<br>
In C++, something similar happens. See:<br>
<br>
  <a href="http://zeroc.com/doc/Ice-3.3.1/manual/Cpp.7.7.html" target="_blank">http://zeroc.com/doc/Ice-3.3.1/manual/Cpp.7.7.html</a><br>
<br>
&quot;sequence&lt;omero::model::IObject&gt;&quot; becomes:<br>
<br>
  typedef std::vector&lt;omero::model::IObject&gt; IObjectList<br>
<br>
so, though there is a typedef in C++ unlike in Java, it&#39;s also not<br>
really a new type, but just a vector, therefore all the standard STL<br>
methods, rules, and documentation apply.<br>
<br>
Hope that helps,<br>
~Josh.<br>
<div><div></div><div class="h5"><br>
 &gt; On Wed, Sep 9, 2009 at 5:08 PM, Nick Perry &lt;<a href="mailto:nperry@stanford.edu">nperry@stanford.edu</a>&gt; wrote:<br>
 &gt;<br>
 &gt; &gt; it&#39;s in the README for Ice. I&#39;ve attached my copy (Version 3.3.1)<br>
 &gt; &gt;<br>
 &gt; &gt;<br>
 &gt; &gt; On Wed, Sep 9, 2009 at 5:00 PM, &lt;<a href="mailto:josh.moore@gmx.de">josh.moore@gmx.de</a>&gt; wrote:<br>
 &gt; &gt;<br>
 &gt; &gt;&gt;<br>
 &gt; &gt;&gt; Nick,<br>
 &gt; &gt;&gt;<br>
 &gt; &gt;&gt; good to know. Do you remember where you saw that definition of<br>
 &gt; &gt;&gt; ICE_HOME? I&#39;ve seen others with similar issues, and would like to put<br>
 &gt; &gt;&gt; a warning up.<br>
 &gt; &gt;&gt;<br>
 &gt; &gt;&gt; Cheers,<br>
 &gt; &gt;&gt; ~Josh.<br>
 &gt; &gt;&gt;<br>
 &gt; &gt;&gt; Nick Perry writes:<br>
 &gt; &gt;&gt;  &gt; you&#39;re right; I just figured that out too as i got this email.<br>
 &gt; &gt;&gt;  &gt;<br>
 &gt; &gt;&gt;  &gt; annoyingly, this is how i was told (wherever I read it, anyway) how to<br>
 &gt; &gt;&gt; make<br>
 &gt; &gt;&gt;  &gt; my .bash_profile and environmental variables:<br>
 &gt; &gt;&gt;  &gt;<br>
 &gt; &gt;&gt;  &gt; export CLICOLOR=1<br>
 &gt; &gt;&gt;  &gt; export LSCOLORS=ExFxCxDxBxegedabagacad<br>
 &gt; &gt;&gt;  &gt; export PS1=&quot;\n\[\e[1;40;32m\]\u@\h:\w&gt; \[\e[0m\]&quot;<br>
 &gt; &gt;&gt;  &gt; export PATH=/Library/Ice-3.3.1/bin:$PATH<br>
 &gt; &gt;&gt;  &gt; export DYLD_LIBRARY_PATH=/Library/Ice-3.3.1/lib:$DYLD_LIBRARY_PATH<br>
 &gt; &gt;&gt;  &gt; export PYTHONPATH=/Library/Ice-3.3.1/python:$PYTHONPATH<br>
 &gt; &gt;&gt;  &gt; export ICE_HOME=/Library/Ice-3.3.1:$ICE_HOME<br>
 &gt; &gt;&gt;  &gt;<br>
 &gt; &gt;&gt;  &gt; however, that makes colons after the first part. Most of this was<br>
 &gt; &gt;&gt;  &gt; from the ICE installation. So I monkey-saw-monkey-did and made<br>
 &gt; &gt;&gt;  &gt; ICE_HOME with a semi-colon too...<br>
 &gt; &gt;&gt;  &gt;<br>
 &gt; &gt;&gt;  &gt; /fail<br>
 &gt; &gt;&gt;  &gt;<br>
 &gt; &gt;&gt;  &gt; Thanks<br>
 &gt; &gt;&gt;  &gt; Nick<br>
 &gt; &gt;&gt;  &gt;<br>
 &gt; &gt;&gt;  &gt; On Wed, Sep 9, 2009 at 4:42 PM, &lt;<a href="mailto:josh.moore@gmx.de">josh.moore@gmx.de</a>&gt; wrote:<br>
 &gt; &gt;&gt;  &gt;<br>
 &gt; &gt;&gt;  &gt; &gt;<br>
 &gt; &gt;&gt;  &gt; &gt; Hi Nick,<br>
 &gt; &gt;&gt;  &gt; &gt;<br>
 &gt; &gt;&gt;  &gt; &gt; Nick Perry writes:<br>
 &gt; &gt;&gt;  &gt; &gt; ...snip...<br>
 &gt; &gt;&gt;  &gt; &gt;  &gt; &gt; make api_test<br>
 &gt; &gt;&gt;  &gt; &gt;  &gt; g++  -c -o api_test.o api_test.cpp<br>
 &gt; &gt;&gt;  &gt; &gt;  &gt; -I/Users/nperry/Desktop/omero/dist/include<br>
 &gt; &gt;&gt; -I/Library/Ice-3.3.1:/include<br>
 &gt; &gt;&gt;  &gt; &gt;<br>
 &gt; &gt;&gt;  &gt; &gt; I don&#39;t think there&#39;s supposed to be a colon in:<br>
 &gt; &gt;&gt;  &gt; &gt;<br>
 &gt; &gt;&gt;  &gt; &gt;  -I/Library/Ice-3.3.1:/include<br>
 &gt; &gt;&gt;  &gt; &gt;<br>
 &gt; &gt;&gt;  &gt; &gt; With it, g++ can&#39;t find all of the Ice header files. Is it possible<br>
 &gt; &gt;&gt;  &gt; &gt; you have ICE_HOME set in your environment with a colon on the end?<br>
 &gt; &gt;&gt;  &gt; &gt;<br>
 &gt; &gt;&gt;  &gt; &gt;  &gt; *Should this all be working? I&#39;m not asking that you figure out if<br>
 &gt; &gt;&gt;  &gt; &gt;  &gt; I have directory issues or path name errors, but if you look at<br>
 &gt; &gt;&gt; the<br>
 &gt; &gt;&gt;  &gt; &gt;  &gt; CPP code above (again, provided here:<br>
 &gt; &gt;&gt;  &gt; &gt;  &gt; <a href="http://trac.openmicroscopy.org.uk/omero/wiki/OmeroClients?onlycpp" target="_blank">http://trac.openmicroscopy.org.uk/omero/wiki/OmeroClients?onlycpp</a><br>
 &gt; &gt;&gt; )<br>
 &gt; &gt;&gt;  &gt; &gt;  &gt; and that makefile, should everything be working?<br>
 &gt; &gt;&gt;  &gt; &gt;<br>
 &gt; &gt;&gt;  &gt; &gt; Otherwise, at a quick glance, everything should be working. But if<br>
 &gt; &gt;&gt; you<br>
 &gt; &gt;&gt;  &gt; &gt; have issues, feel free to send them in.<br>
 &gt; &gt;&gt;  &gt; &gt;<br>
 &gt; &gt;&gt;  &gt; &gt; Cheers,<br>
 &gt; &gt;&gt;  &gt; &gt; ~josh<br>
 &gt; &gt;&gt;  &gt; &gt;<br>
 &gt; &gt;&gt;<br>
 &gt; &gt;<br>
 &gt; &gt;<br>
</div></div></blockquote></div><br>