#include <simgear/compiler.h>
-#include STL_STRING // Standard C++ string library
+#include <string> // Standard C++ string library
+#include <vector>
#include <osg/ref_ptr>
#include <osg/Node>
#include <simgear/props/props.hxx>
#include <simgear/math/sg_random.h>
-SG_USING_STD(string);
-
class SGMatModelGroup;
int get_model_count( SGPropertyNode *prop_root );
- /**
- * Get a specific variant model for the object.
- *
- * @param index The index of the model.
- * @return The model.
- */
- osg::Node *get_model( int index, SGPropertyNode *prop_root );
-
-
/**
* Get a randomly-selected variant model for the object.
*
* @return A randomly select model from the variants.
*/
- osg::Node *get_random_model( SGPropertyNode *prop_root );
+ osg::Node *get_random_model( SGPropertyNode *prop_root, mt seed );
/**
*/
void load_models( SGPropertyNode *prop_root );
- vector<string> _paths;
- mutable vector<osg::ref_ptr<osg::Node> > _models;
+ std::vector<std::string> _paths;
+ mutable std::vector<osg::ref_ptr<osg::Node> > _models;
mutable bool _models_loaded;
double _coverage_m2;
double _range_m;
private:
double _range_m;
- vector<SGSharedPtr<SGMatModel> > _objects;
+ std::vector<SGSharedPtr<SGMatModel> > _objects;
};
#endif // _SG_MAT_MODEL_HXX