On Sun, 8 Jul 2007, Charles Henry wrote:
I think I understand now. You pass pointers to structures. That makes a lot of sense.
Actually, GridFlow's struct GridOutlet it's more like a C++ object class, which isn't much different from a C struct, especially as that class doesn't have any virtuals in it. (It has method templates though)
So to flatten the tree for passing, only to be un-flattened afterwards is less efficient than to pass a pointer to the tree.
Yeah, that was what happened when we were wrapping LTI (Aachen university's image library). We were ok to do it for cases where it was merely slowing down because then it allowed better integration with existing GridFlow features, but were thinking about on-demand conversion to get the best of both worlds (speed and flexibility) and then for at least one case, the data wasn't really amenable to be processed by GridFlow, so we left it as in and used pointers to non-Grids (I'm not going to tell you how we did it, because you shouldn't be imitating that solution! it's even crazier)
_ _ __ ___ _____ ________ _____________ _____________________ ... | Mathieu Bouchard - tél:+1.514.383.3801, Montréal QC Canada