Oh, I think I've just found a nice and clever way of doing it. Let's stop pretending that altitudes are special. After all, the axes altitude, latitude and longitude are measured on are all orthogonal. The only difference is that we use degrees to measure one and meters to measure the other (because the earth just isn't flat). The "position" in time-position-velocity (TPV) is traditionally understood to also contain altitude information.
This has the advantage of keeping the Position(ing)Error object consistent with the way it works now, and then we only have to remove the IPositioningReceiver.altitudeReceived callback and merge it with IPositioningReceiver.positionReceived, and then add a bunch of objects for describing all sorts of errors (ClimbError, HeadingError...), rename PositioningError to PositionError and add it as a parameter on positionReceived, and similarly add a parameter for all of the other callbacks except for beaconInformationReceived. Make sense to anyone else but me? Thanks for listening Laurens _______________________________________________ Twisted-Python mailing list Twisted-Python@twistedmatrix.com http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-python