﻿id	summary	reporter	owner	description	type	status	priority	milestone	component	version	resolution	keywords	cc	i_links	o_links
195	cleanup: src/lib/coord - PNode System	patrick	patrick	"= PNode Major Cleanup =

== Goal ==
Clean up the source, as stated in the [https://dev.orxonox.net/milestone/CleanUp cleanup milestone]

== Additional Requirements ==
 * check for better PNode tree integrity
 * PNode is not reliable, it doesn't do what the user expects it to do (because it is only updated after each mainloop-cycle)
 * coordinates are not updated in real-time, therefore the next object requesting current coordinates gets the old coordinates
 * setAbsCoorSoft() interpolates between two points using quadslerp. This is a good thing to have. But its very dangerous and brings ambiguity with it: someone setting/shifting coordinates interferes with this automatic inline coordinate setting => the object doesn't move or moves very strange => very hard to debug. Rethink this completely
 * create a new delete function e.g. delete() that is used for Pnode internal cleanup => this will have very critical effects on the whole framework. Currently the pnode tree is used to clean up all pnodes. This shouldn't be used anymore since its ambiguous: multiple lists:
   * object manager lists
   * base object class lists
  Choose one to be taken as the deleting containter and only delete objects in this list (not as now partially via pnode tree and partialy via other lists).
 * deleting PNodes: make delete operator private/protected, so pnodes can not be deleted by accident
"	defect	reopened	blocker	Old Orxonox tickets orx-v0	GeneralFramework						
