| 00:12.47 | brlcad | kunigami: they imply different concepts, so yes |
| 00:13.07 | brlcad | the language just describe *how* something should be rendered |
| 00:13.21 | brlcad | the shader system implements the rendering |
| 00:23.11 | kunigami | hmm, in liboptical we have a shader language or a shader system? |
| 00:33.38 | brlcad | heh, system |
| 00:35.38 | brlcad | the shader strings we set on objects could be construed as a primitive language, example: "plastic di=0.4 sp=0.2" another "stack {{plastic} {texture src="file" name="foo.png"}}" |
| 00:39.42 | kunigami | cool. I think I'm understanding |
| 01:05.44 | kunigami | I saw your commentary on my patch. I'm switching from malloc/strncpy to the wrapped version. bu_malloc has a const char *parameter, but I couldn't get its meaning from the commentaries. Looking its definition, it seems that it has debug purposes (or not?). So I'm passing NULL to this function. Is that ok? |
| 01:10.44 | *** join/#brlcad crazy_imp (~mj@a89-182-222-119.net-htp.de) | |
| 02:25.29 | *** part/#brlcad kunigami (~kunigami@201.53.192.197) | |
| 03:21.48 | starseeker | full movie clocks in at just over a gig |
| 03:34.14 | starseeker | and just over 45 minutes |
| 03:34.36 | starseeker | layout's a bit skewed by trunk and brlcad always being present |
| 03:36.25 | starseeker | brlcad: I'll probably have to bring you a dvd - I don't know that my upload connection will tolerate such a huge upload even if bzflag has room |
| 06:18.42 | *** join/#brlcad bhinesley (~bhinesley@adsl-99-125-83-101.dsl.bkfd14.sbcglobal.net) | |
| 06:20.51 | bhinesley | I'm having build issues in Windows/Cygwin. Is Cygwin used to build the releases of BRL-CAD? |
| 06:23.58 | bhinesley | *windows releases |
| 06:33.39 | CIA-52 | BRL-CAD: 0399.125.83.101 07http://brlcad.org * r2761 10/wiki/User:Bhinesley: /* Checklist */ Updated status |
| 06:34.33 | CIA-52 | BRL-CAD: 0399.125.83.101 07http://brlcad.org * r2762 10/wiki/User:Bhinesley: /* Checklist */ removed item no longer working on |
| 06:43.12 | *** join/#brlcad packrat (~packrator@99-67-225-40.lightspeed.livnmi.sbcglobal.net) | |
| 06:52.58 | *** join/#brlcad d_rossberg (~rossberg@BZ.BZFLAG.BZ) | |
| 07:28.05 | bhinesley | Nevermind, found README.Windows |
| 10:05.04 | brlcad | starseeker: more importantly, does the graph go nuts after 2004? |
| 10:06.13 | brlcad | bhinesley: it's not, but it 'should' build .. it's just not a configuration that's tested very often at all. shouldn't be more than a few minor tweaks but if it is, that could be a patch submission |
| 10:12.42 | *** join/#brlcad sachinjain (~sachin@117.211.88.150) | |
| 10:13.16 | brlcad | hello sachinjain, what's your question? |
| 10:13.57 | sachinjain | yeah... |
| 10:14.27 | sachinjain | I was talking about the project....."Vector output from raytracing" |
| 10:15.31 | sachinjain | I wanted to know.....how does brlcad generates raster images? |
| 10:15.40 | brlcad | through raytracing :) |
| 10:16.05 | dloman | Mernin all! |
| 10:16.14 | sachinjain | so....it generates a set of pixels? |
| 10:16.17 | brlcad | so a ray is fired for every pixel, if it hits something, that pixel is shaded according to the properties of what it hits |
| 10:16.21 | brlcad | hello dloman |
| 10:16.46 | sachinjain | ok... |
| 10:17.22 | sachinjain | so...what do u mean by "generate vector drawings" |
| 10:17.42 | sachinjain | we can only generate vector drawings if we assume that we have raster image |
| 10:18.12 | brlcad | the idea with getting vector output is two-fold -- you either are going to still shoot rays and interpolate vector lines (i.e., edge/object detection) ... OR ... you're not really going to shoot rays but instead extrace outline representations "somehow" and project those onto a vector image plane |
| 10:18.44 | brlcad | s/extrace/extract/ |
| 10:20.07 | sachinjain | I have done a project....where I have to a construct a vector image out of raster image |
| 10:20.18 | sachinjain | by using bezier splines |
| 10:20.30 | brlcad | that would be the first method I mentioned |
| 10:20.37 | sachinjain | hmmm |
| 10:21.08 | brlcad | it can work that way, but you have to be really careful about how those curves are constructed |
| 10:21.36 | brlcad | they don't tend to sample well for small resolution images |
| 10:21.43 | sachinjain | yeah |
| 10:21.57 | sachinjain | how small resolution images are we talkin about? |
| 10:22.07 | brlcad | you either need to really increase the grid size or you need adaptive sampling where there are areas of large derivatives |
| 10:22.24 | brlcad | it's user-specified, so pretty much anything |
| 10:22.33 | brlcad | it should still give a sensible result though |
| 10:22.59 | brlcad | if it's basically giving the raster image scaled, that's rather useless |
| 10:23.18 | brlcad | the whole point is to have smooth edges that scale and interpolate cleanly |
| 10:24.43 | brlcad | that's why the method that doesn't involve sampling is superior, but a bit harder |
| 10:25.09 | sachinjain | so what other method you can suggest? |
| 10:25.33 | brlcad | you extract outline representations "somehow" and project those onto a vector image plane |
| 10:25.45 | sachinjain | you mean the second approach |
| 10:25.45 | sachinjain | ? |
| 10:26.01 | brlcad | that would be the other method |
| 10:26.35 | brlcad | note that there are lots of degrees of freedom here |
| 10:27.14 | sachinjain | what do you mean by "extracting outline representations"? |
| 10:27.31 | brlcad | you could, for example, query each individual primitive, shoot a grid of rays at it, evaluate bezier curves for that outline, then perform boolean evaluation of the bezier curves all the way back up to the resulting vector iamge |
| 10:28.28 | brlcad | or instead of shooting a grid of rays, you could use the conversion to a boundary representation format (NURBS) and then calculate the edge contours from the NURBS surface, and once again, perform boolean eval of those curves up the hierarchy |
| 10:30.45 | *** join/#brlcad AbhijitKane (~Abhijit@111.93.5.194) | |
| 10:31.44 | brlcad | sachinjain: feel free to post any more questions if they come up -- it's a tricky subject but if you already know how to interpolate bezier curves then you already have an advantage |
| 10:31.57 | sachinjain | yeah.....I know |
| 10:32.01 | brlcad | otherwise, I have to go walkabout for a bit to tame this congestion |
| 10:32.02 | sachinjain | how to interpolate |
| 10:32.54 | sachinjain | but...I am still trying to understand your above suggestion |
| 10:37.10 | sachinjain | ok.... |
| 10:37.21 | sachinjain | so what I understood from your explaination |
| 10:37.24 | sachinjain | is that |
| 10:37.36 | sachinjain | for every object in a scene |
| 10:37.51 | sachinjain | we find the outline of that object |
| 10:38.09 | sachinjain | construct a bezier curve on that outline |
| 10:38.10 | brlcad | yes |
| 10:38.29 | sachinjain | n then do some...."boolean evaluation" |
| 10:38.41 | sachinjain | what is this boolean evaluation? |
| 10:39.12 | brlcad | http://en.wikipedia.org/wiki/Constructive_solid_geometry |
| 10:39.42 | brlcad | so look at that image on the bottom right |
| 10:40.04 | brlcad | that's basically our CSG hierarchy, with primitives at the bottom, boolean operations that combine them up to the final image on the top |
| 10:40.10 | sachinjain | http://en.wikipedia.org/wiki/File:Csg_tree.png |
| 10:40.12 | sachinjain | this one? |
| 10:40.16 | brlcad | we want a vector version of what is on top |
| 10:40.24 | brlcad | yes |
| 10:41.08 | sachinjain | hmm |
| 10:41.15 | sachinjain | that seems pretty interesting |
| 10:41.22 | brlcad | gotta run, others in here should be able to help further .. look forward to talking more! |
| 10:42.21 | sachinjain | yeah sure |
| 10:42.26 | sachinjain | some specific time? |
| 10:43.01 | sachinjain | last question...what do I need to have...to work upon this project? |
| 10:44.44 | sachinjain | Hi starseeker |
| 10:45.52 | dloman | sachinjain: 'what do I need to have' ....as in software installed on your computer? |
| 10:46.24 | sachinjain | dloman: I didn't got u |
| 10:46.25 | sachinjain | ? |
| 10:48.00 | dloman | your question: "What do I need to have...to work upon this project?" |
| 10:48.12 | sachinjain | yeah |
| 10:48.15 | dloman | do you mean: "What software do i need to have installed to work on this project?" |
| 10:48.30 | sachinjain | I already have that software installed |
| 10:48.51 | sachinjain | trying to go through its documentation |
| 10:49.16 | sachinjain | is there any specific part of documentation which I need to go through...for this project |
| 10:50.25 | dloman | you are working on the "generate vector drawings" that you and brlcad were talking about just a few minutes ago? |
| 10:50.35 | sachinjain | yup |
| 10:50.54 | sachinjain | I think I got the whole idea of the project |
| 10:51.38 | dloman | I'm no expert, but I'd suggest diving into the code. libbu was the most informative library for me when I started, and I'd imagine libRT will be very good for you also. |
| 10:54.42 | sachinjain | where can I find these libraries? |
| 10:55.04 | dloman | in the source code: /src/libbu and /src/librt |
| 10:55.32 | dloman | their header files would also be good to start with: /include/bu.h and /include/rt.h |
| 10:59.46 | sachinjain | there is no such file in this path |
| 10:59.57 | sachinjain | :-/ |
| 11:00.16 | sachinjain | I am working on windows |
| 11:00.33 | sachinjain | and the version installed is 7.14.8 |
| 11:00.45 | dloman | ah, winderz. |
| 11:00.59 | sachinjain | should I do my work in linux? |
| 11:01.03 | dloman | okay then, wherever you have it installed: |
| 11:01.13 | dloman | <installpath>/include/bu.h |
| 11:01.25 | dloman | <installpath>/include/rtfunc.h |
| 11:01.32 | dloman | <installpath>/include/rtgeom.h |
| 11:01.33 | sachinjain | no file with name "bu.h" |
| 11:01.58 | sachinjain | I can only find "rtgeom.h" |
| 11:01.59 | dloman | well that's not right |
| 11:02.11 | dloman | did you download binaries or the source? |
| 11:02.32 | sachinjain | just the exe files |
| 11:02.33 | sachinjain | :D |
| 11:02.36 | sachinjain | file* |
| 11:02.47 | dloman | ah, well then that's the issue. |
| 11:02.58 | dloman | if you are going to develop, you are going to need to get an SVN checkout |
| 11:02.59 | sachinjain | hmm |
| 11:03.08 | sachinjain | on eclipse? |
| 11:03.41 | dloman | that's one way to do it, however, I have never built brlcad using eclipse... so i dunno if its possible. |
| 11:03.55 | dloman | most windows developers for brlcad use some flavor of visual studio |
| 11:04.02 | sachinjain | ohhh |
| 11:04.14 | sachinjain | btw...is it easy to do through linux? |
| 11:04.28 | dloman | in my opinion, yeah, much easier. |
| 11:05.03 | sachinjain | ok...so I can work on one of my servers.... |
| 11:05.06 | sachinjain | it has got linux |
| 11:05.40 | sachinjain | how do I get binaries or source on linux? |
| 11:05.56 | dloman | how familiar with *nix are you? |
| 11:06.22 | sachinjain | never heard of it |
| 11:06.24 | sachinjain | :-/ |
| 11:06.45 | dloman | *nix == unix, linux, bsd, etc |
| 11:06.48 | dloman | general term |
| 11:06.52 | dloman | aka 'not windows' |
| 11:06.56 | sachinjain | kk |
| 11:06.57 | sachinjain | kk |
| 11:07.09 | sachinjain | very familiar |
| 11:07.10 | sachinjain | then |
| 11:07.25 | sachinjain | I do all my coding on unix only |
| 11:07.42 | dloman | just get an svn checkout of the brlcad repository. |
| 11:08.27 | dloman | http://sourceforge.net/scm/?type=svn&group_id=105292 |
| 11:08.59 | dloman | aka: svn co https://brlcad.svn.sourceforge.net/svnroot/brlcad/brlcad/trunk directoryOnYourHD |
| 11:10.13 | sachinjain | so...I have to just run this command.... |
| 11:10.18 | sachinjain | "svn co https://brlcad.svn.sourceforge.net/svnroot/brlcad brlcad" |
| 11:10.40 | dloman | well, that's the generic 'svn checkout' command that sourceforge gives |
| 11:10.49 | dloman | the proper version of it is what i wrote above |
| 11:11.03 | dloman | are you familiar with using Subversion at all? |
| 11:11.12 | sachinjain | kk |
| 11:11.19 | sachinjain | I have used once |
| 11:11.24 | sachinjain | while building a compiler |
| 11:11.31 | dloman | okie |
| 11:11.42 | dloman | there's plenty of tutorials on the net |
| 11:11.49 | dloman | but all you really need to know are: |
| 11:12.02 | dloman | svn checkout (or: svn co) |
| 11:12.10 | dloman | svn commit (or: svn ci) |
| 11:12.12 | dloman | and |
| 11:12.15 | dloman | svn up |
| 11:12.20 | sachinjain | okie |
| 11:12.32 | sachinjain | I am following them |
| 11:12.58 | dloman | however, commit permissions are not automatically granted and you will likely have to 'submit a patch' via the sourceforge website. |
| 11:13.14 | dloman | once you get the code checked out, lemme know. |
| 11:13.21 | sachinjain | kk |
| 11:13.23 | *** join/#brlcad packrat (~packrator@99-67-225-40.lightspeed.livnmi.sbcglobal.net) | |
| 11:13.26 | dloman | i *should* be here for the next 8 (ish) hours. |
| 11:13.44 | sachinjain | I will try to do that...as soon as possible |
| 11:15.00 | dloman | is diggin the new GSoC web UI. |
| 11:24.32 | dloman | hrm... where's my profile editing link? Not liking the new UI that much anymore... its pretty, but that's about it. |
| 11:27.33 | dloman | Nice... I can't 'apply' to be a mentor without first applying to be part of GSoC. But the only way to be part of GSoC is to apply to be a mentor. LOL i love it. |
| 11:30.30 | sachinjain | hey dloman....where are you from? |
| 11:30.53 | dloman | I am currently living in Pennsylvania, USA |
| 11:30.54 | dloman | you? |
| 11:31.30 | sachinjain | I am living in Hyderabad, india |
| 11:32.21 | sachinjain | so...you are one of the developer in BRL-CAD? |
| 11:33.58 | dloman | A newbie, but yeah :) |
| 11:34.24 | sachinjain | it seems a very big open source project |
| 11:39.05 | sachinjain | how much time does it generally takes to download all the source and binaries... |
| 11:39.19 | sachinjain | through brl-cad repository |
| 11:39.48 | sachinjain | its taking a hell lot of time |
| 11:43.54 | dloman | its abig repo. we maintain nearly all required deps internally in case they are not present on the current system. |
| 11:54.52 | sachinjain | okie....while other files are being downloaded |
| 11:54.57 | sachinjain | I have |
| 11:55.01 | sachinjain | "ru.h" |
| 11:55.09 | sachinjain | "rtedge.h" |
| 11:55.15 | sachinjain | n "rgeom.h" |
| 11:55.22 | sachinjain | what should I do with them? |
| 11:55.39 | dloman | I'd say read them. Get to know the code base a bit. |
| 11:56.04 | dloman | before you can do any develop that's worth anything, you have to get familiar with the existing code. |
| 11:56.18 | dloman | not *all* of it, but enough to know where you will be primarily working. |
| 11:57.53 | sachinjain | "ru.h" is very big |
| 11:58.05 | sachinjain | how can I get familiar with something like that |
| 11:58.07 | dloman | bu.h? |
| 11:58.12 | sachinjain | yeah.... |
| 11:58.15 | sachinjain | "bu.h" |
| 11:58.52 | dloman | I'd think that looking at the build system, seeing what executables and libraries are made is a good start |
| 11:59.19 | dloman | launch mged and get a feel for what brlcad's primary modeler looks like. |
| 11:59.39 | dloman | then start tracing backwards from the build system. |
| 11:59.50 | dloman | see what the app touches in the way of source files. |
| 12:00.15 | dloman | that should give you a feel for where your project fits in to the big picture, 'source-wise' |
| 12:00.54 | dloman | its a big code base and takes years to get familiar with, so don't sweat it if its still mostly foriegn to you at the end of hte summer :) |
| 12:01.14 | *** join/#brlcad alex_joni (~alex_joni@emc/board-of-directors/alexjoni) | |
| 12:04.04 | CIA-52 | BRL-CAD: 03davidloman * r43974 10/geomcore/trunk/include/IDataSource.h: Require classes implementing IDataSource to have a init() fn. (Even if its a stub). This is needed for both the FS data source(DS) and SVN DS. |
| 12:05.06 | CIA-52 | BRL-CAD: 03davidloman * r43975 10/geomcore/trunk/ (include/FileDataSource.h src/GS/FileDataSource.cxx): Implement minimal init() checks for the FS DataSource. |
| 12:05.53 | sachinjain | is there any README file? |
| 12:06.06 | dloman | yes, should be in the root of the checkout. |
| 12:12.34 | CIA-52 | BRL-CAD: 03davidloman * r43976 10/geomcore/trunk/include/FileDataSource.h: Oops. Can't make an interface mandated function private. Change visibility to public. |
| 12:22.42 | CIA-52 | BRL-CAD: 03davidloman * r43977 10/geomcore/trunk/src/GS/FileDataSource.cxx: Log success/failure of IO tests on the repo path. |
| 12:24.37 | dloman | brlcad: How does Ohloh know about the brlcad repo? Did you have to add the url to ohloh's database or did it just all happen automagically? |
| 12:25.00 | dloman | I only ask cause it seems that ohloh isn't seeing the /geomcore module. |
| 12:25.13 | dloman | and was wondering if that new module needs to be added somewhere |
| 12:26.40 | dloman | hah, nevermind. |
| 12:58.19 | CIA-52 | BRL-CAD: 03davidloman * r43978 10/geomcore/trunk/src/GS/GeometryService.cxx: Quick Type Fix |
| 12:59.53 | CIA-52 | BRL-CAD: 03davidloman * r43979 10/geomcore/trunk/src/GS/DataManager.cxx: Wire in FileDataSource init() call and return check. |
| 13:08.51 | dloman | digs into coreInferface. Need to get ejumakated on dis. |
| 13:15.43 | *** join/#brlcad AbhijitKane (~Abhijit@111.93.5.194) | |
| 13:30.23 | CIA-52 | BRL-CAD: 03Dloman 07http://brlcad.org * r2763 10/wiki/TypeOnlyMsg: Enter the simple wiki page for TYPEONLYMSG |
| 13:32.03 | CIA-52 | BRL-CAD: 03Dloman 07http://brlcad.org * r2764 10/wiki/NetMsgTypes: Admit that this list is not up to date :( |
| 13:36.02 | ``Erik | *readreadread* yowza, blew out my buffer this weekend O.o |
| 13:37.28 | CIA-52 | BRL-CAD: 03Dloman 07http://brlcad.org * r2765 10/wiki/GenericFourBytesMsg: Remove caps |
| 13:37.40 | sachinjain | Dloman: From where should I start checking binary files |
| 13:37.45 | sachinjain | I am stuck all along |
| 13:37.53 | dloman | 'stuck' ? |
| 13:38.00 | dloman | as in you are lost in the code ? |
| 13:38.06 | sachinjain | I mean...I dont know from where should I start |
| 13:38.17 | sachinjain | which file should I look into |
| 13:38.28 | sachinjain | first |
| 13:38.42 | dloman | have you compiled yet? |
| 13:38.45 | CIA-52 | BRL-CAD: 03Dloman 07http://brlcad.org * r2766 10/wiki/GenericEightByteMsg: Write up description for GenericEightByteMsg |
| 13:39.12 | sachinjain | I have run.... |
| 13:39.15 | sachinjain | sh autogen.sh |
| 13:39.19 | sachinjain | ./configure |
| 13:39.22 | CIA-52 | BRL-CAD: 03Dloman 07http://brlcad.org * r2767 10/wiki/GenericEightByteMsg: Drat! CopyPaste strikes again! Fixed. |
| 13:39.31 | sachinjain | n now.."make" is running |
| 13:40.17 | dloman | ``Erik: any 'esssssspert' advice on where a good starting point for learning the code is? |
| 13:40.42 | ``Erik | um, to what end? there're lots of good starting points for different end pionts |
| 13:40.43 | ``Erik | points |
| 13:41.13 | dloman | "generate vector drawings" |
| 13:41.45 | sachinjain | yeah...erik... |
| 13:41.46 | ``Erik | hrm, like an svg outputting tool with an rt interface? lemme read the wiki |
| 13:41.49 | sachinjain | please help |
| 13:42.57 | ``Erik | obviously, check out http://brlcad.org/wiki/Google_Summer_of_Code/Checklist |
| 13:42.59 | CIA-52 | BRL-CAD: 03Dloman 07http://brlcad.org * r2768 10/wiki/NetMsgTypes: Add in some descriptions for the simpler messages |
| 13:43.45 | dloman | ``Erik: FYI the wiki was correct on the PING and PONG. HEADER + a single 8byte field. |
| 13:43.56 | ``Erik | doh, musta missed that |
| 13:44.11 | ``Erik | http://brlcad.org/wiki/Vector_output_from_raytracing lists some useful tools/files to look at |
| 13:44.32 | dloman | no worries, i only write wiki pages in bad-engilsh and stupid. You should feel good you're not fluent in those :) |
| 13:45.18 | ``Erik | nah, I'm used to seeing pings only done as "send a ping, save my time locally... wait for the response, compare it to the local time", since clock drift between two machines is inevitable |
| 13:46.13 | ``Erik | my guess is that brlcad means to take an approach similar to rtedge (src/rt/viewedge.c) to sample and then string it together into a vector set by line/curve fitting |
| 13:47.02 | ``Erik | so running rtedge and looking at viewedge.c would be the right beginning point for the BRL-CAD side, the papers good for the algorithm, then figuring out the ps/pdf/svg format for the write phase |
| 13:47.18 | sachinjain | just these two files |
| 13:47.28 | sachinjain | "src/rt/viewedge.c" |
| 13:47.36 | sachinjain | "src/rt/view.c" |
| 13:47.37 | sachinjain | ?? |
| 13:47.54 | ``Erik | that's the starting point... in understanding how it works, many other files will be involved :) all the way down to libbu stuff |
| 13:48.33 | ``Erik | a tool like cscope (or an IDE that does that kind of thing) can be very useful in exploring |
| 13:50.38 | ``Erik | I wonder if finishing up the 'time per ray' raytracer would be a good "acceptance patch" |
| 13:52.58 | dloman | hey brlcad: Can i write the GS in java? I'd be done by the end of the day! ;) |
| 13:53.16 | dli | looks like brlcad need to update 7.18.4 ETA daily :) |
| 14:00.14 | d_rossberg | dloman: any questions about the coreInferface? |
| 14:00.28 | *** join/#brlcad sachi1325_ (75d3557b@gateway/web/freenode/ip.117.211.85.123) | |
| 14:02.52 | dloman | d_rossberg: not yet, still reading :) |
| 14:09.30 | starseeker | dloman: depending on where we are Wednesday, you may have to try it :-/ |
| 14:09.53 | dloman | i just cant seem to program fast in c or c++ :/ |
| 14:10.13 | starseeker | is down the svn rabbithole |
| 14:10.41 | starseeker | dloman: if it really would help, can you prototype the whole thing in java in a day and have something working? |
| 14:10.55 | dloman | quite likely |
| 14:11.26 | starseeker | unless ``Erik disagrees, I'd say having SOMETHING that runs is critical right now |
| 14:11.42 | dloman | currently, it runs just fine =D |
| 14:11.50 | starseeker | geometry is moving across the wire? |
| 14:12.05 | dloman | .... it runs just fine! =D |
| 14:12.23 | starseeker | lol |
| 14:13.05 | starseeker | I can disassemble and reassemble most (not all) of the .g, but I can't yet apply changes |
| 14:13.37 | starseeker | that's what I'll be having to tackle over the next few days |
| 14:14.39 | starseeker | I'm hoping the file backend will suffice to iron out the "moving bits of geometry across the wire" issues (even if the .g file is a rather... large bit of geometry) |
| 14:15.50 | starseeker | dloman: I'm guessing byte arrays of the bu_external variety are well suited to your needs? |
| 14:16.22 | dloman | so long as its got ALL the data for the dbobject, yup! |
| 14:16.43 | starseeker | one of the outstanding issues is why the region_id information is getting stripped by the approach I am taking |
| 14:17.27 | starseeker | I'm using the internal to external and external to internal routines, which is pretty much the same level the dbio layer uses |
| 14:18.12 | starseeker | unfortunately, that means where precisely I'm losing the region_id info is a bit murky |
| 14:19.08 | dloman | ``Erik: lynx is pretty neat :) |
| 14:20.52 | CIA-52 | BRL-CAD: 03erikgreenwald * r43980 10/geomcore/trunk/src/GS/testclient/gstestclient.c: add start (clientside) timestamp |
| 14:22.00 | CIA-52 | BRL-CAD: 03davidloman * r43981 10/geomcore/trunk/prototyping/: Add in a prototyping directory for in process work. |
| 14:33.45 | dloman | starseeker: so what did we descide: we are, or are NOT compatable with the Apache license? |
| 14:33.53 | dloman | Apache v2.0 that is. |
| 14:33.57 | starseeker | we're fine to use it, we just can't mix code |
| 14:34.32 | starseeker | that's why the big change with the svnTest app |
| 14:34.57 | starseeker | I originally started by taking the svn client code and modifying, but now I'm just using the library APIs |
| 14:35.21 | dloman | kk |
| 14:35.42 | starseeker | which would have had to happen eventually anyhow, since the client APIs are too high level for us, but it kills two birds with one stone |
| 14:36.13 | starseeker | if we ever do a geometry specific backend, that'll probably have to be Apache |
| 14:36.14 | *** join/#brlcad adityag (~ADITYA@182.237.144.88) | |
| 14:36.32 | starseeker | but as with most things, we'll do that if/when need to so it's not an immediate concern |
| 14:36.59 | CIA-52 | BRL-CAD: 03erikgreenwald * r43982 10/geomcore/trunk/src/GS/testclient/gstestclient.c: woops, bufp, not buf |
| 14:38.32 | starseeker | ``Erik: do you know enough about the db read/write interface to know why rt_db_cvt_to_external5 would strip out region_id? |
| 14:39.43 | starseeker | I thought the functions it called would preserve attributes... |
| 14:42.05 | starseeker | I know why _GLOBAL information isn't there, but the region_id thing I don't get |
| 14:59.10 | ``Erik | region_id isn't an attribute, though.. it's a field, no? |
| 15:03.21 | ``Erik | hrm, hm, looks like it's also in the standard attribute set |
| 15:06.30 | *** join/#brlcad Stattrav (~Stattrav@111.93.134.142) | |
| 15:06.30 | *** join/#brlcad Stattrav (~Stattrav@unaffiliated/stattrav) | |
| 15:06.49 | CIA-52 | BRL-CAD: 03davidloman * r43983 10/geomcore/trunk/ (3 files in 2 dirs): Stub in interface requirements for and FileDataSource implementation of putObj(...), the ability to put a single db object into the datasource |
| 15:07.27 | ``Erik | looks like there's stuff to set the attribute to be the same as the GIFT region_id code in rt_comb_export5 |
| 15:07.47 | ``Erik | librt/comb/comb.c:405 |
| 15:14.36 | dloman | d_rossberg: are there samples of how to use your classes to load/save/create .g files anywhere? |
| 15:14.54 | *** join/#brlcad adityag1 (~ADITYA@182.237.144.88) | |
| 15:20.21 | d_rossberg | http://brlcad.org/wiki/CoreInterface_PrintTitle_Example is a simple example of how to load a database and perform a simple operation on it |
| 15:21.07 | dloman | awesome thanks |
| 15:21.20 | d_rossberg | however, first you have to decide which kind of database you want: |
| 15:21.41 | d_rossberg | readonly file, read/write file or in memory |
| 15:21.54 | dloman | reading thru your code, I think 'memory' is best for what I am working on. |
| 15:22.07 | d_rossberg | there it depends if you may or have to save you changes |
| 15:22.31 | dloman | just looking to to read/write from/to disk quickly |
| 15:24.35 | d_rossberg | to get an in memory database in the above example you have to replace BRLCAD::ConstDatabase by BRLCAD::MemoryDatabase, that's all |
| 15:25.17 | dloman | and, to verify, i can still dump an in memory dtaabase to file simply by calling save()... correct? |
| 15:25.33 | d_rossberg | correct |
| 15:25.41 | dloman | awesome. thanks! =D |
| 15:25.54 | d_rossberg | for creating elements and saving the database see e.g. http://brlcad.org/wiki/CoreInterface_Hallo_World_Example |
| 15:28.13 | d_rossberg | and http://brlcad.org/wiki/CoreInterface_Tree_Walker_Example for walking down the tree and writing the elements names to stdout (as an example) |
| 15:29.27 | dloman | nice. just read all your wiki pages. Dunno why i didn't think to check there, lol |
| 15:30.45 | d_rossberg | you may find the Get(objectName) and Set(object) methods handy too (in Constdatabase.h and Database.h) |
| 15:39.48 | *** join/#brlcad kunigami (~kunigami@loco-gw.ic.unicamp.br) | |
| 15:44.56 | CIA-52 | BRL-CAD: 03erikgreenwald * r43984 10/geomcore/trunk/src/GS/testclient/gstestclient.c: add more display stuff |
| 15:57.28 | *** part/#brlcad adityag1 (~ADITYA@182.237.144.88) | |
| 15:59.09 | CIA-52 | BRL-CAD: 03erikgreenwald * r43985 10/geomcore/trunk/src/GS/testclient/gstestclient.c: indent |
| 16:00.11 | CIA-52 | BRL-CAD: 03davidloman * r43986 10/geomcore/trunk/include/ (brlcad/ conf/): Drop unused headers |
| 16:00.30 | dloman | ``Erik: got a second to swing by? |
| 16:00.41 | ``Erik | sure |
| 16:01.21 | CIA-52 | BRL-CAD: 03erikgreenwald * r43987 10/geomcore/trunk/src/GS/ (21 files in 2 dirs): indent |
| 16:05.56 | *** part/#brlcad sachinjain (~sachin@117.211.88.150) | |
| 16:09.06 | dloman | Hrm... too bad d_rossberg logged off. it looks like his common.h is trying to clobber brlcad's common.h :/ |
| 16:12.57 | dloman | never mind on that, it looks as thought coreInterface's common.h isn't being installed! Ack! |
| 16:16.39 | CIA-52 | BRL-CAD: 03davidloman * r43988 10/rt^3/trunk/ (7 files in 3 dirs): Change core interface's common.h to cicommon.h and add it to cmake's install routine. It is needed for using the coreInterface libraries. |
| 16:17.30 | dloman | There. that's a quick fix. renamed common.h to cicommon.h and installed it :) |
| 16:18.27 | dloman | ``Erik: FYI, im wiring up geomcore to have libge as an external dep. So soon, you will need to have rt3 compilied and installed for geomcore to compile nad link. |
| 16:18.36 | dloman | i haven't committed that yet, just giving a heads up |
| 16:18.59 | dloman | 'compile nad link' ....lol that paints a funny picture. |
| 16:36.09 | dloman | starseeker: you still around? |
| 16:37.39 | *** join/#brlcad AbhijitKane (~Abhijit@111.93.5.194) | |
| 16:38.13 | CIA-52 | BRL-CAD: 03erikgreenwald * r43989 10/geomcore/trunk/src/GS/testclient/gstestclient.c: add login |
| 16:42.25 | *** join/#brlcad Stattrav (~Stattrav@117.192.137.238) | |
| 16:42.25 | *** join/#brlcad Stattrav (~Stattrav@unaffiliated/stattrav) | |
| 16:45.52 | CIA-52 | BRL-CAD: 03erikgreenwald * r43990 10/geomcore/trunk/src/libNet/netMsg/NetMsg.cxx: print msgType as hex |
| 17:06.36 | *** join/#brlcad siddharth (~siddharth@117.211.88.150) | |
| 17:13.52 | dloman | starseeker: Had a thought. You could hack that video into 10 minute segments and put it on youtube.... let them deal with the storage. |
| 17:20.04 | CIA-52 | BRL-CAD: 03Erik 07http://brlcad.org * r2769 10/wiki/NetMsgTypes: guessing at payloads |
| 17:20.33 | starseeker | figured to run it by brlcad and see what he thinks of it - probably more tweaking to do |
| 17:20.50 | starseeker | now that the streaming thing appears to work, he can tweak it on his own box too |
| 17:25.59 | CIA-52 | BRL-CAD: 03erikgreenwald * r43991 10/geomcore/trunk/src/utility/GSUuid.cxx: Tricky, uuid returns the length including the trailing 0 where std::string does NOT want it. Was causing an extra byte to be written into the packets. |
| 17:29.01 | dloman | ``Erik: was that was was causing the lockup? |
| 17:29.21 | dloman | ...cause I thought I fixeded that one already... :/ |
| 17:29.48 | brlcad | thx starseeker -- I was thinking that there'd probably need to be some more tweaking |
| 17:30.24 | brlcad | i guess sachinjain was having quite a tough time with some basic concepts |
| 17:31.22 | ``Erik | nah, but it was causing issues... caused an extra 0 to be written behind the uuid, since the geomclient used the same function, it worked (both sides expected the extra byte) O.o |
| 17:31.49 | dloman | righto, but I caught that one with the java junk i was making for the guys upstairs.... |
| 17:31.55 | dloman | guess i didnt commit it :/ |
| 17:32.24 | ``Erik | hm, *shrug* goes to show that completely seperate implementations are valuable :D |
| 17:32.24 | brlcad | region_id is stored as an attribute in v5 during comb export, but in memory, it's both an attribute and a field in the comb internal structure |
| 17:33.58 | brlcad | dloman: anyone can add new projects to ohloh, I forget how brl-cad was added but I took ownership and set up the svn repo links |
| 17:34.07 | brlcad | you do specify checkout points for them to track |
| 17:34.33 | dloman | yeah, i saw that right after i posted in the channel :) |
| 17:34.56 | brlcad | for the statistics to work, the specifically mention not listing branches unless they're fully self-contained/separate codes |
| 17:35.18 | starseeker | brlcad: I'm using rt_db_cvt_to_external5 to export and rt_db_external5_to_internal5 to import, but somehow g_diff is reporting region_id differences |
| 17:35.26 | brlcad | which geomcore would qualify, but not rt^3 with all of the other code |
| 17:35.37 | brlcad | starseeker: why so low? |
| 17:36.19 | starseeker | getting miminal bu_external byte arrays to feed directly into the subversion fs |
| 17:38.08 | brlcad | db_get_external() should give you the appropriate bu_external() |
| 17:38.34 | *** join/#brlcad sachinjain (~sachin@117.211.88.150) | |
| 17:39.23 | starseeker | do I still use rt_db_external5_to_internal5 to reassemble? |
| 17:39.40 | brlcad | not sure what rt_db_external5_to_internal5()'s purpose specifically is |
| 17:39.45 | brlcad | have to look it up |
| 17:39.49 | starseeker | k |
| 17:39.49 | brlcad | I've used db5_get_raw_internal_ptr() in the past |
| 17:40.09 | brlcad | it'll take that raw bu_external and give you an uncracked internal |
| 17:40.10 | starseeker | actually, looking closer it's only the region_id -1 cases where it didn't preserve it |
| 17:40.39 | brlcad | you still probably uncovered api inconsistency |
| 17:40.47 | brlcad | what'd it do with then? |
| 17:41.08 | starseeker | either didn't preserve them or didn't assign them on import, not sure which |
| 17:41.23 | starseeker | wonder if it's a signed/unsigned assumption somewhere |
| 17:41.25 | brlcad | so just no attribute |
| 17:41.29 | starseeker | right |
| 17:41.59 | starseeker | region_id WAS preserved on regions that had region flag and non-negative region id, from the looks of it |
| 17:42.51 | brlcad | there's no definition of valid region_id values, so technically, that's just like it dropping a region id of 1000 |
| 17:43.11 | starseeker | nods |
| 17:43.36 | starseeker | I can try the db_get_external and db5_get_raw_internal and see if that does the trick... |
| 17:43.50 | sachinjain | hi brlcad |
| 17:44.11 | starseeker | is a little itchy operating at this level of dbio - new turf |
| 17:44.31 | starseeker | plus I've still got to start slogging through how to do and apply diffs... |
| 17:44.36 | dloman | brlcad: if I wanted to get the byte equivalent of a memory database out of an rt_i, where would I look? |
| 17:44.59 | *** join/#brlcad sachi1325 (75d3557b@gateway/web/freenode/ip.117.211.85.123) | |
| 17:45.03 | brlcad | starseeker: looks like your routine calls my routine :) |
| 17:45.14 | starseeker | heh |
| 17:45.16 | starseeker | phooey |
| 17:45.21 | brlcad | plus does some more work |
| 17:45.26 | starseeker | so much for dodging the bullet that way |
| 17:45.37 | sachinjain | brlcad : do you remember me |
| 17:45.43 | sachinjain | we had a talk |
| 17:45.44 | starseeker | what I am doing seems to work surprisingly well, except for that one case |
| 17:45.48 | brlcad | the docs on rt_db_external5_to_internal5() sound like it should do what you want |
| 17:45.57 | brlcad | so it's more who's messing up |
| 17:46.07 | starseeker | nods - was afraid of that |
| 17:46.12 | brlcad | sachinjain: yes |
| 17:46.15 | starseeker | yech - bug hunt |
| 17:46.39 | starseeker | at least that -1 thing is a clue |
| 17:46.42 | brlcad | isolated and trivial to reproduce... doesn't get much better |
| 17:46.55 | sachinjain | brlcad : what should I do to get myself considered for that project? |
| 17:47.04 | starseeker | mutter... I suppose |
| 17:47.09 | brlcad | dloman: what do you mean by the "byte equivalent"? |
| 17:47.11 | starseeker | starts setting up the simple test case |
| 17:47.38 | brlcad | sachinjain: we provide a detailed checklist and lots of info on the website |
| 17:48.23 | dloman | brlcad: preferably, a byte array of bytes read from disk that constitute the database file |
| 17:48.48 | brlcad | starseeker: db5_import_attributes() seems to be completely unaware of attribute values so it's got to be during export |
| 17:48.52 | dloman | im working with Daniel's classes now, and am planning on using them to load a .g in |
| 17:49.14 | dloman | at that point, i'd like to simply dump the entire DB into a byte array and sling it down the socket. |
| 17:49.56 | dloman | or could i just read the entire db_i struct from memory? |
| 17:50.00 | starseeker | brlcad: sounds good - I did a keep with one of the -1 combs and am stepping through now |
| 17:50.13 | brlcad | dloman: there are lots of routines related to this (several that starseeker and I are talking about right now) ... it depends |
| 17:50.23 | brlcad | dloman: do you want there to be object awareness? |
| 17:50.31 | dloman | not at this point no. |
| 17:50.37 | brlcad | as in, "im expecting 10 and I received 10 objects"? |
| 17:50.53 | brlcad | then it has absolutely nothing to do with the rt_i |
| 17:51.24 | brlcad | the db_i has a pointer to both a disk pointer and a byte array |
| 17:51.27 | dloman | well right now, I am trying to just get an entire file read and sent. next step is to break the db into objects then send. |
| 17:51.45 | brlcad | dloman: the g_transfer tool does the latter already |
| 17:51.48 | dloman | and be able to cat it togeher on the other side. |
| 17:51.59 | brlcad | src/gtools/g_transfer.c |
| 17:52.06 | brlcad | that's a sender and a receiver all in one |
| 17:52.13 | brlcad | with object counting |
| 17:52.13 | dloman | kk |
| 17:52.17 | dloman | danke |
| 17:53.11 | brlcad | it also works entirely with in-memory databases on the receiving in, which is what you want for service handling |
| 17:53.24 | brlcad | starseeker: curious, what has a -1 region_id set? |
| 17:53.45 | dloman | heh, g_transfer looks strikingly similar to a pkg test file i saw once..... ;) |
| 17:53.51 | brlcad | that could very well be some signed/unsigned nasty |
| 17:54.29 | brlcad | dloman: yeah, it was based off of it .. tpkg implemented ttcp over libpkg, g_transfer implements the same thing but with .g object awareness |
| 17:54.58 | *** join/#brlcad Stattrav_ (~Stattrav@117.192.136.134) | |
| 17:55.27 | starseeker | brlcad: ktank.g has a number of assemblies that have that setting |
| 17:55.36 | brlcad | very preliminary "geometry service" work way back when long before geometry service was being pushed, making sure that in-memory database processing worked |
| 17:55.39 | starseeker | possibly havoc too, but haven't confirmed that yet |
| 17:55.40 | brlcad | (it didn't originally) |
| 17:55.47 | brlcad | k |
| 17:56.55 | starseeker | Oooo! |
| 17:57.11 | starseeker | a keep on the same object also wipes out that region_id setting |
| 17:57.26 | starseeker | so it's not just my low level stuff, it looks like a legit bug |
| 18:00.28 | brlcad | so now, does the in-mem have it set as -1? |
| 18:01.03 | brlcad | looks like the attribute import/export code is ignorant, just treats them as strings |
| 18:01.18 | brlcad | that leaves the comb code |
| 18:02.54 | CIA-52 | BRL-CAD: 03Erik 07http://brlcad.org * r2770 10/wiki/NetMsgTypes: GSPONG is 0x62, not 0x61 |
| 18:05.41 | CIA-52 | BRL-CAD: 03Erik 07http://brlcad.org * r2771 10/wiki/GeometryServiceNetworkProtocol: Message Length does not include magic/length values. |
| 18:06.35 | CIA-52 | BRL-CAD: 03erikgreenwald * r43992 10/geomcore/trunk/src/GS/testclient/gstestclient.c: add transmission of remote node name. Fix off by 8 error causing lockup. Formatting cleanup |
| 18:06.46 | dloman | brlcad: looking at Daniel's code. He loads a database by calling rt_dirbuild and getting back a db_i* |
| 18:06.57 | dloman | and a err, |
| 18:07.14 | dloman | i ment 'and getting back an rt_i*' |
| 18:07.55 | dloman | since you're the expert, will the db_i* that the rt_i* have be in a condition where I can use it to get the data I need? |
| 18:08.02 | CIA-52 | BRL-CAD: 03brlcad * r43993 10/brlcad/trunk/src/librt/comb/comb.c: use atol() instead of atoi() since the fields are long. adjust printing routines to print long too. |
| 18:08.20 | brlcad | dloman: yes |
| 18:08.30 | brlcad | an rt_i contains a db_i |
| 18:08.40 | dloman | sexy, thanks! |
| 18:09.00 | dloman | btw, heard you're under the weather. Hope you feel better soon! |
| 18:09.45 | brlcad | the db_i is your handle to the database, it uses a plain FILE * or memory buffer or mapped file, depending on how the data is being managed (e.g., an in-memory-only database has no FILE *) |
| 18:09.58 | brlcad | there are routines for getting the memory buffer or traversing objects on a db_i |
| 18:10.16 | brlcad | it's easy to get both but iterating over objects is actually problably a little easier |
| 18:10.27 | brlcad | yeah, I think ed gave me a cold |
| 18:10.46 | dloman | well, if its any form of justice, he's out again today. ;) |
| 18:10.47 | brlcad | at least, I'm comfortable blaming him for it :) |
| 18:10.51 | dloman | lol |
| 18:10.52 | dloman | nice |
| 18:11.08 | brlcad | I slept for 14 hours last night trying to recover |
| 18:11.25 | dloman | see, now you've gone and made me insanely jealous |
| 18:11.51 | brlcad | I'll gladly come in and cough all over you so you too can feel this "blessing" |
| 18:11.57 | dloman | aahahaha. |
| 18:12.14 | dloman | i have 1600% DV c vitamins coursing thru my veins |
| 18:12.26 | dloman | (dont forget i have virus generators, err, kids, at home) |
| 18:13.00 | brlcad | I rarely ever get sick and get tons of exposure to sick kids too |
| 18:13.36 | brlcad | I'm chaulking this one up to weakened immune system from the long travel combined with complete lack of exercise |
| 18:14.30 | dloman | brlcad: how familiar are you with Daniel's coreInterface stuff? |
| 18:14.44 | brlcad | i've read through it a few times |
| 18:14.48 | dloman | kk |
| 18:14.57 | brlcad | pretty awesome use of in-mem db's |
| 18:15.17 | dloman | is an rt_db_internal* the representation of an object? |
| 18:15.45 | brlcad | that gets a database object in "internal representation" form |
| 18:15.53 | sachinjain | brlcad : is it necessary to submit a patch? |
| 18:16.09 | brlcad | sachinjain: it's highly recommended, however small and simple |
| 18:16.17 | brlcad | just to make sure you can actually read and write code |
| 18:17.14 | brlcad | most orgs have a similar request of applicants, it helps characterize your ability to become familiarized with the source code and communicate a trivial change |
| 18:18.08 | CIA-52 | BRL-CAD: 03erikgreenwald * r43994 10/geomcore/trunk/src/GS/testclient/gstestclient.c: more display stuff |
| 18:18.29 | brlcad | dloman: there are two types of internal representation -- an uncracked and a cracked form -- the GS should never have to deal with a cracked form (i.e. where it becomes aware of the radius value on a sphere) |
| 18:19.03 | dloman | nods. |
| 18:19.05 | brlcad | iirc, rt_db_get_internal is going to be the uncracked from, where you have the name and entity type |
| 18:19.49 | brlcad | major performance win to not deserialize fully |
| 18:19.55 | dloman | right no. |
| 18:20.01 | dloman | err, right on. |
| 18:20.53 | dloman | I am trying to use coreInterface as much as possible, fyi. The Object class has a db_i* pointer, rt_db_internal*, directory* and resource* |
| 18:21.02 | *** part/#brlcad kunigami (~kunigami@loco-gw.ic.unicamp.br) | |
| 18:21.28 | brlcad | sounds like the appropriate minimum |
| 18:21.50 | dloman | from what little I know (via crash course over the last 24 hours) I think i have to grab the 'serialized' data out of the rt_db_internal.... correct? |
| 18:22.46 | brlcad | db_i is a pointer to the object's container, rt_db_internal is a pointer to the object's data, directory is a pointer to a tree-prep'd record from the db_i, and resource is "magic" that makes it all work faster on multiprocessor systems |
| 18:23.16 | CIA-52 | BRL-CAD: 03Erik 07http://brlcad.org * r2772 10/wiki/NewSessionReqMsg: New page: Two (GS style network order uint32_t followed by ascii, no terminating 0) strings First is username Second is password (in plain text) |
| 18:23.29 | dloman | "Object's Container" ... as in the database file? |
| 18:23.36 | brlcad | the rt_db_internal IS the object in a half-serialized, half-deserialized form .. for schlepping it over the wire, you want to convert from internal to external form |
| 18:23.41 | starseeker | ok, rt_db_get_intern returns an intern that DOES have a populated idb_avs structure... |
| 18:23.49 | brlcad | dloman: it's not necessarily a file, but yes |
| 18:23.56 | brlcad | it's just "the database" |
| 18:24.09 | dloman | doh. I used the word file. ;) |
| 18:24.40 | starseeker | and correctly populated |
| 18:25.18 | CIA-52 | BRL-CAD: 03Erik 07http://brlcad.org * r2773 10/wiki/Common_NetMsg_Exchanges: list initial connect pattern |
| 18:25.35 | dloman | brlcad: the internal->external conversion somewhere in raytrace.h ? |
| 18:26.08 | ``Erik | rt_*_export5 |
| 18:26.45 | brlcad | dloman: of course :) |
| 18:26.53 | brlcad | dloman: see send_to_server() in g_transfer.c |
| 18:27.03 | brlcad | does exactly what you should be needing |
| 18:27.28 | siddharth | hello |
| 18:27.37 | ``Erik | ah, db_get_external |
| 18:27.50 | siddharth | for the patch thing,what should we do exactly? |
| 18:27.54 | siddharth | any ideas? |
| 18:28.04 | brlcad | you can go lower-level and use the export routines, but db_get_external() is a lot simpler, just taking a directory pointer |
| 18:28.18 | brlcad | siddharth: it's entirely up to you |
| 18:28.30 | brlcad | the more impressive your patch, the more impressive your submission |
| 18:28.39 | dloman | ``Erik: thanks for all the wiki-fu. My heads spinning :/ |
| 18:28.46 | brlcad | something simple to show that you can read/write code is a minimum basic, siddharth |
| 18:28.57 | siddharth | ok thanks :) |
| 18:29.06 | brlcad | siddharth: you can start with just about anything in our BUGS file or TODO file or something in one of our trackers |
| 18:29.12 | ``Erik | complete circles? will there be split pea soup vomit, I skipped lunch :/ |
| 18:29.38 | brlcad | starseeker: jeez, I'm not seeing anything reading code on my end |
| 18:29.41 | dloman | okay, see... there's the 'line'... and you just crossed it. |
| 18:29.49 | brlcad | hopefully you have better luck with the debugger |
| 18:30.56 | siddharth | Ok..one more question,what can we do in BUGS file? |
| 18:31.35 | brlcad | siddharth: next you're going to ask me where and how to fix the bug? |
| 18:31.38 | brlcad | is this 20 questions? :) |
| 18:31.48 | siddharth | lol :P |
| 18:31.57 | brlcad | you can do any of them... |
| 18:32.33 | *** join/#brlcad kunigami (~kunigami@loco-gw.ic.unicamp.br) | |
| 18:32.34 | brlcad | some are hard, some are easy -- you have to figure that out |
| 18:32.35 | siddharth | ok ill try them out :) |
| 18:32.40 | starseeker | brlcad: yeah, this is an annoying bugger |
| 18:33.10 | brlcad | siddharth: if you need more specific hand-holding, there are some code projects listed at http://brlcad.org/wiki/Quickies |
| 18:33.39 | siddharth | thanks |
| 18:33.47 | brlcad | some of those, however, are harder than the BUGS and TODO items |
| 18:34.33 | starseeker | brlcad: ah HAH |
| 18:34.48 | starseeker | the internal representation is being altered by rt_comb_export5 |
| 18:35.09 | starseeker | that's where the ip->idb_avs.count changes from 1 to 0 |
| 18:39.03 | dloman | Hrm, hitting a C++ knowledge wall. The only way to know what type class you are dealing with is to attempt a dynamic_cast<> and then check the result for NULL ? |
| 18:39.08 | dloman | ...anyone? |
| 18:39.29 | starseeker | brlcad: I think I've got it |
| 18:39.43 | starseeker | not sure what to do about it though |
| 18:40.14 | starseeker | comb.c:358 - encodes "other stuff" as attributes |
| 18:40.37 | starseeker | the region_id of the comb itself (internally) is out of sync with the region_id string attribute |
| 18:41.38 | starseeker | line 405 checks for a non-zero comb->region_id |
| 18:42.05 | starseeker | it doesn't find it (because it's checking the comb's data structure, not the string attribute) |
| 18:42.36 | starseeker | so it runs bu_avs_remove on the avsp and strips region_id |
| 18:44.14 | starseeker | in effect, this aspect of the comb export makes it impossible to have separate values in the comb data structure and the associated attribute |
| 18:44.45 | starseeker | dloman: uh, not sure |
| 18:45.07 | ``Erik | for c++, you can enable rtti and do 'isInstanceOf()' or something |
| 18:45.32 | ``Erik | but there's overhead to enabling rtti |
| 18:45.35 | dloman | just looked it up. FYI dynamic cast will return a NULL if a type cast fails and you're dealing with pointers, but throws an Exception if you're dealing with references. |
| 18:45.45 | starseeker | does typeid help any? |
| 18:46.27 | starseeker | http://en.wikipedia.org/wiki/Typeid |
| 18:56.06 | CIA-52 | BRL-CAD: 03erikgreenwald * r43995 10/geomcore/trunk/src/GS/testclient/gstestclient.c: hoist time function |
| 19:05.40 | *** join/#brlcad Ralith (~ralith@S010600221561996a.vc.shawcable.net) | |
| 19:06.45 | *** join/#brlcad cjdevlin (~devlin@d118-75-70-176.try.wideopenwest.com) | |
| 19:07.33 | brlcad | starseeker: it's saying you have to create a profile before I can add you (on socghop.appspot.com) |
| 19:07.58 | starseeker | k, one sec |
| 19:08.50 | brlcad | same thing for ed's account |
| 19:09.03 | brlcad | dloman: did you create a link_id yet? |
| 19:09.09 | dloman | neat. coreInterface just bombed me out: http://pastebin.mozilla.org/1193575 |
| 19:09.17 | dloman | ....can't say that I have. |
| 19:09.31 | dloman | socghop.appspot.com? |
| 19:10.02 | dloman | I've registered that site and applied to be a brlcad mentor. |
| 19:10.07 | dloman | ...is that a link_id ? |
| 19:10.46 | dloman | man, what a terrible day. |
| 19:11.02 | dloman | im missing blantantly obivous things |
| 19:11.09 | dloman | brlcad: yes, i have a link_id |
| 19:11.14 | dloman | do you want it? |
| 19:11.14 | starseeker | brlcad: uh... where do I create a profile? |
| 19:11.16 | brlcad | dloman: when did you submit the request? |
| 19:11.21 | starseeker | this new site is less than helpful |
| 19:11.34 | dloman | http://socghop.appspot.com/gsoc/profile/google/gsoc2011 |
| 19:11.37 | brlcad | if you sent it before the site change, then you'll have to resubmit it |
| 19:11.49 | dloman | brlcad: this morning, if it didn't mess up on me. |
| 19:11.56 | brlcad | regardless you'll need to resubmit it because you're not in the pending requests queue :) |
| 19:11.59 | dloman | brlcad: am i not showing up? |
| 19:12.05 | dloman | okie, will do. |
| 19:12.11 | brlcad | daniel's came through |
| 19:12.21 | starseeker | dloman: that site isn't accessible because I don't have a profile |
| 19:12.38 | starseeker | Oh, I see it |
| 19:12.45 | starseeker | growl |
| 19:12.50 | brlcad | likes the new look |
| 19:12.56 | brlcad | work in progress, but it's better |
| 19:13.10 | dloman | i like the look also, the navigation needs a bit of work |
| 19:13.12 | brlcad | just not quite ready for production |
| 19:13.18 | dloman | brlcad: submitted |
| 19:13.36 | brlcad | got it and approved |
| 19:13.47 | dloman | smashing old chap! |
| 19:15.37 | brlcad | note that anything that redirects to www.google-melange.com may be blocked ... but socghop.appspot.com works, just edit the url manually |
| 19:15.58 | brlcad | someone needs to send a request in to get it unblocked |
| 19:17.04 | ``Erik | beat, I broke it :D |
| 19:17.07 | ``Erik | neat, even |
| 19:17.15 | brlcad | yeah I see that |
| 19:17.33 | brlcad | I can withdraw it, but not approve |
| 19:17.41 | brlcad | looks like admins are auto-mentors this year |
| 19:17.41 | ``Erik | when I click anything either 'accept' or 'reject', I get "You cannot be a mentor for BRL-CAD to access this page." |
| 19:18.12 | brlcad | heh, it let me withdraw the request |
| 19:18.12 | starseeker | brlcad: sent |
| 19:19.22 | brlcad | just need to get ed, larry, tom, and curly registered |
| 19:20.00 | dloman | Moe? |
| 19:20.08 | brlcad | that'd be ed |
| 19:20.15 | dloman | *snicker* |
| 19:20.29 | brlcad | although he does a great curly |
| 19:21.50 | starseeker | brlcad: what do you think about comb and attributes? |
| 19:21.57 | brlcad | was just looking at that |
| 19:24.02 | *** join/#brlcad sachinjain (~sachin@117.211.88.150) | |
| 19:35.35 | bhinesley | FYI, ACM student membership is dirt cheap, and it comes with a MSDN Academic Alliance account, which provides Visual Studio 2005 Professional (and many others) for free. |
| 19:42.01 | brlcad | dloman: FileDataSource::getObj() .. when is the iterator incremented? |
| 19:42.41 | brlcad | during Good()?? |
| 19:42.48 | dloman | nice catch, thanks :) |
| 19:43.01 | brlcad | same in FileDataSource::getObjs() |
| 19:43.31 | dloman | getObj() is only supposed to get ONE object, so no inrementing needed. |
| 19:43.44 | dloman | this is still just a 'proof' that I can actually do this :) |
| 19:43.50 | dloman | cleanup to follow |
| 19:43.56 | *** part/#brlcad sachinjain (~sachin@117.211.88.150) | |
| 19:44.25 | brlcad | should toss-in FIXME's though when the code doesn't do what the function suggests, so it's not lost down the road |
| 19:44.36 | dloman | right on |
| 19:44.37 | brlcad | and ends up being a multi hour/day debugging |
| 19:45.21 | dloman | Hrm, even with the iterator incrementor, it still bombs. |
| 19:45.48 | brlcad | it's bombing an uninitialized vls .. which could be lots of things |
| 19:46.09 | dloman | righto. I'll check it out tomarrow.... I'm fried :( |
| 19:46.11 | CIA-52 | BRL-CAD: 03davidloman * r43996 10/geomcore/trunk/CMake/FindBRLCAD.cmake: Make FindBRLCAD.cmake find libge. Likely not the best spot for this lib, since its in the rt3 module, but it works for now. |
| 19:46.13 | CIA-52 | BRL-CAD: 03davidloman * r43997 10/geomcore/trunk/ (8 files in 2 dirs): Wire in libge (aka coreInterface) classes for loading and saving .g databases. Implement bare bones read/write for .g files in the FileDataSource class. |
| 19:46.35 | CIA-52 | BRL-CAD: 03davidloman * r43998 10/geomcore/trunk/tests/GS/ (CMakeLists.txt FileDataSourceTest.cxx): |
| 19:46.35 | CIA-52 | BRL-CAD: Implement basic test for FileDataSource class. A database with a primitive at |
| 19:46.35 | CIA-52 | BRL-CAD: top works fine, however a combination at top with a primitive as a child causes |
| 19:46.36 | CIA-52 | BRL-CAD: a bomb: http://pastebin.mozilla.org/1193575 Will investigate asap. |
| 19:46.36 | dloman | well that took a while. |
| 19:52.42 | ``Erik | this is requiring rt^3 now? |
| 19:53.29 | dloman | ya, just put that in |
| 19:53.40 | dloman | rt3 should compile and install with no problem. |
| 20:03.19 | ``Erik | heh, libge doesn't seem to be linking libbu :/ |
| 20:08.45 | CIA-52 | BRL-CAD: 03erikgreenwald * r43999 10/rt^3/trunk/src/ (coreInterface/CMakeLists.txt libge/CMakeLists.txt): add BRL-CAD link libraries |
| 20:25.58 | CIA-52 | BRL-CAD: 03Erik 07http://brlcad.org * r2774 10/wiki/GSNet_String: mention lack of terminating NULL |
| 20:26.34 | CIA-52 | BRL-CAD: 03Erik 07http://brlcad.org * r2775 10/wiki/Category:Geometry_Service: New page: Pages related to the GeometryService |
| 20:28.36 | CIA-52 | BRL-CAD: 03Erik 07http://brlcad.org * r2776 10/wiki/NetMsgTypes: fix link |
| 20:29.24 | kunigami | hi, how do I add a regression test? I want to implement one for a function of a library. Should I provide a code with main function calling this function and perform some assertions? |
| 20:31.58 | ``Erik | <PROTECTED> |
| 20:33.19 | kunigami | ok! thanks! |
| 20:33.35 | brlcad | kunigami: if it's only testing the interface, then it's just a unit test and can be added as a noinst binary in any directory (e.g. the examples erik mentioned) |
| 20:34.01 | brlcad | if it's going to compare an interface with known good input that might change down the road, then it can be added as a regression test in the regress/ directory |
| 20:34.24 | brlcad | most of those are shell scripts that perform integration testing and/or regression testing |
| 20:36.05 | CIA-52 | BRL-CAD: 03erikgreenwald * r44000 10/rt^3/trunk/src/ (coreInterface/CMakeLists.txt libge/CMakeLists.txt): woops, old cache, update to new variable names |
| 20:44.02 | kunigami | the function I'm referring to is 'bu_basename', which I think lies on "testing interface" case. What do you mean by 'noinst' binary? |
| 20:44.36 | starseeker | a noinst binary refers to a binary that has build logic to create it but not install it |
| 20:44.44 | starseeker | e.g. a "make install" won't do anything with it |
| 20:45.03 | starseeker | check the Makefile.am in src/libbn for bntester, for example |
| 20:45.40 | kunigami | hmm perfect! thank you |
| 21:02.22 | kunigami | ok, so I also have to modify Makefile.am template. I need to add a rule to compile my tester program and declare it to be noinst_PROGRAM. one more doubt: what means FAST_OBJECTS on the Makefile at src/libbu? |
| 21:02.40 | kunigami | *Makefile.am |
| 22:51.51 | *** join/#brlcad Ralith (~ralith@d142-058-175-056.wireless.sfu.ca) | |