Added a way to identify Path* objects.

Sometimes it is necessary to identify to what type of object Path*
points, e.g. does it point to a Path_Line or a Path_Circle.
This is solved in the following way:
- In Path a new type Path::IdentifierType is introduced, which is an enum.
- there is a virtual method introduced GetIdentifier()

Changes committed to the repository

Best regards,
Erwin

Added a way to identify Path* objects.

On Fri, 8 Jun 2012, Erwin Aertbelien wrote:

> Sometimes it is necessary to identify to what type of object Path*
> points, e.g. does it point to a Path_Line or a Path_Circle.
> This is solved in the following way:
> - In Path a new type Path::IdentifierType is introduced, which is an enum.
> - there is a virtual method introduced GetIdentifier()

I think this is a valuable contribution. And this kind of "self
identification" is, in my opinion a "best practice" to follow every time
when objects of a same/similar classwill be examined/updated/... at runtime.

Of course, one needs an "ontology" to be available at runtime in order to
make optimal use of this feature. I mean: one should be able to
_interpret_ what one can (not) do with a Path of a particular type. And,
especially, how one could (not) "blend" two different Paths.

Does someone perhaps know about such an ontology for robot paths?

> Changes committed to the repository
>
> Best regards,
> Erwin

Herman