Exhibit *ex;
public:
+ Quat rotation, grab_rot;
SceneNode node;
ExhibitSlot(Exhibit *ex = 0);
class ExhibitManager {
private:
std::vector<Exhibit*> items, stashed;
+ int cur_stashed;
std::vector<ExhibitSlot*> exslots;
// TODO kdtree of slots for quick nearest queries
+ Scene *own_scn; // scene to manage all exhibits not taken from an existing scene
+
public:
ExhibitManager();
~ExhibitManager();
ExhibitSlot *nearest_empty_slot(const Vec3 &pos, float max_dist = 10) const;
void stash_exhibit(Exhibit *ex);
+ Exhibit *unstash_exhibit();
void update(float dt = 0.0f);
void draw() const;