Mathias Fröhlich:

This one, removes some virtual qualifiers at a private member class of
SGPropertyNode. These virtual qualifiers are really useless and stop the
compiler from inlineing these functions. I gain a single frame with my
favourite aircraft per second!
This commit is contained in:
ehofman
2005-10-14 16:27:06 +00:00
parent 2f3e4ebf39
commit 7f5c3b223a
+12 -12
View File
@@ -1293,11 +1293,11 @@ private:
class entry { class entry {
public: public:
entry (); entry ();
virtual ~entry (); ~entry ();
virtual const char * get_key () { return _key; } const char * get_key () { return _key; }
virtual void set_key (const char * key); void set_key (const char * key);
virtual SGPropertyNode * get_value () { return _value; } SGPropertyNode * get_value () { return _value; }
virtual void set_value (SGPropertyNode * value); void set_value (SGPropertyNode * value);
private: private:
char * _key; char * _key;
SGPropertyNode * _value; SGPropertyNode * _value;
@@ -1310,9 +1310,9 @@ private:
class bucket { class bucket {
public: public:
bucket (); bucket ();
virtual ~bucket (); ~bucket ();
virtual entry * get_entry (const char * key, bool create = false); entry * get_entry (const char * key, bool create = false);
virtual void erase(const char * key); void erase(const char * key);
private: private:
int _length; int _length;
entry ** _entries; entry ** _entries;
@@ -1321,10 +1321,10 @@ private:
friend class bucket; friend class bucket;
hash_table (); hash_table ();
virtual ~hash_table (); ~hash_table ();
virtual SGPropertyNode * get (const char * key); SGPropertyNode * get (const char * key);
virtual void put (const char * key, SGPropertyNode * value); void put (const char * key, SGPropertyNode * value);
virtual void erase(const char * key); void erase(const char * key);
private: private:
unsigned int hashcode (const char * key); unsigned int hashcode (const char * key);