[ODE] ODE and OPCODE

Elijah Taylor eatmailinglists at gmail.com
Tue Sep 5 11:38:41 MST 2006


Yes, the namespaces are a bit goofy, especially if you look in
OPC_IceHook.h, which is what allows these structures that are included to be
used:

////// begin code
namespace IceMaths
{
    ...
    #include "Ice/IcePoint.h"
    ...
}

using namespace IceMaths;
////// end code

So there are namespaces declared that these things go into, but they're
immediately made visible by "using namespace foo;" right after the
declaration.  I don't really know what the point of this is, but that's how
it works.

-Elijah

On 9/5/06, Wesley Smith <wesley.hoke at gmail.com> wrote:
>
> Thanks for the responses so far.  I've been looking a bit more
> carefully through the headere files.  Here's what I've noticed about
> my errors:
>
> I'm getting an error in OPC_Common.h: "Point not defined".
>
> In collision_trimesh_internal.h, Opcode.h is included
> |
> |
> > In Opcode.h,  OPC_IceHook.h is included
>      |
>      |
>      |> In OPC_IceHook.h within namespace IceMaths, Ice/IcePoint.h
> where Point is defined
> |
> |
> |>In Opcode.h, in namespace Opcode OPC_Common.h is included
>
>
> Given this structure with the order of includes and namespaces, I
> don't see how the definition of Point in IcePoint.h can make it to
> OPC_Common.h.  How on Earth does it get through those namespace
> declarations?  Yes, the header files are in the right order, meaning
> that Point is theoretically defined in the headerse before
> OPC_Common.h comes along, but given the rules of C++ I don't see how
> it would be in the same namespace.
>
> Anyone have insights here?
>
> thanks,
> wes
> _______________________________________________
> ODE mailing list
> ODE at q12.org
> http://q12.org/mailman/listinfo/ode
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://q12.org/pipermail/ode/attachments/20060905/58df968a/attachment.htm


More information about the ODE mailing list