Sirikata
|
PintoServerQuerier is an interface for discovering other space servers which must be queried for Pinto results. More...
#include <PintoServerQuerier.hpp>
Public Member Functions | |
virtual | ~PintoServerQuerier () |
virtual void | updateRegion (const BoundingBox3f ®ion)=0 |
Update this server's parameters. | |
virtual void | updateLargestObject (float max_radius)=0 |
Update this server's parameters. | |
virtual void | updateQuery (const String &update)=0 |
Update query parameters with the server. |
PintoServerQuerier is an interface for discovering other space servers which must be queried for Pinto results.
To support multiple implementations (e.g. just getting a list of servers to query based on aggregate solid angle query, getting a cut including very high level aggregates based on aggregate solid angle query, or replicating part or all of the top-level Pinto tree), it only assumes you'll keep the server up-to-date about the region covered by this server, the largest object on the server, and send query updates. Query updates are flexibly formatted. They may be 'static' queries, e.g. a solid angle query containing an angle and maximum number of results, or be commands, e.g. to refine or coarsen the current cut.
virtual Sirikata::PintoServerQuerier::~PintoServerQuerier | ( | ) | [inline, virtual] |
virtual void Sirikata::PintoServerQuerier::updateLargestObject | ( | float | max_radius | ) | [pure virtual] |
Update this server's parameters.
max_radius | size of the largest object in the region |
Implemented in Sirikata::LocalPintoServerQuerier, and Sirikata::MasterPintoServerQuerierBase.
Referenced by Sirikata::LibproxProximityBase::removeObjectSize(), and Sirikata::LibproxProximityBase::updateObjectSize().
virtual void Sirikata::PintoServerQuerier::updateQuery | ( | const String & | update | ) | [pure virtual] |
Update query parameters with the server.
update | a string containing the data to send to the server as an update |
Implemented in Sirikata::LocalPintoServerQuerier, Sirikata::MasterPintoManualServerQuerier, Sirikata::MasterPintoServerQuerier, and Sirikata::MasterPintoServerQuerierBase.
Referenced by Sirikata::LibproxManualProximity::sendReplicatedClientProxMessage(), and Sirikata::LibproxProximity::updateAggregateQuery().
virtual void Sirikata::PintoServerQuerier::updateRegion | ( | const BoundingBox3f & | region | ) | [pure virtual] |
Update this server's parameters.
region | bounding box of the region covered by this server |
Implemented in Sirikata::LocalPintoServerQuerier, and Sirikata::MasterPintoServerQuerierBase.
Referenced by Sirikata::LibproxProximityBase::start(), and Sirikata::LibproxProximityBase::updatedSegmentation().