IRC log for #brlcad on 20110808

00:49.06 abhi2011 ok so I am trying to add a new .cpp file to src/libged where all the c++ code to access bullet physics will go
00:49.40 abhi2011 the cpp file has a header which I include in the mged command implementation file
00:50.43 abhi2011 So my c++ test file is simphysics.cpp with some test code
00:51.45 abhi2011 http://bin.cakephp.org/view/1739302378
00:53.23 abhi2011 I have a header for it and this is included in simulate.c which has the libged implementation of the simulate command : http://bin.cakephp.org/view/1706385166
00:54.24 abhi2011 the cpp file has the definition of a single function single_step_sim() which uses the cout object to print out some test message
00:55.19 abhi2011 I get a linking error when I compile which says single_step_sim() is an undefined reference
00:56.39 abhi2011 However since I have included the header (which declares single_step_sim() ) in simulate.c the compiler should be able to see the declaration
00:57.14 abhi2011 Perhaps it has to be exported using GED_EXPORT, but its not called from outside the library so it shouldnt be required to export it
01:06.51 abhi2011 this is the linking error : http://bin.cakephp.org/view/1997617995
05:15.44 *** join/#brlcad Stattrav (~Stattrav@203.196.190.162)
05:15.44 *** join/#brlcad Stattrav (~Stattrav@unaffiliated/stattrav)
06:04.43 *** join/#brlcad emagdalenag (~emagdalen@109.Red-88-4-184.dynamicIP.rima-tde.net)
10:23.01 *** join/#brlcad abhi2011 (~chatzilla@ip170-79-211-87.adsl2.static.versatel.nl)
11:32.54 CIA-62 BRL-CAD: 03Kunigami 07http://brlcad.org * r3056 10/wiki/User:Kunigami/GSoc2011/Reports: /* Week 11 (August 1st to August 8th) */ log for past week
12:30.41 *** join/#brlcad abhi2011 (~chatzilla@ip170-79-211-87.adsl2.static.versatel.nl)
12:36.39 abhi2011 has anyone tried to add c++ files to existing code, that is mixing c with c++
12:38.07 brlcad abhi2011: adding c++ to c files would make them c++ files
12:40.40 brlcad you'll want to write a bridge, i.e., one or more C functions that wrap all of your C++ logic
12:40.42 abhi2011 ok I am trying to integrate bullet c++ code into brlcad
12:40.48 brlcad I know
12:40.49 abhi2011 right
12:41.08 brlcad those bridging functions will need to be marked extern "C" since they're in c++ files
12:41.16 brlcad so that they're not name-mangled
12:42.52 abhi2011 yes I have written a separate function in a cpp file simphysics.cpp that has all the c++ code, I have declared this function in a header simphysics.h
12:42.54 *** join/#brlcad emagdalenag (~emagdalen@179.Red-88-4-185.dynamicIP.rima-tde.net)
12:43.10 abhi2011 i include this header in simulate.c which is the libged simulate command implementation
12:43.41 abhi2011 in the header where i declare the c++ function, I can declare it as extern
12:43.55 brlcad it's not just extern
12:43.58 brlcad it's extern "C"
12:44.05 abhi2011 ah ok
12:44.20 brlcad search for that in existing include/*.h headers
12:44.21 abhi2011 i get it
12:44.27 abhi2011 right
12:44.39 brlcad stop saying right :)
12:45.05 abhi2011 :P, yes
12:51.46 brlcad heh, http://www.sbir.gov/sbirsearch/detail/93829
12:52.06 brlcad apparently ARA got half a million back in the mid-90's to develop that .. interesting, never saw it
12:52.35 brlcad (assuming they got phase 2 funding, maybe only phase 1)
13:40.55 abhi2011 interestng
14:19.10 *** join/#brlcad emagdalenag (~emagdalen@41.Red-88-21-190.staticIP.rima-tde.net)
14:52.47 *** join/#brlcad abhi2011 (~chatzilla@wlan-145-94-187-155.wlan.tudelft.nl)
15:25.29 CIA-62 BRL-CAD: 03brlcad * r45808 10/brlcad/trunk/src/libwdb/skt.c: there already exists a copy function for deep copying, so use it.
15:27.33 CIA-62 BRL-CAD: 03brlcad * r45809 10/brlcad/trunk/src/libwdb/ (CMakeLists.txt Makefile.am sketch.c skt.c): rename from skt.c to sketch.c because it's easier to find the file if the filename matches the primitive's canonical short name.
15:35.56 *** join/#brlcad kunigami (~kunigami@201.53.206.27)
15:49.05 *** join/#brlcad fosburg (~steve@or-67-238-17-118.dhcp.embarqhsd.net)
15:49.59 fosburg anyone here
16:04.54 *** join/#brlcad kunigami (~kunigami@201.53.206.27)
16:07.57 *** join/#brlcad kunigami (~kunigami@201.53.206.27)
16:11.46 *** join/#brlcad fosburg (~steve@or-67-238-17-118.dhcp.embarqhsd.net)
16:16.06 kunigami rt is running out of single letter options :) shouldn't we allow more for more mnemonic options?
16:16.46 kunigami I'd like to add a framebuffer mode. Bothb,B, f and F are already taken, but -fb would be better anyway
16:23.47 brlcad kunigami: we don't (yet) have proper infrastructure in place for --long-options
16:25.02 brlcad with getopt, -fb is equivalent to "-f -b", so at best you'd need something like --fb
16:25.12 brlcad that said, what do you mean by framebuffer mode?
16:27.20 CIA-62 BRL-CAD: 03brlcad * r45810 10/brlcad/trunk/include/wdb.h: meant to commit this with r45808, made the passed parameter const now that it's properly copied before export.
16:28.36 CIA-62 BRL-CAD: 03brlcad * r45811 10/brlcad/trunk/include/raytrace.h: add a new type, rt_curve, for use by sketch and extrude definitions.
16:38.40 abhi2011 does anyone else get warnings about the version infomation being missing from libz : /usr/bin/cmake: /usr/brlcad/dev-7.20.3/lib/libz.so.1: no version information available (required by /usr/bin/cmake)
16:38.58 abhi2011 I get this during cmake and during make install as well
16:39.38 abhi2011 maybe the libz version info needs to be patched
17:03.11 *** join/#brlcad fosburg (~steve@or-67-238-17-118.dhcp.embarqhsd.net)
17:05.32 kunigami brlcad: something like we discussed on email: the frequency on which the framebuffer is updated and how rays are shot. this would form two options. I want to add an option for the "how rays are shot". fb was just an example for a long letter example. Which name would better describe this parameter? tr?
17:08.05 brlcad that rabbit hole runs a little deep :)
17:09.25 brlcad my point wasn't specific to -fb, -abc == -a -b -c to getopt (which is highly desireable in some contexts)
17:09.42 brlcad the feature missing is long-opts support, which would let you specify longer name options in addition to one-letter optiosn
17:10.15 brlcad half of rt's short options would be better as long-only options for some form of advanced control
17:11.38 brlcad but like I said, the infrastructure for long options isn't implemented, so better to just pick one of the few remaining one-letter options for now unless you want to tackle implementing long options properly (new libbu api)
17:12.12 kunigami hehe ok. Will choose one of the remaining :)
17:12.19 brlcad :)
17:13.01 brlcad looks like -m -y -z -L -Y -Z plus some punctuation are all that remain
17:15.39 brlcad given -l is lighting model, -L for firing pattern might work well
17:18.36 brlcad another option might be to overload the -Q option or -B option
17:18.51 brlcad looks like -b might be fair game too..
17:22.08 brlcad definitely fair game, it's the same as -j
17:22.54 brlcad so I suggest -L, -Q, or -b
17:23.40 brlcad the latter two require a little refactoring, but seem most appropriate
17:25.43 brlcad kunigami: suggest writing up the proposed usage change like what bhinesley did for edit, either as a comment or wiki dev page would be sufficient
17:26.05 brlcad to make sure the usage is clean and impact minimal before you run down a path
17:27.14 brlcad rt is a critical path, so should make sure there's extra thought put into how the new options will get used
17:33.31 CIA-62 BRL-CAD: 03brlcad * r45812 10/brlcad/trunk/src/libwdb/ (CMakeLists.txt Makefile.am extr.c extrude.c): rename extr.c to extrude.c so that the filename matches the primitiv'es canonical short name. makes it easier to identify what this file contains.
17:35.33 *** join/#brlcad abhi2011 (~chatzilla@ip170-79-211-87.adsl2.static.versatel.nl)
17:44.47 kunigami brlcad: comment right on the code? like rt/main.c or rt/opt.c?
17:45.40 brlcad anywhere, just some place we can collectively see it
17:45.52 kunigami ok!
17:58.49 *** join/#brlcad fosburg (~steve@or-67-238-17-118.dhcp.embarqhsd.net)
18:12.14 brlcad excellent
18:12.35 brlcad couple usage examples would be helpful too in addition to more formalized usage syntax
18:23.00 CIA-62 BRL-CAD: 03brlcad * r45813 10/brlcad/trunk/src/tclscripts/menu_override.tcl:
18:23.00 CIA-62 BRL-CAD: example of why it's useful to see the tclsh warnings.. remove a handful of
18:23.00 CIA-62 BRL-CAD: ::tk:: functions that curiously are living in our sources, yet they don't appear
18:23.00 CIA-62 BRL-CAD: to have any overridden behavior. menus in mged tested fine without, so let the
18:23.01 CIA-62 BRL-CAD: tk guys manage their own code. remove our fork.
18:25.58 ``Erik starseeker: tclUnixInit.c:367 or so, #include <sys/utsname.h> for uname(3) on line 471 or so
18:26.22 CIA-62 BRL-CAD: 03brlcad * r45814 10/brlcad/trunk/misc/Doxyfile: output to 'doxygen_output' in whatever our current directory is, no point putting it into misc
18:28.06 CIA-62 BRL-CAD: 03Kunigami 07http://brlcad.org * r3057 10/wiki/User:Kunigami/GSoc2011/RT_Parameters_Proposal: draft to present the new options to be added RT application. Waiting for review before implementing
18:28.28 CIA-62 BRL-CAD: 03Kunigami 07http://brlcad.org * r3058 10/wiki/User:Kunigami/GSoc2011/RT_Parameters_Proposal: /* Examples */ correct formatting
18:29.28 *** join/#brlcad tofu (~sean@BZ.BZFLAG.BZ)
18:29.38 kunigami may I already add osl and oiio code to the svn?
18:30.03 tofu how big are they?
18:30.48 *** mode/#brlcad [+o brlcad] by ChanServ
18:31.01 kunigami osl is 5MB
18:31.24 kunigami oiio is 9.4MB
18:31.50 kunigami or we'll let them be optional external code?
18:31.56 brlcad do they have any dependencies of their own?
18:32.09 brlcad it depends just how complex they are
18:32.20 kunigami yes, a quite long one by the way
18:33.35 brlcad do you have the build documented somewhere?
18:33.48 kunigami http://brlcad.org/wiki/User:Kunigami/GSoc2011/OSL_Tutorial
18:33.59 brlcad excellent, thought you had
18:34.58 starseeker as i recall, OSL has quite the nasty dependency list
18:35.02 kunigami but I didn't mentioned all the dependencies. Most of them are aviable like in mac ports or ubuntu synaptic
18:35.08 starseeker llvm
18:35.10 kunigami starseeker: yup
18:36.24 brlcad ah, right, llvm .. that's certainly a pickle
18:37.14 brlcad pretty much guarantees it'll be disabled on release configurations unless we do some heavy lifting to make it easier
18:37.16 starseeker boost, imath, openimageio
18:38.25 starseeker (imath looks like it may be part of openexr)
18:38.45 kunigami yes, I had to install openexr
18:38.53 brlcad kunigami: how about checking all of the deps into a separate module
18:39.24 starseeker not surpring, openexr really has taken off in the movie industry and that's sony's target use case for this...
18:39.31 brlcad we can hook those in later as an svn external if we want, or extra download step
18:39.41 starseeker votes for that appraoch
18:39.41 brlcad but that way, the N deps are all in one place
18:39.43 starseeker approach even
18:40.51 brlcad then their compilation can be wrapped up with even a simple Makefile that will compile/install all in the proper order
18:41.01 brlcad <PROTECTED>
18:41.17 brlcad kunigami: do you know how to create a new module?
18:41.18 starseeker osl itself uses cmake
18:41.29 kunigami kunigami: nope
18:41.34 kunigami ops
18:41.37 kunigami brlcad: nope
18:41.38 brlcad sure, but it's just one of about a half-dozen or so
18:42.08 starseeker openimagio has one, it looks like
18:42.13 starseeker pretty sure llvm does
18:42.39 kunigami you mean cmake module? like FindXYZ.cmake?
18:43.00 starseeker no, CMakeLists.txt file
18:43.08 brlcad kunigami: basically, you'll checkout https://brlcad.svn.sourceforge.net/svnroot/brlcad (perhaps with max-depth set to 0 so it doesn't check out the whole repo) and add an 'osl' dir with three subdirs, 'trunk', 'branches', 'tags'
18:43.56 brlcad then add the various OSL packages as subdirs under /svnroot/brlcad/osl/trunk/.
18:44.30 brlcad one dir for each dep, openexr, llmbase, boost, etc
18:44.52 brlcad can skip any external deps that are in /svnroot/brlcad/brlcad/trunk/src/other (like libpng, libz, etc)
18:45.43 starseeker hmm... openexr doesn't have one
18:45.52 starseeker wonder if they'd accept one
18:46.16 brlcad unless we plan on fully managing them, wouldn't bother
18:46.55 brlcad only reason to add them is to have them in revision control so they can be conveniently downloaded if we want to push out binaries with osl enabled
18:47.57 brlcad exr-pix would be cool, that'd be a reason :)
18:49.10 starseeker isn't quite sure how exr would integrate with our tools - we might have to make rt and friends output straight to exr if we wanted to take full advantage of it...
19:03.39 CIA-62 BRL-CAD: 03kunigami * r45815 10/osl/ (. branches/ tags/ trunk/): setting up initial structure for osl code and dependences
19:06.27 *** join/#brlcad fosburg (~steve@or-67-238-17-118.dhcp.embarqhsd.net)
19:12.31 CIA-62 BRL-CAD: 03starseeker * r45816 10/brlcad/trunk/src/other/tcl/CMakeLists.txt: Add one missing file to Windows source list - this new setup, for the first time, allows for a successful run of wish.exe
19:22.44 *** join/#brlcad emagdalena (~emagdalen@216.Red-88-4-184.dynamicIP.rima-tde.net)
19:38.33 CIA-62 BRL-CAD: 03brlcad * r45817 10/brlcad/trunk/misc/ (CMakeLists.txt Makefile.am): the Doxygen paths are already relative, so no need to auto-generate the file with full-paths shoved in. write out to the doc dir.
19:56.07 CIA-62 BRL-CAD: 03Kunigami 07http://brlcad.org * r3059 10/wiki/User:Kunigami: /* Links */ added link to my RT parameters proposal
20:01.04 *** join/#brlcad dli (~dli@dsl-67-204-17-156.acanac.net)
20:03.49 CIA-62 BRL-CAD: 03brlcad * r45818 10/brlcad/trunk/ (16 files in 10 dirs):
20:03.50 CIA-62 BRL-CAD: fix a FIXME, rename the struct curve definition that was embedded into
20:03.50 CIA-62 BRL-CAD: rt_sketch_internal. this creates a new rt_curve structure and moves the
20:03.50 CIA-62 BRL-CAD: associated segment structures into rtgeom. unfortunately requires nmg.h for the
20:03.50 CIA-62 BRL-CAD: knot_vector and cascades a set of name changes, but improvement all around.
20:17.54 *** join/#brlcad abhi2011 (~chatzilla@ip170-79-211-87.adsl2.static.versatel.nl)
20:32.24 CIA-62 BRL-CAD: 03kunigami * r45819 10/osl/trunk/osl/: add just the empty dir for mime-type testing
20:35.00 CIA-62 BRL-CAD: 03kunigami * r45820 10/osl/trunk/osl/CHANGES: add just the empty dir for mime-type testing
21:54.45 *** join/#brlcad ibot (~ibot@rikers.org)
21:54.46 *** topic/#brlcad is BRL-CAD Open Source Solid Modeling || http://brlcad.org || http://sf.net/projects/brlcad || #brlcad logs: http://ibot.rikers.org/%23brlcad/ || BRL-CAD release 7.20.2 is posted (20110701) || BRL-CAD is participating in the ESA Summer of Code in Space!
22:05.20 CIA-62 BRL-CAD: 03brlcad * r45827 10/brlcad/trunk/ (include/raytrace.h src/librt/primitives/sketch/sketch.c): segment magic numbers are presently unsigned long, update pointers accordingly
22:15.48 CIA-62 BRL-CAD: 03brlcad * r45828 10/brlcad/trunk/src/proc-db/sketch.c: now that mk_sketch() releases memory, we can simplify by creating the sketch and all segments on the stack.
22:19.13 CIA-62 BRL-CAD: 03kunigami * r45829 10/osl/trunk/oiio/ (399 files in 82 dirs): adding missing files to oiio
22:21.18 CIA-62 BRL-CAD: 03brlcad * r45830 10/brlcad/trunk/src/proc-db/sketch.c: come to think of it, we don't need ANY stinking dynamic memory allocation. huzzah.
22:25.58 CIA-62 BRL-CAD: 03brlcad * r45831 10/brlcad/trunk/src/proc-db/sketch.c: reduce some more and document the vars
23:38.46 CIA-62 BRL-CAD: 03kunigami * r45832 10/osl/trunk/ilmbase/ (245 files in 69 dirs): adding latest stable version of ilmbase, 1.0.1
23:46.50 CIA-62 BRL-CAD: 03kunigami * r45833 10/osl/trunk/ilmbase/config/Makefile.in: added missing file to ilmbase
23:51.29 CIA-62 BRL-CAD: 03kunigami * r45834 10/osl/trunk/ilmbase/ (7 files in 7 dirs): added missing file to ilmbase (cant understand why some files are not being added)

Generated by irclog2html.pl Modified by Tim Riker to work with infobot.