Browse Source

pvector, pmap, etc.

David Rose 24 years ago
parent
commit
28fffee547
100 changed files with 256 additions and 224 deletions
  1. 1 3
      direct/src/dcparser/dcAtomicField.h
  2. 3 6
      direct/src/dcparser/dcClass.h
  3. 2 5
      direct/src/dcparser/dcFile.h
  4. 1 3
      direct/src/dcparser/dcMolecularField.h
  5. 6 0
      direct/src/dcparser/dcbase.h
  6. 1 1
      direct/src/dcparser/primeNumberGenerator.h
  7. 4 2
      dtool/src/dtoolbase/pmap.h
  8. 4 2
      dtool/src/dtoolbase/pset.h
  9. 1 0
      dtool/src/dtoolbase/pvector.h
  10. 1 1
      dtool/src/parser-inc/Sources.pp
  11. 3 4
      dtool/src/parser-inc/map
  12. 3 4
      dtool/src/parser-inc/set
  13. 33 0
      dtool/src/parser-inc/stdcompare.h
  14. 2 2
      panda/src/audio/audio_linux_traits.cxx
  15. 2 2
      panda/src/audio/audio_manager.h
  16. 2 2
      panda/src/audio/audio_midi.h
  17. 2 2
      panda/src/audio/audio_mikmod_traits.cxx
  18. 1 1
      panda/src/audio/audio_pool.cxx
  19. 2 2
      panda/src/audio/audio_pool.h
  20. 2 2
      panda/src/audiotraits/audio_load_mp3.cxx
  21. 2 2
      panda/src/builder/builder.cxx
  22. 2 2
      panda/src/builder/builder.h
  23. 1 1
      panda/src/builder/builderAttribTempl.h
  24. 3 3
      panda/src/builder/builderBucketNode.h
  25. 2 2
      panda/src/builder/builderFuncs.I
  26. 1 1
      panda/src/builder/builderFuncs.h
  27. 2 2
      panda/src/builder/builderNormalVisualizer.h
  28. 3 3
      panda/src/builder/builderPrimTempl.h
  29. 1 1
      panda/src/builder/builderVertexTempl.h
  30. 4 4
      panda/src/builder/builder_headers.h
  31. 2 2
      panda/src/builder/mesherEdge.h
  32. 2 2
      panda/src/builder/mesherFanMaker.I
  33. 3 3
      panda/src/builder/mesherFanMaker.h
  34. 1 1
      panda/src/builder/mesherStrip.I
  35. 4 4
      panda/src/builder/mesherStrip.h
  36. 3 3
      panda/src/builder/mesherTempl.I
  37. 11 11
      panda/src/builder/mesherTempl.h
  38. 3 3
      panda/src/chan/animChannelScalarTable.cxx
  39. 2 2
      panda/src/chan/animControl.h
  40. 2 2
      panda/src/chan/animControlCollection.h
  41. 1 1
      panda/src/chan/animGroup.h
  42. 4 4
      panda/src/chan/auto_bind.cxx
  43. 2 2
      panda/src/chan/movingPartBase.cxx
  44. 2 2
      panda/src/chan/movingPartBase.h
  45. 1 1
      panda/src/chan/partBundle.cxx
  46. 1 1
      panda/src/chan/partBundle.h
  47. 1 1
      panda/src/chan/partGroup.cxx
  48. 3 3
      panda/src/chan/partGroup.h
  49. 1 1
      panda/src/chan/vector_PartGroupStar.h
  50. 1 1
      panda/src/chancfg/chancfg.cxx
  51. 2 2
      panda/src/chancfg/chancfg.h
  52. 1 1
      panda/src/chancfg/chanlayout.cxx
  53. 4 4
      panda/src/chancfg/chanlayout.h
  54. 2 2
      panda/src/chancfg/chansetup.h
  55. 3 3
      panda/src/chancfg/chanwindow.h
  56. 1 1
      panda/src/char/character.h
  57. 1 1
      panda/src/char/characterJoint.h
  58. 2 2
      panda/src/char/computedVertices.cxx
  59. 5 5
      panda/src/char/computedVertices.h
  60. 1 1
      panda/src/char/computedVerticesMorph.h
  61. 1 1
      panda/src/collide/collisionHandlerEvent.h
  62. 3 3
      panda/src/collide/collisionHandlerPhysical.h
  63. 1 1
      panda/src/collide/collisionHandlerPusher.cxx
  64. 1 1
      panda/src/collide/collisionHandlerQueue.cxx
  65. 1 1
      panda/src/collide/collisionHandlerQueue.h
  66. 1 1
      panda/src/collide/collisionLevelState.h
  67. 1 1
      panda/src/collide/collisionNode.cxx
  68. 1 1
      panda/src/collide/collisionNode.h
  69. 2 2
      panda/src/collide/collisionPolygon.cxx
  70. 1 1
      panda/src/collide/collisionSolid.cxx
  71. 4 4
      panda/src/collide/collisionTraverser.h
  72. 5 5
      panda/src/cull/cullState.h
  73. 3 3
      panda/src/cull/cullStateLookup.h
  74. 5 5
      panda/src/cull/cullTraverser.h
  75. 1 1
      panda/src/cull/geomBin.h
  76. 2 2
      panda/src/cull/geomBinBackToFront.h
  77. 2 2
      panda/src/cull/geomBinFixed.h
  78. 2 2
      panda/src/cull/geomBinGroup.h
  79. 1 1
      panda/src/cull/geomBinNormal.h
  80. 2 2
      panda/src/cull/geomBinUnsorted.h
  81. 1 1
      panda/src/device/clientAnalogDevice.h
  82. 3 3
      panda/src/device/clientBase.h
  83. 1 1
      panda/src/device/clientButtonDevice.h
  84. 1 1
      panda/src/device/clientDialDevice.h
  85. 2 2
      panda/src/dgraph/buttonEventDataAttribute.h
  86. 1 1
      panda/src/dgraph/dataGraphTraverser.h
  87. 1 1
      panda/src/display/config_display.h
  88. 1 1
      panda/src/display/displayRegion.h
  89. 1 1
      panda/src/display/display_headers.h
  90. 1 1
      panda/src/display/graphicsChannel.cxx
  91. 2 2
      panda/src/display/graphicsChannel.h
  92. 2 2
      panda/src/display/graphicsLayer.h
  93. 3 3
      panda/src/display/graphicsPipe.h
  94. 3 3
      panda/src/display/graphicsStateGuardian.h
  95. 1 1
      panda/src/display/graphicsWindow.cxx
  96. 3 3
      panda/src/display/graphicsWindow.h
  97. 4 4
      panda/src/display/graphicsWindowInputDevice.h
  98. 1 1
      panda/src/downloader/asyncDownloader.cxx
  99. 9 9
      panda/src/downloader/downloadDb.cxx
  100. 6 6
      panda/src/downloader/downloadDb.h

+ 1 - 3
direct/src/dcparser/dcAtomicField.h

@@ -23,8 +23,6 @@
 #include "dcField.h"
 #include "dcField.h"
 #include "dcSubatomicType.h"
 #include "dcSubatomicType.h"
 
 
-#include <vector>
-
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 //       Class : DCAtomicField
 //       Class : DCAtomicField
 // Description : A single atomic field of a Distributed Class, as read
 // Description : A single atomic field of a Distributed Class, as read
@@ -81,7 +79,7 @@ public:
     bool format_default_value(const string &str, string &formatted) const;
     bool format_default_value(const string &str, string &formatted) const;
   };
   };
 
 
-  typedef vector<ElementType> Elements;
+  typedef pvector<ElementType> Elements;
   Elements _elements;
   Elements _elements;
 
 
   enum Flags {
   enum Flags {

+ 3 - 6
direct/src/dcparser/dcClass.h

@@ -22,9 +22,6 @@
 #include "dcbase.h"
 #include "dcbase.h"
 #include "dcField.h"
 #include "dcField.h"
 
 
-#include <vector>
-#include <map>
-
 class HashGenerator;
 class HashGenerator;
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
@@ -62,16 +59,16 @@ public:
   int _number;
   int _number;
   string _name;
   string _name;
 
 
-  typedef vector<DCClass *> Parents;
+  typedef pvector<DCClass *> Parents;
   Parents _parents;
   Parents _parents;
 
 
-  typedef vector<DCField *> Fields;
+  typedef pvector<DCField *> Fields;
   Fields _fields;
   Fields _fields;
 
 
 public:
 public:
   // These members are built up during parsing for the convenience of
   // These members are built up during parsing for the convenience of
   // the parser.
   // the parser.
-  typedef map<string, DCField *> FieldsByName;
+  typedef pmap<string, DCField *> FieldsByName;
   FieldsByName _fields_by_name;
   FieldsByName _fields_by_name;
 };
 };
 
 

+ 2 - 5
direct/src/dcparser/dcFile.h

@@ -22,9 +22,6 @@
 #include "dcbase.h"
 #include "dcbase.h"
 #include "dcClass.h"
 #include "dcClass.h"
 
 
-#include <vector>
-#include <map>
-
 class HashGenerator;
 class HashGenerator;
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
@@ -57,12 +54,12 @@ public:
 public:
 public:
   // This vector is the primary interface to the distributed classes
   // This vector is the primary interface to the distributed classes
   // read from the file.
   // read from the file.
-  typedef vector<DCClass *> Classes;
+  typedef pvector<DCClass *> Classes;
   Classes _classes;
   Classes _classes;
 
 
 public:
 public:
   // This map is built up during parsing for the convenience of the parser.
   // This map is built up during parsing for the convenience of the parser.
-  typedef map<string, DCClass *> ClassesByName;
+  typedef pmap<string, DCClass *> ClassesByName;
   ClassesByName _classes_by_name;
   ClassesByName _classes_by_name;
 };
 };
 
 

+ 1 - 3
direct/src/dcparser/dcMolecularField.h

@@ -22,8 +22,6 @@
 #include "dcbase.h"
 #include "dcbase.h"
 #include "dcField.h"
 #include "dcField.h"
 
 
-#include <vector>
-
 class DCAtomicField;
 class DCAtomicField;
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
@@ -48,7 +46,7 @@ public:
 public:
 public:
   // These members define the primary interface to the molecular field
   // These members define the primary interface to the molecular field
   // definition as read from the file.
   // definition as read from the file.
-  typedef vector<DCAtomicField *> Fields;
+  typedef pvector<DCAtomicField *> Fields;
   Fields _fields;
   Fields _fields;
 };
 };
 
 

+ 6 - 0
direct/src/dcparser/dcbase.h

@@ -34,6 +34,8 @@
 #include <notify.h>
 #include <notify.h>
 #include <filename.h>
 #include <filename.h>
 #include <numeric_types.h>
 #include <numeric_types.h>
+#include "pvector.h"
+#include "pmap.h"
 
 
 #else
 #else
 
 
@@ -98,6 +100,10 @@ typedef string Filename;
 #define IS_LITTLE_ENDIAN
 #define IS_LITTLE_ENDIAN
 #endif
 #endif
 
 
+#include <vector>
+#include <map>
+#define pvector vector
+#define pmap map
 
 
 #endif  // WITHIN_PANDA
 #endif  // WITHIN_PANDA
 
 

+ 1 - 1
direct/src/dcparser/primeNumberGenerator.h

@@ -36,7 +36,7 @@ public:
   int operator [] (int n);
   int operator [] (int n);
 
 
 private:
 private:
-  typedef vector<int> Primes;
+  typedef pvector<int> Primes;
   Primes _primes;
   Primes _primes;
 };
 };
 
 

+ 4 - 2
dtool/src/dtoolbase/pmap.h

@@ -35,7 +35,8 @@ template<class Key, class Value, class Compare = less<Key> >
 class pmap : public map<Key, Value, Compare, pallocator<pair<Key, Value> > > {
 class pmap : public map<Key, Value, Compare, pallocator<pair<Key, Value> > > {
 public:
 public:
   pmap() : map<Key, Value, Compare, pallocator<pair<Key, Value> > >() { }
   pmap() : map<Key, Value, Compare, pallocator<pair<Key, Value> > >() { }
-  pmap(const pmap<Key> &copy) : map<Key, Value, Compare, pallocator<pair<Key, Value> > >(copy) { }
+  pmap(const pmap<Key, Value, Compare> &copy) : map<Key, Value, Compare, pallocator<pair<Key, Value> > >(copy) { }
+  pmap(const Compare &comp) : map<Key, Compare, pallocator<Key> >(comp) { }
 };
 };
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
@@ -49,7 +50,8 @@ template<class Key, class Value, class Compare = less<Key> >
 class pmultimap : public multimap<Key, Value, Compare, pallocator<pair<Key, Value> > > {
 class pmultimap : public multimap<Key, Value, Compare, pallocator<pair<Key, Value> > > {
 public:
 public:
   pmultimap() : multimap<Key, Value, Compare, pallocator<pair<Key, Value> > >() { }
   pmultimap() : multimap<Key, Value, Compare, pallocator<pair<Key, Value> > >() { }
-  pmultimap(const pmultimap<Key> &copy) : multimap<Key, Value, Compare, pallocator<pair<Key, Value> > >(copy) { }
+  pmultimap(const pmultimap<Key, Value, Compare> &copy) : multimap<Key, Value, Compare, pallocator<pair<Key, Value> > >(copy) { }
+  pmultimap(const Compare &comp) : multimap<Key, Compare, pallocator<Key> >(comp) { }
 };
 };
 
 
 #endif
 #endif

+ 4 - 2
dtool/src/dtoolbase/pset.h

@@ -35,7 +35,8 @@ template<class Key, class Compare = less<Key> >
 class pset : public set<Key, Compare, pallocator<Key> > {
 class pset : public set<Key, Compare, pallocator<Key> > {
 public:
 public:
   pset() : set<Key, Compare, pallocator<Key> >() { }
   pset() : set<Key, Compare, pallocator<Key> >() { }
-  pset(const pset<Key> &copy) : set<Key, Compare, pallocator<Key> >(copy) { }
+  pset(const pset<Key, Compare> &copy) : set<Key, Compare, pallocator<Key> >(copy) { }
+  pset(const Compare &comp) : set<Key, Compare, pallocator<Key> >(comp) { }
 };
 };
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
@@ -49,7 +50,8 @@ template<class Key, class Compare = less<Key> >
 class pmultiset : public multiset<Key, Compare, pallocator<Key> > {
 class pmultiset : public multiset<Key, Compare, pallocator<Key> > {
 public:
 public:
   pmultiset() : multiset<Key, Compare, pallocator<Key> >() { }
   pmultiset() : multiset<Key, Compare, pallocator<Key> >() { }
-  pmultiset(const pmultiset<Key> &copy) : multiset<Key, Compare, pallocator<Key> >(copy) { }
+  pmultiset(const pmultiset<Key, Compare> &copy) : multiset<Key, Compare, pallocator<Key> >(copy) { }
+  pmultiset(const Compare &comp) : multiset<Key, Compare, pallocator<Key> >(comp) { }
 };
 };
 
 
 #endif
 #endif

+ 1 - 0
dtool/src/dtoolbase/pvector.h

@@ -38,6 +38,7 @@ public:
   pvector(const pvector<Type> &copy) : vector<Type, pallocator<Type> >(copy) { }
   pvector(const pvector<Type> &copy) : vector<Type, pallocator<Type> >(copy) { }
   pvector(size_type n) : vector<Type, pallocator<Type> >(n) { }
   pvector(size_type n) : vector<Type, pallocator<Type> >(n) { }
   pvector(size_type n, const Type &value) : vector<Type, pallocator<Type> >(n, value) { }
   pvector(size_type n, const Type &value) : vector<Type, pallocator<Type> >(n, value) { }
+  pvector(const Type *begin, const Type *end) : vector<Type, pallocator<Type> >(begin, end) { }
 };
 };
 
 
 #endif
 #endif

+ 1 - 1
dtool/src/parser-inc/Sources.pp

@@ -1,5 +1,5 @@
 #define INSTALL_PARSER_INC \
 #define INSTALL_PARSER_INC \
     algorithm deque iostream list map memory \
     algorithm deque iostream list map memory \
-    pair queue set stack stdtypedefs.h \
+    pair queue set stack stdcompare.h stdtypedefs.h \
     string vector windows.h zlib.h md5.h files.h hex.h \
     string vector windows.h zlib.h md5.h files.h hex.h \
     nurbs.hh
     nurbs.hh

+ 3 - 4
dtool/src/parser-inc/map

@@ -25,11 +25,10 @@
 #define MAP_H
 #define MAP_H
 
 
 #include <stdtypedefs.h>
 #include <stdtypedefs.h>
+#include <stdcompare.h>
 #include <pair>
 #include <pair>
 
 
-class default_map_compare;
-
-template<class key, class element, class compare = default_map_compare>
+template<class key, class element, class compare = less<key> >
 class map {
 class map {
 public:
 public:
   typedef key key_type;
   typedef key key_type;
@@ -51,7 +50,7 @@ public:
   class difference_type;
   class difference_type;
 };
 };
 
 
-template<class key, class element, class compare = default_map_compare>
+template<class key, class element, class compare = less<key> >
 class multimap : public map<key, element, compare> {
 class multimap : public map<key, element, compare> {
 };
 };
 
 

+ 3 - 4
dtool/src/parser-inc/set

@@ -25,10 +25,9 @@
 #define SET_H
 #define SET_H
 
 
 #include <stdtypedefs.h>
 #include <stdtypedefs.h>
+#include <stdcompare.h>
 
 
-class default_set_compare;
-
-template<class key, class compare = default_set_compare>
+template<class key, class compare = less<key> >
 class set {
 class set {
 public:
 public:
   typedef key key_type;
   typedef key key_type;
@@ -49,7 +48,7 @@ public:
   class difference_type;
   class difference_type;
 };
 };
 
 
-template<class key, class compare = default_set_compare>
+template<class key, class compare = less<key> >
 class multiset : public set<key, compare> {
 class multiset : public set<key, compare> {
 };
 };
 
 

+ 33 - 0
dtool/src/parser-inc/stdcompare.h

@@ -0,0 +1,33 @@
+// Filename: stdcompare.h
+// Created by:  drose (05Jun01)
+//
+////////////////////////////////////////////////////////////////////
+//
+// PANDA 3D SOFTWARE
+// Copyright (c) 2001, Disney Enterprises, Inc.  All rights reserved
+//
+// All use of this software is subject to the terms of the Panda 3d
+// Software license.  You should have received a copy of this license
+// along with this source code; you will also find a current copy of
+// the license at http://www.panda3d.org/license.txt .
+//
+// To contact the maintainers of this program write to
+// [email protected] .
+//
+////////////////////////////////////////////////////////////////////
+
+// This file, and all the other files in this directory, aren't
+// intended to be compiled--they're just parsed by CPPParser (and
+// interrogate) in lieu of the actual system headers, to generate the
+// interrogate database.
+
+#ifndef STDCOMPARE_H
+#define STDCOMPARE_H
+
+template<class key>
+class less {
+public:
+};
+
+#endif
+

+ 2 - 2
panda/src/audio/audio_linux_traits.cxx

@@ -24,12 +24,12 @@
 #include "config_audio.h"
 #include "config_audio.h"
 #include <ipc_thread.h>
 #include <ipc_thread.h>
 #include <ipc_mutex.h>
 #include <ipc_mutex.h>
-#include <set>
+#include "pset.h"
 #include <fcntl.h>
 #include <fcntl.h>
 #include <sys/soundcard.h>
 #include <sys/soundcard.h>
 #include <sys/ioctl.h>
 #include <sys/ioctl.h>
 
 
-typedef set<Buffer*> BufferSet;
+typedef pset<Buffer*> BufferSet;
 
 
 static bool have_initialized = false;
 static bool have_initialized = false;
 static mutex buffer_mutex;
 static mutex buffer_mutex;

+ 2 - 2
panda/src/audio/audio_manager.h

@@ -25,7 +25,7 @@
 
 
 #include <ipc_mutex.h>
 #include <ipc_mutex.h>
 #include <ipc_thread.h>
 #include <ipc_thread.h>
-#include <set>
+#include "pset.h"
 
 
 class EXPCL_PANDA AudioManager {
 class EXPCL_PANDA AudioManager {
 private:
 private:
@@ -46,7 +46,7 @@ private:
 
 
   typedef void UpdateFunc(void);
   typedef void UpdateFunc(void);
   typedef void ShutdownFunc(void);
   typedef void ShutdownFunc(void);
-  typedef set<AudioSound*> LoopSet;
+  typedef pset<AudioSound*> LoopSet;
   static AudioManager* _global_ptr;
   static AudioManager* _global_ptr;
   static UpdateFunc* _update_func;
   static UpdateFunc* _update_func;
   static ShutdownFunc* _shutdown_func;
   static ShutdownFunc* _shutdown_func;

+ 2 - 2
panda/src/audio/audio_midi.h

@@ -20,12 +20,12 @@
 #define __AUDIO_MIDI_H__
 #define __AUDIO_MIDI_H__
 
 
 #include <filename.h>
 #include <filename.h>
-#include <list>
+#include "plist.h"
 
 
 // define an internal representation for a midi file
 // define an internal representation for a midi file
 class AudioMidi {
 class AudioMidi {
 private:
 private:
-  typedef list<string> StrList;
+  typedef plist<string> StrList;
   StrList _seq;
   StrList _seq;
 public:
 public:
   AudioMidi(Filename, int = 1);
   AudioMidi(Filename, int = 1);

+ 2 - 2
panda/src/audio/audio_mikmod_traits.cxx

@@ -22,7 +22,7 @@
 
 
 #include "audio_manager.h"
 #include "audio_manager.h"
 #include "config_audio.h"
 #include "config_audio.h"
-#include <list>
+#include "plist.h"
 #include <serialization.h>
 #include <serialization.h>
 
 
 static bool have_initialized = false;
 static bool have_initialized = false;
@@ -43,7 +43,7 @@ static void initialize(void) {
   md_mixfreq = audio_mix_freq;
   md_mixfreq = audio_mix_freq;
   {
   {
     // I think this is defined elsewhere
     // I think this is defined elsewhere
-    typedef list<string> StrList;
+    typedef plist<string> StrList;
     typedef Serialize::Deserializer<StrList> OptBuster;
     typedef Serialize::Deserializer<StrList> OptBuster;
     StrList opts;
     StrList opts;
     OptBuster buster(*audio_mode_flags, " ");
     OptBuster buster(*audio_mode_flags, " ");

+ 1 - 1
panda/src/audio/audio_pool.cxx

@@ -21,7 +21,7 @@
 #include <config_util.h>
 #include <config_util.h>
 
 
 AudioPool* AudioPool::_global_ptr = (AudioPool*)0L;
 AudioPool* AudioPool::_global_ptr = (AudioPool*)0L;
-typedef map<string, AudioPool::SoundLoadFunc*> SoundLoaders;
+typedef pmap<string, AudioPool::SoundLoadFunc*> SoundLoaders;
 SoundLoaders* _sound_loaders = (SoundLoaders*)0L;
 SoundLoaders* _sound_loaders = (SoundLoaders*)0L;
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////

+ 2 - 2
panda/src/audio/audio_pool.h

@@ -22,7 +22,7 @@
 #include "audio_sound.h"
 #include "audio_sound.h"
 #include "audio_trait.h"
 #include "audio_trait.h"
 #include "config_audio.h"
 #include "config_audio.h"
-#include <map>
+#include "pmap.h"
 #include <pandabase.h>
 #include <pandabase.h>
 #include <filename.h>
 #include <filename.h>
 #include <pointerTo.h>
 #include <pointerTo.h>
@@ -40,7 +40,7 @@ private:
   static AudioPool* get_ptr(void);
   static AudioPool* get_ptr(void);
 
 
   static AudioPool *_global_ptr;
   static AudioPool *_global_ptr;
-  typedef map<string, PT(AudioTraits::SoundClass) > SoundMap;
+  typedef pmap<string, PT(AudioTraits::SoundClass) > SoundMap;
   SoundMap _sounds;
   SoundMap _sounds;
 public:
 public:
   typedef AudioTraits::SoundClass* SoundLoadFunc(Filename);
   typedef AudioTraits::SoundClass* SoundLoadFunc(Filename);

+ 2 - 2
panda/src/audiotraits/audio_load_mp3.cxx

@@ -146,8 +146,8 @@ static void initialize(void) {
 
 
 class BufferStuff {
 class BufferStuff {
 private:
 private:
-  typedef vector<unsigned char> Buffer;
-  typedef vector<Buffer> Buffers;
+  typedef pvector<unsigned char> Buffer;
+  typedef pvector<Buffer> Buffers;
   Buffers _bufs;
   Buffers _bufs;
 public:
 public:
   BufferStuff(void) {}
   BufferStuff(void) {}

+ 2 - 2
panda/src/builder/builder.cxx

@@ -29,7 +29,7 @@
 #include <notify.h>
 #include <notify.h>
 #include <namedNode.h>
 #include <namedNode.h>
 #include <geomNode.h>
 #include <geomNode.h>
-#include <map>
+#include "pmap.h"
 #endif
 #endif
 
 
 #include "builder.h"
 #include "builder.h"
@@ -126,7 +126,7 @@ public:
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 GeomNode *Builder::
 GeomNode *Builder::
 build(const string &default_name) {
 build(const string &default_name) {
-  typedef map<NodeMap, GeomNode *, less<NodeMap> > GeomNodeMap;
+  typedef pmap<NodeMap, GeomNode *, less<NodeMap> > GeomNodeMap;
   GeomNodeMap geom_nodes;
   GeomNodeMap geom_nodes;
 
 
   // First, build all the Geoms and create GeomNodes for them.  Each
   // First, build all the Geoms and create GeomNodes for them.  Each

+ 2 - 2
panda/src/builder/builder.h

@@ -172,7 +172,7 @@
 
 
 #include <pointerTo.h>
 #include <pointerTo.h>
 
 
-#include <set>
+#include "pset.h"
 
 
 
 
 class GeomNode;
 class GeomNode;
@@ -200,7 +200,7 @@ public:
 protected:
 protected:
   void add_bucket(const BuilderBucket &bucket);
   void add_bucket(const BuilderBucket &bucket);
 
 
-  typedef set<BuilderBucketNode, less<BuilderBucketNode> > Buckets;
+  typedef pset<BuilderBucketNode, less<BuilderBucketNode> > Buckets;
 
 
   Buckets _buckets;
   Buckets _buckets;
   Buckets::iterator _bi;
   Buckets::iterator _bi;

+ 1 - 1
panda/src/builder/builderAttribTempl.h

@@ -22,7 +22,7 @@
 
 
 #include "builderTypes.h"
 #include "builderTypes.h"
 
 
-#include <vector>
+#include "pvector.h"
 
 
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////

+ 3 - 3
panda/src/builder/builderBucketNode.h

@@ -24,7 +24,7 @@
 #include "builderPrim.h"
 #include "builderPrim.h"
 #include "builderBucket.h"
 #include "builderBucket.h"
 
 
-#include <set>
+#include "pset.h"
 
 
 class GeomNode;
 class GeomNode;
 
 
@@ -59,8 +59,8 @@ public:
   int build(GeomNode *geom_node) const;
   int build(GeomNode *geom_node) const;
 
 
 protected:
 protected:
-  typedef multiset<BuilderPrim, less<BuilderPrim> > Prims;
-  typedef multiset<BuilderPrimI, less<BuilderPrimI> > IPrims;
+  typedef pmultiset<BuilderPrim, less<BuilderPrim> > Prims;
+  typedef pmultiset<BuilderPrimI, less<BuilderPrimI> > IPrims;
 
 
   BuilderBucket *_bucket;
   BuilderBucket *_bucket;
   Prims _prims;
   Prims _prims;

+ 2 - 2
panda/src/builder/builderFuncs.I

@@ -46,7 +46,7 @@ decomp_concave(const PrimType &prim, BuilderBucket &bucket,
                int asum, int x, int y) {
                int asum, int x, int y) {
 #define VX(p, c)    p->coord[c]
 #define VX(p, c)    p->coord[c]
 
 
-  vector<PrimType> output_prims;
+  pvector<PrimType> output_prims;
 
 
   DecompVtx *p0, *p1, *p2, *t0, *vert;
   DecompVtx *p0, *p1, *p2, *t0, *vert;
   DecompVtx *m[3];
   DecompVtx *m[3];
@@ -804,7 +804,7 @@ __mesh_and_build(InputIterator first, InputIterator last,
     return 0;
     return 0;
   }
   }
 
 
-  typedef vector<PrimType> Prims;
+  typedef pvector<PrimType> Prims;
   Prims prims;
   Prims prims;
   BuilderBucket *local_bucket = NULL;
   BuilderBucket *local_bucket = NULL;
   BuilderBucket *bucket_ptr = &bucket;
   BuilderBucket *bucket_ptr = &bucket;

+ 1 - 1
panda/src/builder/builderFuncs.h

@@ -20,7 +20,7 @@
 
 
 #include <pandabase.h>
 #include <pandabase.h>
 
 
-#include <vector>
+#include "pvector.h"
 
 
 #include <string>
 #include <string>
 
 

+ 2 - 2
panda/src/builder/builderNormalVisualizer.h

@@ -30,7 +30,7 @@
 #include "builderVertex.h"
 #include "builderVertex.h"
 #include "builderPrim.h"
 #include "builderPrim.h"
 
 
-#include <vector>
+#include "pvector.h"
 
 
 ///////////////////////////////////////////////////////////////////
 ///////////////////////////////////////////////////////////////////
 //       Class : BuilderNormalVisualizer
 //       Class : BuilderNormalVisualizer
@@ -56,7 +56,7 @@ private:
 
 
   BuilderV _net_vertex;
   BuilderV _net_vertex;
   int _num_vertices;
   int _num_vertices;
-  vector<BuilderPrim> _lines;
+  pvector<BuilderPrim> _lines;
 };
 };
 
 
 #include "builderNormalVisualizer.I"
 #include "builderNormalVisualizer.I"

+ 3 - 3
panda/src/builder/builderPrimTempl.h

@@ -25,7 +25,7 @@
 #include "builderAttrib.h"
 #include "builderAttrib.h"
 #include "builderTypes.h"
 #include "builderTypes.h"
 
 
-#include <vector>
+#include "pvector.h"
 
 
 
 
 /////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////
@@ -135,8 +135,8 @@ protected:
   INLINE int sort_value() const;
   INLINE int sort_value() const;
   void update_overall_attrib();
   void update_overall_attrib();
 
 
-  typedef vector<Vertex> Verts;
-  typedef vector<DAttrib> Components;
+  typedef pvector<Vertex> Verts;
+  typedef pvector<DAttrib> Components;
 
 
   Verts _verts;
   Verts _verts;
   Components _components;
   Components _components;

+ 1 - 1
panda/src/builder/builderVertexTempl.h

@@ -24,7 +24,7 @@
 #include "builderTypes.h"
 #include "builderTypes.h"
 #include "builderAttribTempl.h"
 #include "builderAttribTempl.h"
 
 
-#include <vector>
+#include "pvector.h"
 
 
 
 
 /////////////////////////////////////////////////////////////////////
 /////////////////////////////////////////////////////////////////////

+ 4 - 4
panda/src/builder/builder_headers.h

@@ -18,9 +18,9 @@
 
 
 #include <geom.h>
 #include <geom.h>
 #include <geomNode.h>
 #include <geomNode.h>
-#include <list>
+#include "plist.h"
 #include <luse.h>
 #include <luse.h>
-#include <map>
+#include "pmap.h"
 #include <math.h>
 #include <math.h>
 #include <namedNode.h>
 #include <namedNode.h>
 #include <notify.h>
 #include <notify.h>
@@ -29,9 +29,9 @@
 #include <pta_Normalf.h>
 #include <pta_Normalf.h>
 #include <pta_TexCoordf.h>
 #include <pta_TexCoordf.h>
 #include <pta_Vertexf.h>
 #include <pta_Vertexf.h>
-#include <set>
+#include "pset.h"
 #include <stdlib.h>
 #include <stdlib.h>
-#include <vector>
+#include "pvector.h"
 
 
 #include "builderAttrib.h"
 #include "builderAttrib.h"
 #include "builderAttribTempl.h"
 #include "builderAttribTempl.h"

+ 2 - 2
panda/src/builder/mesherEdge.h

@@ -24,7 +24,7 @@
 #include "mesherConfig.h"
 #include "mesherConfig.h"
 #include "builderBucket.h"
 #include "builderBucket.h"
 
 
-#include <list>
+#include "plist.h"
 #include <math.h>
 #include <math.h>
 
 
 
 
@@ -61,7 +61,7 @@ public:
 
 
   const Vertex *_a, *_b;
   const Vertex *_a, *_b;
 
 
-  typedef list<Strip *> Strips;
+  typedef plist<Strip *> Strips;
   Strips _strips;
   Strips _strips;
   MesherEdge *_opposite;
   MesherEdge *_opposite;
 };
 };

+ 2 - 2
panda/src/builder/mesherFanMaker.I

@@ -304,12 +304,12 @@ unroll(Strips::iterator strip_begin, Strips::iterator strip_end,
 
 
   } else {
   } else {
     // Now decompose the new polygon into triangles.
     // Now decompose the new polygon into triangles.
-    vector<Prim> tris;
+    pvector<Prim> tris;
     result = expand(poly, *_bucket, back_inserter(tris));
     result = expand(poly, *_bucket, back_inserter(tris));
 
 
     if (result) {
     if (result) {
       // Now add each triangle back into the mesher.
       // Now add each triangle back into the mesher.
-      vector<Prim>::iterator ti;
+      pvector<Prim>::iterator ti;
 
 
       for (ti = tris.begin(); ti != tris.end(); ++ti) {
       for (ti = tris.begin(); ti != tris.end(); ++ti) {
         _mesher->add_prim(*ti);
         _mesher->add_prim(*ti);

+ 3 - 3
panda/src/builder/mesherFanMaker.h

@@ -30,7 +30,7 @@
 #include "mesherEdge.h"
 #include "mesherEdge.h"
 #include "mesherStrip.h"
 #include "mesherStrip.h"
 
 
-#include <list>
+#include "plist.h"
 
 
 
 
 template <class PrimType>
 template <class PrimType>
@@ -46,8 +46,8 @@ public:
   typedef MesherStrip<PrimType> Strip;
   typedef MesherStrip<PrimType> Strip;
   typedef MesherTempl<PrimType> Mesher;
   typedef MesherTempl<PrimType> Mesher;
 
 
-  typedef list<const Edge *> Edges;
-  typedef list<Strip *> Strips;
+  typedef plist<const Edge *> Edges;
+  typedef plist<Strip *> Strips;
 
 
   MesherFanMaker() {}
   MesherFanMaker() {}
   MesherFanMaker(const Vertex *vertex, Strip *tri, Mesher *mesher);
   MesherFanMaker(const Vertex *vertex, Strip *tri, Mesher *mesher);

+ 1 - 1
panda/src/builder/mesherStrip.I

@@ -466,7 +466,7 @@ cut_sheet(int first_row_id, int do_mate, const BuilderBucket &bucket) {
   // calling cut_sheet() recursively will start things mating, and
   // calling cut_sheet() recursively will start things mating, and
   // could damage our edge list.
   // could damage our edge list.
 
 
-  typedef list<MesherStrip *> StripPtrs;
+  typedef plist<MesherStrip *> StripPtrs;
   StripPtrs strip_ptrs;
   StripPtrs strip_ptrs;
 
 
   for (ei = _edges.begin(); ei != _edges.end(); ++ei) {
   for (ei = _edges.begin(); ei != _edges.end(); ++ei) {

+ 4 - 4
panda/src/builder/mesherStrip.h

@@ -25,7 +25,7 @@
 #include "builderTypes.h"
 #include "builderTypes.h"
 #include "builderBucket.h"
 #include "builderBucket.h"
 
 
-#include <list>
+#include "plist.h"
 #include <math.h>
 #include <math.h>
 
 
 
 
@@ -118,9 +118,9 @@ public:
 
 
   ostream &output(ostream &out) const;
   ostream &output(ostream &out) const;
 
 
-  typedef list<SAttrib> Prims;
-  typedef list<Edge *> Edges;
-  typedef list<const Vertex *> Verts;
+  typedef plist<SAttrib> Prims;
+  typedef plist<Edge *> Edges;
+  typedef plist<const Vertex *> Verts;
 
 
   Prims _prims;
   Prims _prims;
   Edges _edges;
   Edges _edges;

+ 3 - 3
panda/src/builder/mesherTempl.I

@@ -384,7 +384,7 @@ count_vert_edges(const EdgePtrs &edges) const {
 }
 }
 
 
 template <class PrimType>
 template <class PrimType>
-list<MesherTempl<PrimType>::Strip> &MesherTempl<PrimType>::
+plist<MesherTempl<PrimType>::Strip> &MesherTempl<PrimType>::
 choose_strip_list(const Strip &strip) {
 choose_strip_list(const Strip &strip) {
   switch (strip._status) {
   switch (strip._status) {
   case MS_done:
   case MS_done:
@@ -513,7 +513,7 @@ find_fans() {
       const Vertex &v = (*vi).first;
       const Vertex &v = (*vi).first;
 
 
       // Build up a list of far fan edges.
       // Build up a list of far fan edges.
-      typedef vector<FanMaker> FanMakers;
+      typedef pvector<FanMaker> FanMakers;
 
 
       FanMakers fans;
       FanMakers fans;
 
 
@@ -588,7 +588,7 @@ make_quads() {
 
 
   typedef pair<Strip *, Strip *> Pair;
   typedef pair<Strip *, Strip *> Pair;
   typedef pair<Pair, Edge *> Matched;
   typedef pair<Pair, Edge *> Matched;
-  typedef vector<Matched> SoulMates;
+  typedef pvector<Matched> SoulMates;
 
 
   SoulMates soulmates;
   SoulMates soulmates;
 
 

+ 11 - 11
panda/src/builder/mesherTempl.h

@@ -25,10 +25,10 @@
 #include "mesherEdge.h"
 #include "mesherEdge.h"
 #include "mesherStrip.h"
 #include "mesherStrip.h"
 
 
-#include <vector>
-#include <list>
-#include <set>
-#include <map>
+#include "pvector.h"
+#include "plist.h"
+#include "pset.h"
+#include "pmap.h"
 
 
 template <class PrimType>
 template <class PrimType>
 class MesherFanMaker;
 class MesherFanMaker;
@@ -54,18 +54,18 @@ public:
   void show(ostream &out);
   void show(ostream &out);
 
 
 protected:
 protected:
-  typedef list<Strip> Strips;
-  typedef set<Edge, less<Edge> > Edges;
-  typedef set<Edge *, less<Edge *> > EdgePtrs;
-  typedef map<Vertex, EdgePtrs, less<Vertex> > Verts;
+  typedef plist<Strip> Strips;
+  typedef pset<Edge, less<Edge> > Edges;
+  typedef pset<Edge *, less<Edge *> > EdgePtrs;
+  typedef pmap<Vertex, EdgePtrs, less<Vertex> > Verts;
 
 
   // This is used for show-tstrips.
   // This is used for show-tstrips.
-  typedef vector<BuilderC> Colors;
+  typedef pvector<BuilderC> Colors;
   // And this is used for show-qsheets.
   // And this is used for show-qsheets.
-  typedef map<int, int, less<int> > ColorSheetMap;
+  typedef pmap<int, int, less<int> > ColorSheetMap;
 
 
   int count_vert_edges(const EdgePtrs &edges) const;
   int count_vert_edges(const EdgePtrs &edges) const;
-  list<Strip> &choose_strip_list(const Strip &strip);
+  plist<Strip> &choose_strip_list(const Strip &strip);
 
 
   void build_sheets();
   void build_sheets();
   void find_fans();
   void find_fans();

+ 3 - 3
panda/src/chan/animChannelScalarTable.cxx

@@ -165,13 +165,13 @@ write_datagram(BamWriter *manager, Datagram &me)
     static const int max_values = 16;
     static const int max_values = 16;
     static const float scale = 1000.0;
     static const float scale = 1000.0;
 
 
-    map<int, int> index;
+    pmap<int, int> index;
     int i;
     int i;
     for (i = 0;
     for (i = 0;
          i < (int)_table.size() && (int)index.size() <= max_values;
          i < (int)_table.size() && (int)index.size() <= max_values;
          i++) {
          i++) {
       int value = (int)floor(_table[i] * scale + 0.5);
       int value = (int)floor(_table[i] * scale + 0.5);
-      index.insert(map<int, int>::value_type(value, index.size()));
+      index.insert(pmap<int, int>::value_type(value, index.size()));
     }
     }
     int index_length = index.size();
     int index_length = index.size();
     if (index_length <= max_values) {
     if (index_length <= max_values) {
@@ -184,7 +184,7 @@ write_datagram(BamWriter *manager, Datagram &me)
         // We need to write the index in order by its index number; for
         // We need to write the index in order by its index number; for
         // this, we need to invert the index.
         // this, we need to invert the index.
         vector_float reverse_index(index_length);
         vector_float reverse_index(index_length);
-        map<int, int>::iterator mi;
+        pmap<int, int>::iterator mi;
         for (mi = index.begin(); mi != index.end(); ++mi) {
         for (mi = index.begin(); mi != index.end(); ++mi) {
           float f = (float)(*mi).first / scale;
           float f = (float)(*mi).first / scale;
           int i = (*mi).second;
           int i = (*mi).second;

+ 2 - 2
panda/src/chan/animControl.h

@@ -31,7 +31,7 @@
 #include <pt_Event.h>
 #include <pt_Event.h>
 
 
 #include <string>
 #include <string>
-#include <map>
+#include "pmap.h"
 
 
 class PartBundle;
 class PartBundle;
 class AnimChannelBase;
 class AnimChannelBase;
@@ -108,7 +108,7 @@ public:
   };
   };
 
 
 private:
 private:
-  typedef multimap<int, Action> Actions;
+  typedef pmultimap<int, Action> Actions;
 
 
   static void insert_event_action(Actions &actions, int frame, const CPT_Event &event);
   static void insert_event_action(Actions &actions, int frame, const CPT_Event &event);
   static void insert_stop_action(Actions &actions, int frame);
   static void insert_stop_action(Actions &actions, int frame);

+ 2 - 2
panda/src/chan/animControlCollection.h

@@ -27,7 +27,7 @@
 #include <pt_Event.h>
 #include <pt_Event.h>
 
 
 #include <string>
 #include <string>
-#include <map>
+#include "pmap.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 //       Class : AnimControlCollection
 //       Class : AnimControlCollection
@@ -85,7 +85,7 @@ PUBLISHED:
   string which_anim_playing() const;
   string which_anim_playing() const;
 
 
 private:
 private:
-  typedef map<string,  PT(AnimControl) > Controls;
+  typedef pmap<string,  PT(AnimControl) > Controls;
   Controls _controls;
   Controls _controls;
   CPT_Event _stop_event;
   CPT_Event _stop_event;
   AnimControl *_last_started_control;
   AnimControl *_last_started_control;

+ 1 - 1
panda/src/chan/animGroup.h

@@ -62,7 +62,7 @@ protected:
   void write_descendants(ostream &out, int indent_level) const;
   void write_descendants(ostream &out, int indent_level) const;
 
 
 protected:
 protected:
-  typedef vector< PT(AnimGroup) > Children;
+  typedef pvector< PT(AnimGroup) > Children;
   Children _children;
   Children _children;
   AnimBundle *_root;
   AnimBundle *_root;
 
 

+ 4 - 4
panda/src/chan/auto_bind.cxx

@@ -37,11 +37,11 @@
 #include <nullTransitionWrapper.h>
 #include <nullTransitionWrapper.h>
 #include "auto_bind.h"
 #include "auto_bind.h"
 
 
-typedef set<AnimBundleNode *> AnimNodes;
-typedef map<string, AnimNodes> Anims;
+typedef pset<AnimBundleNode *> AnimNodes;
+typedef pmap<string, AnimNodes> Anims;
 
 
-typedef set<PartBundleNode *> PartNodes;
-typedef map<string, PartNodes> Parts;
+typedef pset<PartBundleNode *> PartNodes;
+typedef pmap<string, PartNodes> Parts;
 
 
 
 
 
 

+ 2 - 2
panda/src/chan/movingPartBase.cxx

@@ -155,10 +155,10 @@ update_internals(PartGroup *, bool, bool) {
 //               infinity.
 //               infinity.
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 void MovingPartBase::
 void MovingPartBase::
-pick_channel_index(list<int> &holes, int &next) const {
+pick_channel_index(plist<int> &holes, int &next) const {
   // Verify each of the holes.
   // Verify each of the holes.
 
 
-  list<int>::iterator ii, ii_next;
+  plist<int>::iterator ii, ii_next;
   ii = holes.begin();
   ii = holes.begin();
   while (ii != holes.end()) {
   while (ii != holes.end()) {
     ii_next = ii;
     ii_next = ii;

+ 2 - 2
panda/src/chan/movingPartBase.h

@@ -58,10 +58,10 @@ public:
 protected:
 protected:
   MovingPartBase(void);
   MovingPartBase(void);
 
 
-  virtual void pick_channel_index(list<int> &holes, int &next) const;
+  virtual void pick_channel_index(plist<int> &holes, int &next) const;
   virtual void bind_hierarchy(AnimGroup *anim, int channel_index);
   virtual void bind_hierarchy(AnimGroup *anim, int channel_index);
 
 
-  typedef vector< PT(AnimChannelBase) > Channels;
+  typedef pvector< PT(AnimChannelBase) > Channels;
   Channels _channels;
   Channels _channels;
 
 
 public:
 public:

+ 1 - 1
panda/src/chan/partBundle.cxx

@@ -284,7 +284,7 @@ bind_anim(AnimBundle *anim, int hierarchy_match_flags) {
     return NULL;
     return NULL;
   }
   }
 
 
-  list<int> holes;
+  plist<int> holes;
   int channel_index = 0;
   int channel_index = 0;
   pick_channel_index(holes, channel_index);
   pick_channel_index(holes, channel_index);
 
 

+ 1 - 1
panda/src/chan/partBundle.h

@@ -42,7 +42,7 @@ public:
 
 
   // This is passed down through the MovingParts during the
   // This is passed down through the MovingParts during the
   // do_update() call to specify the channels that are in effect.
   // do_update() call to specify the channels that are in effect.
-  typedef map<PT(AnimControl), float> ChannelBlend;
+  typedef pmap<PT(AnimControl), float> ChannelBlend;
 
 
   // This is the parameter to set_blend_type() and specifies the kind
   // This is the parameter to set_blend_type() and specifies the kind
   // of blending operation to be performed when multiple controls are
   // of blending operation to be performed when multiple controls are

+ 1 - 1
panda/src/chan/partGroup.cxx

@@ -411,7 +411,7 @@ write_descendants_with_value(ostream &out, int indent_level) const {
 //               infinity.
 //               infinity.
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 void PartGroup::
 void PartGroup::
-pick_channel_index(list<int> &holes, int &next) const {
+pick_channel_index(plist<int> &holes, int &next) const {
   Children::const_iterator ci;
   Children::const_iterator ci;
   for (ci = _children.begin(); ci != _children.end(); ++ci) {
   for (ci = _children.begin(); ci != _children.end(); ++ci) {
     (*ci)->pick_channel_index(holes, next);
     (*ci)->pick_channel_index(holes, next);

+ 3 - 3
panda/src/chan/partGroup.h

@@ -26,7 +26,7 @@
 #include <namable.h>
 #include <namable.h>
 #include <typedef.h>
 #include <typedef.h>
 
 
-#include <list>
+#include "plist.h"
 
 
 class AnimControl;
 class AnimControl;
 class AnimGroup;
 class AnimGroup;
@@ -89,10 +89,10 @@ protected:
   void write_descendants(ostream &out, int indent_level) const;
   void write_descendants(ostream &out, int indent_level) const;
   void write_descendants_with_value(ostream &out, int indent_level) const;
   void write_descendants_with_value(ostream &out, int indent_level) const;
 
 
-  virtual void pick_channel_index(list<int> &holes, int &next) const;
+  virtual void pick_channel_index(plist<int> &holes, int &next) const;
   virtual void bind_hierarchy(AnimGroup *anim, int channel_index);
   virtual void bind_hierarchy(AnimGroup *anim, int channel_index);
 
 
-  typedef vector< PT(PartGroup) > Children;
+  typedef pvector< PT(PartGroup) > Children;
   Children _children;
   Children _children;
 
 
 public:
 public:

+ 1 - 1
panda/src/chan/vector_PartGroupStar.h

@@ -23,7 +23,7 @@
 
 
 #include "partGroup.h"
 #include "partGroup.h"
 
 
-#include <vector>
+#include "pvector.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 //       Class : vector_PartGroupStar
 //       Class : vector_PartGroupStar

+ 1 - 1
panda/src/chancfg/chancfg.cxx

@@ -130,7 +130,7 @@ INLINE bool ConfigDefined(std::string sym) {
     (WindowDB->find(sym) != WindowDB->end());
     (WindowDB->find(sym) != WindowDB->end());
 }
 }
 
 
-typedef std::vector<SetupItem> SVec;
+typedef std::pvector<SetupItem> SVec;
 
 
 bool ChanCheckLayouts(SetupSyms& S) {
 bool ChanCheckLayouts(SetupSyms& S) {
   if (S.empty())
   if (S.empty())

+ 2 - 2
panda/src/chancfg/chancfg.h

@@ -29,7 +29,7 @@
 #include <graphicsPipe.h>
 #include <graphicsPipe.h>
 #include <graphicsWindow.h>
 #include <graphicsWindow.h>
 
 
-#include <map>
+#include "pmap.h"
 
 
 class Node;
 class Node;
 
 
@@ -72,7 +72,7 @@ private:
     INLINE void setString(const std::string& v) { _str = v; }
     INLINE void setString(const std::string& v) { _str = v; }
     INLINE std::string getString(void) const { return _str; }
     INLINE std::string getString(void) const { return _str; }
   };
   };
-  typedef std::map<Field, Types> Fields;
+  typedef std::pmap<Field, Types> Fields;
   Fields _fields;
   Fields _fields;
 public:
 public:
   ChanCfgOverrides(void);
   ChanCfgOverrides(void);

+ 1 - 1
panda/src/chancfg/chanlayout.cxx

@@ -44,7 +44,7 @@ LayoutParseFunctor::~LayoutParseFunctor(void) {
   return;
   return;
 }
 }
 
 
-typedef std::vector<bool> LayoutBoolVec;
+typedef std::pvector<bool> LayoutBoolVec;
 
 
 void LayoutParseFunctor::operator()(std::string S) {
 void LayoutParseFunctor::operator()(std::string S) {
   std::string sym;
   std::string sym;

+ 4 - 4
panda/src/chancfg/chanlayout.h

@@ -21,14 +21,14 @@
 
 
 #include <pandabase.h>
 #include <pandabase.h>
 
 
-#include <map>
-#include <vector>
+#include "pmap.h"
+#include "pvector.h"
 #include <algorithm>
 #include <algorithm>
 #include <string>
 #include <string>
 #include "chanviewport.h"
 #include "chanviewport.h"
 
 
 
 
-typedef std::vector<ChanViewport> LayoutRegionVec;
+typedef std::pvector<ChanViewport> LayoutRegionVec;
 
 
 class LayoutItem {
 class LayoutItem {
 private:
 private:
@@ -46,7 +46,7 @@ public:
   INLINE const ChanViewport& operator[](int);
   INLINE const ChanViewport& operator[](int);
 };
 };
 
 
-typedef std::map<std::string, LayoutItem> LayoutType;
+typedef std::pmap<std::string, LayoutItem> LayoutType;
 
 
 extern LayoutType* LayoutDB;
 extern LayoutType* LayoutDB;
 
 

+ 2 - 2
panda/src/chancfg/chansetup.h

@@ -23,7 +23,7 @@
 
 
 #include <vector_string.h>
 #include <vector_string.h>
 
 
-#include <map>
+#include "pmap.h"
 #include "chanviewport.h"
 #include "chanviewport.h"
 
 
 typedef vector_string SetupSyms;
 typedef vector_string SetupSyms;
@@ -88,7 +88,7 @@ public:
   INLINE Orientation getOrientation(void) const;
   INLINE Orientation getOrientation(void) const;
 };
 };
 
 
-typedef std::map<std::string, SetupItem> SetupType;
+typedef std::pmap<std::string, SetupItem> SetupType;
 
 
 extern SetupType* SetupDB;
 extern SetupType* SetupDB;
 
 

+ 3 - 3
panda/src/chancfg/chanwindow.h

@@ -21,8 +21,8 @@
 
 
 #include <pandabase.h>
 #include <pandabase.h>
 
 
-#include <map>
-#include <vector>
+#include "pmap.h"
+#include "pvector.h"
 #include <string>
 #include <string>
 #include "chansetup.h"
 #include "chansetup.h"
 
 
@@ -53,7 +53,7 @@ public:
   INLINE SetupSyms getSetups(void) const;
   INLINE SetupSyms getSetups(void) const;
 };
 };
 
 
-typedef std::map<std::string, WindowItem> WindowType;
+typedef std::pmap<std::string, WindowItem> WindowType;
 
 
 extern WindowType* WindowDB;
 extern WindowType* WindowDB;
 
 

+ 1 - 1
panda/src/char/character.h

@@ -68,7 +68,7 @@ PUBLISHED:
 private:
 private:
   void copy_joints(PartGroup *copy, PartGroup *orig);
   void copy_joints(PartGroup *copy, PartGroup *orig);
 
 
-  typedef map<NodeRelation *, NodeRelation *> ArcMap;
+  typedef pmap<NodeRelation *, NodeRelation *> ArcMap;
   virtual Node *r_copy_subgraph(TypeHandle graph_type,
   virtual Node *r_copy_subgraph(TypeHandle graph_type,
                                 InstanceMap &inst_map) const;
                                 InstanceMap &inst_map) const;
   void r_copy_char(Node *dest, const Node *source, TypeHandle graph_type,
   void r_copy_char(Node *dest, const Node *source, TypeHandle graph_type,

+ 1 - 1
panda/src/char/characterJoint.h

@@ -58,7 +58,7 @@ PUBLISHED:
   void clear_local_transforms();
   void clear_local_transforms();
 
 
 private:
 private:
-  typedef set< PT_NodeRelation > ArcList;
+  typedef pset< PT_NodeRelation > ArcList;
   ArcList _net_transform_arcs;
   ArcList _net_transform_arcs;
   ArcList _local_transform_arcs;
   ArcList _local_transform_arcs;
 
 

+ 2 - 2
panda/src/char/computedVertices.cxx

@@ -63,9 +63,9 @@ VertexTransform(const VertexTransform &copy) :
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 template<class ValueType, class MorphType>
 template<class ValueType, class MorphType>
 static void
 static void
-compute_morphs(ValueType *table, const vector<MorphType> &morph_list,
+compute_morphs(ValueType *table, const pvector<MorphType> &morph_list,
            Character *character) {
            Character *character) {
-  vector<MorphType>::const_iterator mli;
+  pvector<MorphType>::const_iterator mli;
   for (mli = morph_list.begin(); mli != morph_list.end(); ++mli) {
   for (mli = morph_list.begin(); mli != morph_list.end(); ++mli) {
     const MorphType &morph = (*mli);
     const MorphType &morph = (*mli);
     const CharacterSlider *slider;
     const CharacterSlider *slider;

+ 5 - 5
panda/src/char/computedVertices.h

@@ -64,14 +64,14 @@ private:
     void read_datagram(DatagramIterator &source);
     void read_datagram(DatagramIterator &source);
   };
   };
 
 
-  typedef vector<VertexTransform> VertexTransforms;
+  typedef pvector<VertexTransform> VertexTransforms;
 
 
   VertexTransforms _transforms;
   VertexTransforms _transforms;
 
 
-  typedef vector<ComputedVerticesMorphVertex> VertexMorphs;
-  typedef vector<ComputedVerticesMorphNormal> NormalMorphs;
-  typedef vector<ComputedVerticesMorphTexCoord> TexCoordMorphs;
-  typedef vector<ComputedVerticesMorphColor> ColorMorphs;
+  typedef pvector<ComputedVerticesMorphVertex> VertexMorphs;
+  typedef pvector<ComputedVerticesMorphNormal> NormalMorphs;
+  typedef pvector<ComputedVerticesMorphTexCoord> TexCoordMorphs;
+  typedef pvector<ComputedVerticesMorphColor> ColorMorphs;
   VertexMorphs _vertex_morphs;
   VertexMorphs _vertex_morphs;
   NormalMorphs _normal_morphs;
   NormalMorphs _normal_morphs;
   TexCoordMorphs _texcoord_morphs;
   TexCoordMorphs _texcoord_morphs;

+ 1 - 1
panda/src/char/computedVerticesMorph.h

@@ -107,7 +107,7 @@ public:
   INLINE ComputedVerticesMorph(const ComputedVerticesMorph &copy);
   INLINE ComputedVerticesMorph(const ComputedVerticesMorph &copy);
 
 
   typedef MorphValueType MorphValue;
   typedef MorphValueType MorphValue;
-  typedef vector<MorphValue> Morphs;
+  typedef pvector<MorphValue> Morphs;
 
 
   void output(ostream &out) const;
   void output(ostream &out) const;
 
 

+ 1 - 1
panda/src/collide/collisionHandlerEvent.h

@@ -72,7 +72,7 @@ private:
     INLINE void operator = (const SortEntries &other);
     INLINE void operator = (const SortEntries &other);
   };
   };
 
 
-  typedef set<PT(CollisionEntry), SortEntries> Colliding;
+  typedef pset<PT(CollisionEntry), SortEntries> Colliding;
   Colliding _current_colliding;
   Colliding _current_colliding;
   Colliding _last_colliding;
   Colliding _last_colliding;
 
 

+ 3 - 3
panda/src/collide/collisionHandlerPhysical.h

@@ -55,8 +55,8 @@ protected:
   virtual void handle_entries()=0;
   virtual void handle_entries()=0;
 
 
 protected:
 protected:
-  typedef vector< PT(CollisionEntry) > Entries;
-  typedef map<PT(CollisionNode), Entries> FromEntries;
+  typedef pvector< PT(CollisionEntry) > Entries;
+  typedef pmap<PT(CollisionNode), Entries> FromEntries;
   FromEntries _from_entries;
   FromEntries _from_entries;
 
 
   class ColliderDef {
   class ColliderDef {
@@ -71,7 +71,7 @@ protected:
     PT_NodeRelation _arc;
     PT_NodeRelation _arc;
   };
   };
 
 
-  typedef map<PT(CollisionNode), ColliderDef> Colliders;
+  typedef pmap<PT(CollisionNode), ColliderDef> Colliders;
   Colliders _colliders;
   Colliders _colliders;
 
 
 
 

+ 1 - 1
panda/src/collide/collisionHandlerPusher.cxx

@@ -99,7 +99,7 @@ handle_entries() {
       // share nearly the same direction, and if so, we keep only the
       // share nearly the same direction, and if so, we keep only the
       // longer of the two.
       // longer of the two.
 
 
-      typedef vector<ShoveData> Shoves;
+      typedef pvector<ShoveData> Shoves;
       Shoves shoves;
       Shoves shoves;
 
 
       Entries::const_iterator ei;
       Entries::const_iterator ei;

+ 1 - 1
panda/src/collide/collisionHandlerQueue.cxx

@@ -94,7 +94,7 @@ void CollisionHandlerQueue::
 sort_entries() {
 sort_entries() {
   // Build up a temporary vector of entries so we can sort the
   // Build up a temporary vector of entries so we can sort the
   // pointers.  This uses the class defined above.
   // pointers.  This uses the class defined above.
-  typedef vector<CollisionEntrySorter> Sorter;
+  typedef pvector<CollisionEntrySorter> Sorter;
   Sorter sorter;
   Sorter sorter;
   sorter.reserve(_entries.size());
   sorter.reserve(_entries.size());
 
 

+ 1 - 1
panda/src/collide/collisionHandlerQueue.h

@@ -49,7 +49,7 @@ PUBLISHED:
   CollisionEntry *get_entry(int n) const;
   CollisionEntry *get_entry(int n) const;
 
 
 private:
 private:
-  typedef vector< PT(CollisionEntry) > Entries;
+  typedef pvector< PT(CollisionEntry) > Entries;
   Entries _entries;
   Entries _entries;
 
 
 public:
 public:

+ 1 - 1
panda/src/collide/collisionLevelState.h

@@ -26,7 +26,7 @@
 #include <geometricBoundingVolume.h>
 #include <geometricBoundingVolume.h>
 #include <arcChain.h>
 #include <arcChain.h>
 
 
-#include <list>
+#include "plist.h"
 
 
 class CollisionSolid;
 class CollisionSolid;
 class CollisionNode;
 class CollisionNode;

+ 1 - 1
panda/src/collide/collisionNode.cxx

@@ -175,7 +175,7 @@ recompute_bound() {
 
 
   // Now actually compute the bounding volume by putting it around all
   // Now actually compute the bounding volume by putting it around all
   // of our solids' bounding volumes.
   // of our solids' bounding volumes.
-  vector<const BoundingVolume *> child_volumes;
+  pvector<const BoundingVolume *> child_volumes;
 
 
   Solids::const_iterator gi;
   Solids::const_iterator gi;
   for (gi = _solids.begin(); gi != _solids.end(); ++gi) {
   for (gi = _solids.begin(); gi != _solids.end(); ++gi) {

+ 1 - 1
panda/src/collide/collisionNode.h

@@ -72,7 +72,7 @@ private:
   CollideMask _into_collide_mask;
   CollideMask _into_collide_mask;
   bool _collide_geom;
   bool _collide_geom;
 
 
-  typedef vector< PT(CollisionSolid) > Solids;
+  typedef pvector< PT(CollisionSolid) > Solids;
   Solids _solids;
   Solids _solids;
 
 
 public:
 public:

+ 2 - 2
panda/src/collide/collisionPolygon.cxx

@@ -163,7 +163,7 @@ xform(const LMatrix4f &mat) {
   }
   }
 
 
   if (!_points.empty()) {
   if (!_points.empty()) {
-    vector<LPoint3f> verts;
+    pvector<LPoint3f> verts;
     Points::const_iterator pi;
     Points::const_iterator pi;
     for (pi = _points.begin(); pi != _points.end(); ++pi) {
     for (pi = _points.begin(); pi != _points.end(); ++pi) {
       verts.push_back(to_3d(*pi) * mat);
       verts.push_back(to_3d(*pi) * mat);
@@ -219,7 +219,7 @@ recompute_bound() {
 
 
   // Now actually compute the bounding volume by putting it around all
   // Now actually compute the bounding volume by putting it around all
   // of our vertices.
   // of our vertices.
-  vector<LPoint3f> vertices;
+  pvector<LPoint3f> vertices;
   Points::const_iterator pi;
   Points::const_iterator pi;
   for (pi = _points.begin(); pi != _points.end(); ++pi) {
   for (pi = _points.begin(); pi != _points.end(); ++pi) {
     vertices.push_back(to_3d(*pi));
     vertices.push_back(to_3d(*pi));

+ 1 - 1
panda/src/collide/collisionSolid.cxx

@@ -166,7 +166,7 @@ test_intersection_from_segment(CollisionHandler *,
 void CollisionSolid::
 void CollisionSolid::
 report_undefined_intersection_test(TypeHandle from_type, TypeHandle into_type) {
 report_undefined_intersection_test(TypeHandle from_type, TypeHandle into_type) {
 #ifndef NDEBUG
 #ifndef NDEBUG
-  typedef map<TypeHandle, TypeHandle> Reported;
+  typedef pmap<TypeHandle, TypeHandle> Reported;
   static Reported reported;
   static Reported reported;
 
 
   if (reported.insert(Reported::value_type(from_type, into_type)).second) {
   if (reported.insert(Reported::value_type(from_type, into_type)).second) {

+ 4 - 4
panda/src/collide/collisionTraverser.h

@@ -32,7 +32,7 @@
 #include <pointerTo.h>
 #include <pointerTo.h>
 #include <pStatCollector.h>
 #include <pStatCollector.h>
 
 
-#include <set>
+#include "pset.h"
 
 
 class CollisionNode;
 class CollisionNode;
 class Geom;
 class Geom;
@@ -94,12 +94,12 @@ private:
   PT(CollisionHandler) _default_handler;
   PT(CollisionHandler) _default_handler;
   TypeHandle _graph_type;
   TypeHandle _graph_type;
 
 
-  typedef map<PT(CollisionNode),  PT(CollisionHandler) > Colliders;
+  typedef pmap<PT(CollisionNode),  PT(CollisionHandler) > Colliders;
   Colliders _colliders;
   Colliders _colliders;
-  typedef vector<CollisionNode *> OrderedColliders;
+  typedef pvector<CollisionNode *> OrderedColliders;
   OrderedColliders _ordered_colliders;
   OrderedColliders _ordered_colliders;
 
 
-  typedef map<PT(CollisionHandler), int> Handlers;
+  typedef pmap<PT(CollisionHandler), int> Handlers;
   Handlers _handlers;
   Handlers _handlers;
 
 
   // Statistics
   // Statistics

+ 5 - 5
panda/src/cull/cullState.h

@@ -32,8 +32,8 @@
 #include <referenceCount.h>
 #include <referenceCount.h>
 #include <arcChain.h>
 #include <arcChain.h>
 
 
-#include <map>
-#include <vector>
+#include "pmap.h"
+#include "pvector.h"
 
 
 class GraphicsStateGuardian;
 class GraphicsStateGuardian;
 class GeomBin;
 class GeomBin;
@@ -49,8 +49,8 @@ class GeomBin;
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 class EXPCL_PANDA CullState : public ReferenceCount {
 class EXPCL_PANDA CullState : public ReferenceCount {
 public:
 public:
-  typedef vector<ArcChain> CurrentGeomNodes;
-  typedef vector<ArcChain> CurrentDirectNodes;
+  typedef pvector<ArcChain> CurrentGeomNodes;
+  typedef pvector<ArcChain> CurrentDirectNodes;
 
 
 public:
 public:
   INLINE CullState(const AllTransitionsWrapper &trans);
   INLINE CullState(const AllTransitionsWrapper &trans);
@@ -107,7 +107,7 @@ private:
   AllTransitionsWrapper _trans;
   AllTransitionsWrapper _trans;
   NodeAttributes *_attrib;
   NodeAttributes *_attrib;
 
 
-  typedef map<Node *, UpdateSeq> Verified;
+  typedef pmap<Node *, UpdateSeq> Verified;
   Verified _verified;
   Verified _verified;
 
 
   CurrentGeomNodes _current_geom_nodes;
   CurrentGeomNodes _current_geom_nodes;

+ 3 - 3
panda/src/cull/cullStateLookup.h

@@ -26,7 +26,7 @@
 #include <pt_Node.h>
 #include <pt_Node.h>
 #include <pt_NodeRelation.h>
 #include <pt_NodeRelation.h>
 
 
-#include <map>
+#include "pmap.h"
 
 
 class CullState;
 class CullState;
 class CullStateSubtree;
 class CullStateSubtree;
@@ -74,10 +74,10 @@ public:
   virtual void write(ostream &out, int indent_level = 0) const;
   virtual void write(ostream &out, int indent_level = 0) const;
 
 
 private:
 private:
-  typedef map<PT_Node,  PT(CullState) > CullStates;
+  typedef pmap<PT_Node,  PT(CullState) > CullStates;
   CullStates _cull_states;
   CullStates _cull_states;
 
 
-  typedef map<PT_NodeRelation, CullStateSubtree *> Subtrees;
+  typedef pmap<PT_NodeRelation, CullStateSubtree *> Subtrees;
   Subtrees _subtrees;
   Subtrees _subtrees;
 };
 };
 
 

+ 5 - 5
panda/src/cull/cullTraverser.h

@@ -31,8 +31,8 @@
 #include <nullAttributeWrapper.h>
 #include <nullAttributeWrapper.h>
 #include <pStatCollector.h>
 #include <pStatCollector.h>
 
 
-#include <list>
-#include <set>
+#include "plist.h"
+#include "pset.h"
 
 
 class GraphicsStateGuardian;
 class GraphicsStateGuardian;
 class CullStateLookup;
 class CullStateLookup;
@@ -119,13 +119,13 @@ private:
 
 
   AllAttributesWrapper _initial_state;
   AllAttributesWrapper _initial_state;
 
 
-  typedef map<string,  PT(GeomBin) > ToplevelBins;
-  typedef multimap<int,  PT(GeomBin) > SubBins;
+  typedef pmap<string,  PT(GeomBin) > ToplevelBins;
+  typedef pmultimap<int,  PT(GeomBin) > SubBins;
   ToplevelBins _toplevel_bins;
   ToplevelBins _toplevel_bins;
   SubBins _sub_bins;
   SubBins _sub_bins;
   PT(GeomBin) _default_bin;
   PT(GeomBin) _default_bin;
 
 
-  typedef set<PT(CullState), IndirectCompareTo<CullState> > States;
+  typedef pset<PT(CullState), IndirectCompareTo<CullState> > States;
   States _states;
   States _states;
 
 
   CullStateLookup _lookup;
   CullStateLookup _lookup;

+ 1 - 1
panda/src/cull/geomBin.h

@@ -31,7 +31,7 @@
 #include <typedReferenceCount.h>
 #include <typedReferenceCount.h>
 #include <namable.h>
 #include <namable.h>
 
 
-#include <set>
+#include "pset.h"
 
 
 class GeomNode;
 class GeomNode;
 class CullTraverser;
 class CullTraverser;

+ 2 - 2
panda/src/cull/geomBinBackToFront.h

@@ -25,7 +25,7 @@
 
 
 #include <pointerTo.h>
 #include <pointerTo.h>
 
 
-#include <set>
+#include "pset.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 //       Class : GeomBinBackToFront
 //       Class : GeomBinBackToFront
@@ -67,7 +67,7 @@ private:
     bool _is_direct;
     bool _is_direct;
   };
   };
 
 
-  typedef multiset<NodeEntry> NodeEntries;
+  typedef pmultiset<NodeEntry> NodeEntries;
   NodeEntries _node_entries;
   NodeEntries _node_entries;
 
 
 public:
 public:

+ 2 - 2
panda/src/cull/geomBinFixed.h

@@ -25,7 +25,7 @@
 
 
 #include <pointerTo.h>
 #include <pointerTo.h>
 
 
-#include <set>
+#include "pset.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 //       Class : GeomBinFixed
 //       Class : GeomBinFixed
@@ -64,7 +64,7 @@ private:
     bool _is_direct;
     bool _is_direct;
   };
   };
 
 
-  typedef multiset<NodeEntry> NodeEntries;
+  typedef pmultiset<NodeEntry> NodeEntries;
   NodeEntries _node_entries;
   NodeEntries _node_entries;
 
 
 public:
 public:

+ 2 - 2
panda/src/cull/geomBinGroup.h

@@ -25,7 +25,7 @@
 
 
 #include <pointerTo.h>
 #include <pointerTo.h>
 
 
-#include <vector>
+#include "pvector.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 //       Class : GeomBinGroup
 //       Class : GeomBinGroup
@@ -65,7 +65,7 @@ protected:
   virtual PT(GeomBin) detach();
   virtual PT(GeomBin) detach();
 
 
 private:
 private:
-  typedef vector< PT(GeomBin) > SubBins;
+  typedef pvector< PT(GeomBin) > SubBins;
   SubBins _sub_bins;
   SubBins _sub_bins;
 
 
 public:
 public:

+ 1 - 1
panda/src/cull/geomBinNormal.h

@@ -25,7 +25,7 @@
 
 
 #include <pointerTo.h>
 #include <pointerTo.h>
 
 
-#include <set>
+#include "pset.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 //       Class : GeomBinNormal
 //       Class : GeomBinNormal

+ 2 - 2
panda/src/cull/geomBinUnsorted.h

@@ -25,7 +25,7 @@
 
 
 #include <pointerTo.h>
 #include <pointerTo.h>
 
 
-#include <vector>
+#include "pvector.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 //       Class : GeomBinUnsorted
 //       Class : GeomBinUnsorted
@@ -52,7 +52,7 @@ public:
   virtual void write(ostream &out, int indent_level = 0) const;
   virtual void write(ostream &out, int indent_level = 0) const;
 
 
 private:
 private:
-  typedef vector< PT(CullState) > CullStates;
+  typedef pvector< PT(CullState) > CullStates;
   CullStates _cull_states;
   CullStates _cull_states;
 
 
 public:
 public:

+ 1 - 1
panda/src/device/clientAnalogDevice.h

@@ -61,7 +61,7 @@ protected:
     bool _known;
     bool _known;
   };
   };
 
 
-  typedef vector<AnalogState> Controls;
+  typedef pvector<AnalogState> Controls;
   Controls _controls;
   Controls _controls;
 
 
 
 

+ 3 - 3
panda/src/device/clientBase.h

@@ -34,7 +34,7 @@
 #include <ipc_thread.h>
 #include <ipc_thread.h>
 #endif
 #endif
 
 
-#include <map>
+#include "pmap.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 //       Class : ClientBase
 //       Class : ClientBase
@@ -74,8 +74,8 @@ protected:
   virtual void do_poll();
   virtual void do_poll();
 
 
 private:
 private:
-  typedef map<string, ClientDevice *> DevicesByName;
-  typedef map<TypeHandle, DevicesByName> Devices;
+  typedef pmap<string, ClientDevice *> DevicesByName;
+  typedef pmap<TypeHandle, DevicesByName> Devices;
   Devices _devices;
   Devices _devices;
 
 
   bool _forked;
   bool _forked;

+ 1 - 1
panda/src/device/clientButtonDevice.h

@@ -78,7 +78,7 @@ protected:
     State _state;
     State _state;
   };
   };
 
 
-  typedef vector<ButtonState> Buttons;
+  typedef pvector<ButtonState> Buttons;
   Buttons _buttons;
   Buttons _buttons;
 
 
   PT(ButtonEventDataAttribute) _button_events;
   PT(ButtonEventDataAttribute) _button_events;

+ 1 - 1
panda/src/device/clientDialDevice.h

@@ -59,7 +59,7 @@ protected:
     bool _known;
     bool _known;
   };
   };
 
 
-  typedef vector<DialState> Dials;
+  typedef pvector<DialState> Dials;
   Dials _dials;
   Dials _dials;
 
 
 
 

+ 2 - 2
panda/src/dgraph/buttonEventDataAttribute.h

@@ -24,7 +24,7 @@
 #include <nodeAttribute.h>
 #include <nodeAttribute.h>
 #include <buttonEvent.h>
 #include <buttonEvent.h>
 
 
-#include <vector>
+#include "pvector.h"
 
 
 class ButtonEventDataTransition;
 class ButtonEventDataTransition;
 class ModifierButtons;
 class ModifierButtons;
@@ -38,7 +38,7 @@ class ModifierButtons;
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 class EXPCL_PANDA ButtonEventDataAttribute : public NodeAttribute {
 class EXPCL_PANDA ButtonEventDataAttribute : public NodeAttribute {
 private:
 private:
-  typedef vector<ButtonEvent> Buttons;
+  typedef pvector<ButtonEvent> Buttons;
 
 
 public:
 public:
   INLINE ButtonEventDataAttribute();
   INLINE ButtonEventDataAttribute();

+ 1 - 1
panda/src/dgraph/dataGraphTraverser.h

@@ -59,7 +59,7 @@ private:
   void resume(Node *node, SavedState &state);
   void resume(Node *node, SavedState &state);
   void resume_all();
   void resume_all();
 
 
-  typedef map<Node *, SavedState> States;
+  typedef pmap<Node *, SavedState> States;
   States _saved_states;
   States _saved_states;
 };
 };
 
 

+ 1 - 1
panda/src/display/config_display.h

@@ -24,7 +24,7 @@
 #include <dconfig.h>
 #include <dconfig.h>
 
 
 #include <string>
 #include <string>
-#include <vector>
+#include "pvector.h"
 
 
 NotifyCategoryDecl(display, EXPCL_PANDA, EXPTP_PANDA);
 NotifyCategoryDecl(display, EXPCL_PANDA, EXPTP_PANDA);
 NotifyCategoryDecl(gsg, EXPCL_PANDA, EXPTP_PANDA);
 NotifyCategoryDecl(gsg, EXPCL_PANDA, EXPTP_PANDA);

+ 1 - 1
panda/src/display/displayRegion.h

@@ -26,7 +26,7 @@
 #include <referenceCount.h>
 #include <referenceCount.h>
 #include <camera.h>
 #include <camera.h>
 
 
-#include <list>
+#include "plist.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 // Defines
 // Defines

+ 1 - 1
panda/src/display/display_headers.h

@@ -32,7 +32,7 @@
 #include "textureContext.h"
 #include "textureContext.h"
 
 
 #include <algorithm>
 #include <algorithm>
-#include <map>
+#include "pmap.h"
 
 
 #pragma hdrstop
 #pragma hdrstop
 
 

+ 1 - 1
panda/src/display/graphicsChannel.cxx

@@ -26,7 +26,7 @@
 #include "graphicsWindow.h"
 #include "graphicsWindow.h"
 #include "config_display.h"
 #include "config_display.h"
 
 
-#include <map>
+#include "pmap.h"
 #endif
 #endif
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////

+ 2 - 2
panda/src/display/graphicsChannel.h

@@ -28,7 +28,7 @@
 #include <typedReferenceCount.h>
 #include <typedReferenceCount.h>
 #include <pointerTo.h>
 #include <pointerTo.h>
 
 
-#include <vector>
+#include "pvector.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 // Defines
 // Defines
@@ -75,7 +75,7 @@ private:
   GraphicsWindow *_window;
   GraphicsWindow *_window;
   bool _is_active;
   bool _is_active;
 
 
-  typedef vector< PT(GraphicsLayer) > GraphicsLayers;
+  typedef pvector< PT(GraphicsLayer) > GraphicsLayers;
   GraphicsLayers _layers;
   GraphicsLayers _layers;
 
 
 private:
 private:

+ 2 - 2
panda/src/display/graphicsLayer.h

@@ -29,7 +29,7 @@
 #include <typedReferenceCount.h>
 #include <typedReferenceCount.h>
 #include <pointerTo.h>
 #include <pointerTo.h>
 
 
-#include <vector>
+#include "pvector.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 // Defines
 // Defines
@@ -82,7 +82,7 @@ private:
   GraphicsChannel *_channel;
   GraphicsChannel *_channel;
   bool _is_active;
   bool _is_active;
 
 
-  typedef vector< PT(DisplayRegion) > DisplayRegions;
+  typedef pvector< PT(DisplayRegion) > DisplayRegions;
   DisplayRegions _display_regions;
   DisplayRegions _display_regions;
 
 
 private:
 private:

+ 3 - 3
panda/src/display/graphicsPipe.h

@@ -33,7 +33,7 @@
 #include <factoryParam.h>
 #include <factoryParam.h>
 
 
 #include <string>
 #include <string>
-#include <vector>
+#include "pvector.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 // Defines
 // Defines
@@ -115,8 +115,8 @@ protected:
 private:
 private:
   // Some private type declarations.  These must be declared here so
   // Some private type declarations.  These must be declared here so
   // we can declare the public iterator types, below.
   // we can declare the public iterator types, below.
-  typedef vector< PT(GraphicsWindow) > Windows;
-  typedef vector<GraphicsPipe *> Pipes;
+  typedef pvector< PT(GraphicsWindow) > Windows;
+  typedef pvector<GraphicsPipe *> Pipes;
 
 
   Windows _windows;
   Windows _windows;
 
 

+ 3 - 3
panda/src/display/graphicsStateGuardian.h

@@ -33,7 +33,7 @@
 #include <renderTraverser.h>
 #include <renderTraverser.h>
 #include <pStatCollector.h>
 #include <pStatCollector.h>
 
 
-#include <list>
+#include "plist.h"
 
 
 class AllAttributesWrapper;
 class AllAttributesWrapper;
 class AllTransitionsWrapper;
 class AllTransitionsWrapper;
@@ -155,7 +155,7 @@ protected:
   void init_frame_pstats();
   void init_frame_pstats();
   void add_to_texture_record(TextureContext *tc);
   void add_to_texture_record(TextureContext *tc);
   void record_state_change(TypeHandle type);
   void record_state_change(TypeHandle type);
-  set<TextureContext *> _current_textures;
+  pset<TextureContext *> _current_textures;
 #else
 #else
   INLINE void init_frame_pstats() { }
   INLINE void init_frame_pstats() { }
   INLINE void add_to_texture_record(TextureContext *) { }
   INLINE void add_to_texture_record(TextureContext *) { }
@@ -208,7 +208,7 @@ public:
   static PStatCollector _geom_nodes_pcollector;
   static PStatCollector _geom_nodes_pcollector;
 
 
 private:
 private:
-  typedef set<TextureContext *> Textures;
+  typedef pset<TextureContext *> Textures;
   Textures _prepared_textures;  // NOTE: on win32 another DLL (e.g. libpandadx.dll) cannot access set directly due to exported template issue
   Textures _prepared_textures;  // NOTE: on win32 another DLL (e.g. libpandadx.dll) cannot access set directly due to exported template issue
 
 
 public:
 public:

+ 1 - 1
panda/src/display/graphicsWindow.cxx

@@ -29,7 +29,7 @@
 #include <mouseButton.h>
 #include <mouseButton.h>
 #include <keyboardButton.h>
 #include <keyboardButton.h>
 
 
-#include <map>
+#include "pmap.h"
 #endif
 #endif
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////

+ 3 - 3
panda/src/display/graphicsWindow.h

@@ -39,8 +39,8 @@
 #include <pStatCollector.h>
 #include <pStatCollector.h>
 
 
 #include <string>
 #include <string>
-#include <vector>
-#include <deque>
+#include "pvector.h"
+#include "pdeque.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 // Defines
 // Defines
@@ -207,7 +207,7 @@ protected:
   void declare_channel(int index, GraphicsChannel *chan);
   void declare_channel(int index, GraphicsChannel *chan);
 
 
 private:
 private:
-  typedef vector< PT(GraphicsChannel) > Channels;
+  typedef pvector< PT(GraphicsChannel) > Channels;
   Channels _channels;
   Channels _channels;
 
 
 public:
 public:

+ 4 - 4
panda/src/display/graphicsWindowInputDevice.h

@@ -24,8 +24,8 @@
 #include <buttonEvent.h>
 #include <buttonEvent.h>
 #include <mouseData.h>
 #include <mouseData.h>
 
 
-#include <deque>
-#include <vector>
+#include "pdeque.h"
+#include "pvector.h"
 
 
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 //       Class : GraphicsWindowInputDevice
 //       Class : GraphicsWindowInputDevice
@@ -68,7 +68,7 @@ public:
 
 
 public:
 public:
   // We need these methods to make VC++ happy when we try to
   // We need these methods to make VC++ happy when we try to
-  // instantiate a vector<GraphicsWindowInputDevice>.  They don't do
+  // instantiate a pvector<GraphicsWindowInputDevice>.  They don't do
   // anything useful.
   // anything useful.
   INLINE bool operator == (const GraphicsWindowInputDevice &other) const;
   INLINE bool operator == (const GraphicsWindowInputDevice &other) const;
   INLINE bool operator != (const GraphicsWindowInputDevice &other) const;
   INLINE bool operator != (const GraphicsWindowInputDevice &other) const;
@@ -79,7 +79,7 @@ private:
     IDF_has_pointer    = 0x01,
     IDF_has_pointer    = 0x01,
     IDF_has_keyboard   = 0x02
     IDF_has_keyboard   = 0x02
   };
   };
-  typedef deque<ButtonEvent> ButtonEvents;
+  typedef pdeque<ButtonEvent> ButtonEvents;
 
 
   string _name;
   string _name;
   int _flags;
   int _flags;

+ 1 - 1
panda/src/downloader/asyncDownloader.cxx

@@ -35,7 +35,7 @@
 
 
 #include "asyncDownloader.h"
 #include "asyncDownloader.h"
 #include <circBuffer.h>
 #include <circBuffer.h>
-#include <list>
+#include "plist.h"
 
 
 #if !defined(WIN32_VC)
 #if !defined(WIN32_VC)
 // #define errno wsaGetLastError()
 // #define errno wsaGetLastError()

+ 9 - 9
panda/src/downloader/downloadDb.cxx

@@ -329,7 +329,7 @@ server_add_file(string mfname, string fname) {
   PT(FileRecord) fr = new FileRecord(fname);
   PT(FileRecord) fr = new FileRecord(fname);
 
 
   // Find the multifile with mfname
   // Find the multifile with mfname
-  vector< PT(MultifileRecord) >::iterator i = _server_db._mfile_records.begin();
+  pvector< PT(MultifileRecord) >::iterator i = _server_db._mfile_records.begin();
   for(; i != _server_db._mfile_records.end(); ++i) {
   for(; i != _server_db._mfile_records.end(); ++i) {
     if (mfname == (*i)->_name) {
     if (mfname == (*i)->_name) {
       (*i)->add_file_record(fr);
       (*i)->add_file_record(fr);
@@ -390,7 +390,7 @@ output(ostream &out) const {
       << "     size: " << _size    << endl
       << "     size: " << _size    << endl
       << "   status: " << _status  << endl;
       << "   status: " << _status  << endl;
   out << "--------------------------------------------------" << endl;
   out << "--------------------------------------------------" << endl;
-  vector< PT(FileRecord) >::const_iterator i = _file_records.begin();
+  pvector< PT(FileRecord) >::const_iterator i = _file_records.begin();
   for(; i != _file_records.end(); ++i) {
   for(; i != _file_records.end(); ++i) {
     (*i)->output(out);
     (*i)->output(out);
   }
   }
@@ -426,7 +426,7 @@ get_file_name(int index) const {
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 bool DownloadDb::MultifileRecord::
 bool DownloadDb::MultifileRecord::
 file_exists(string fname) const {
 file_exists(string fname) const {
-  vector< PT(FileRecord) >::const_iterator i = _file_records.begin();
+  pvector< PT(FileRecord) >::const_iterator i = _file_records.begin();
   for(; i != _file_records.end(); ++i) {
   for(; i != _file_records.end(); ++i) {
     if (fname == (*i)->_name) {
     if (fname == (*i)->_name) {
       return true;
       return true;
@@ -443,7 +443,7 @@ file_exists(string fname) const {
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 PT(DownloadDb::FileRecord) DownloadDb::MultifileRecord::
 PT(DownloadDb::FileRecord) DownloadDb::MultifileRecord::
 get_file_record_named(string fname) const {
 get_file_record_named(string fname) const {
-  vector< PT(FileRecord) >::const_iterator i = _file_records.begin();
+  pvector< PT(FileRecord) >::const_iterator i = _file_records.begin();
   for(; i != _file_records.end(); ++i) {
   for(; i != _file_records.end(); ++i) {
     if (fname == (*i)->_name) {
     if (fname == (*i)->_name) {
       return (*i);
       return (*i);
@@ -495,7 +495,7 @@ Db(void) {
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 void DownloadDb::Db::
 void DownloadDb::Db::
 output(ostream &out) const {
 output(ostream &out) const {
-  vector< PT(MultifileRecord) >::const_iterator i = _mfile_records.begin();
+  pvector< PT(MultifileRecord) >::const_iterator i = _mfile_records.begin();
   for(; i != _mfile_records.end(); ++i) {
   for(; i != _mfile_records.end(); ++i) {
     (*i)->output(out);
     (*i)->output(out);
   }
   }
@@ -529,7 +529,7 @@ get_multifile_name(int index) const {
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 bool DownloadDb::Db::
 bool DownloadDb::Db::
 multifile_exists(string mfname) const {
 multifile_exists(string mfname) const {
-  vector< PT(MultifileRecord) >::const_iterator i = _mfile_records.begin();
+  pvector< PT(MultifileRecord) >::const_iterator i = _mfile_records.begin();
   for(; i != _mfile_records.end(); ++i) {
   for(; i != _mfile_records.end(); ++i) {
     if (mfname == (*i)->_name) {
     if (mfname == (*i)->_name) {
       return true;
       return true;
@@ -545,7 +545,7 @@ multifile_exists(string mfname) const {
 ////////////////////////////////////////////////////////////////////
 ////////////////////////////////////////////////////////////////////
 PT(DownloadDb::MultifileRecord) DownloadDb::Db::
 PT(DownloadDb::MultifileRecord) DownloadDb::Db::
 get_multifile_record_named(string mfname) const {
 get_multifile_record_named(string mfname) const {
-  vector< PT(MultifileRecord) >::const_iterator i = _mfile_records.begin();
+  pvector< PT(MultifileRecord) >::const_iterator i = _mfile_records.begin();
   for(; i != _mfile_records.end(); ++i) {
   for(; i != _mfile_records.end(); ++i) {
     if (mfname == (*i)->_name) {
     if (mfname == (*i)->_name) {
       return (*i);
       return (*i);
@@ -806,7 +806,7 @@ write(ofstream &write_stream, bool want_server_info) {
   PN_int32 header_length;
   PN_int32 header_length;
 
 
   // Iterate over the multifiles writing them to the stream
   // Iterate over the multifiles writing them to the stream
-  vector< PT(MultifileRecord) >::const_iterator i = _mfile_records.begin();
+  pvector< PT(MultifileRecord) >::const_iterator i = _mfile_records.begin();
   for(; i != _mfile_records.end(); ++i) {
   for(; i != _mfile_records.end(); ++i) {
     _datagram.clear();
     _datagram.clear();
 
 
@@ -847,7 +847,7 @@ write(ofstream &write_stream, bool want_server_info) {
     if (want_server_info) {
     if (want_server_info) {
       // Now iterate over this multifile's files writing them to the stream
       // Now iterate over this multifile's files writing them to the stream
       // Iterate over the multifiles writing them to the stream
       // Iterate over the multifiles writing them to the stream
-      vector< PT(FileRecord) >::const_iterator j = (*i)->_file_records.begin();
+      pvector< PT(FileRecord) >::const_iterator j = (*i)->_file_records.begin();
       for(; j != (*i)->_file_records.end(); ++j) {
       for(; j != (*i)->_file_records.end(); ++j) {
         // Clear the datagram before we jam a bunch of stuff on it
         // Clear the datagram before we jam a bunch of stuff on it
         _datagram.clear();
         _datagram.clear();

+ 6 - 6
panda/src/downloader/downloadDb.h

@@ -26,10 +26,10 @@
 #include <filename.h>
 #include <filename.h>
 #include <multifile.h>
 #include <multifile.h>
 
 
-#include <vector>
+#include "pvector.h"
 #include <string>
 #include <string>
 #include <pointerTo.h>
 #include <pointerTo.h>
-#include <map>
+#include "pmap.h"
 
 
 #include "hashVal.h"
 #include "hashVal.h"
 #include <buffer.h>
 #include <buffer.h>
@@ -134,7 +134,7 @@ public:
     string _name;
     string _name;
   };
   };
 
 
-  typedef vector< PT(FileRecord) > FileRecords;
+  typedef pvector< PT(FileRecord) > FileRecords;
 
 
   class EXPCL_PANDAEXPRESS MultifileRecord : public ReferenceCount {
   class EXPCL_PANDAEXPRESS MultifileRecord : public ReferenceCount {
   public:
   public:
@@ -154,7 +154,7 @@ public:
     FileRecords _file_records;
     FileRecords _file_records;
   };
   };
 
 
-  typedef vector< PT(MultifileRecord) > MultifileRecords;
+  typedef pvector< PT(MultifileRecord) > MultifileRecords;
 
 
   class EXPCL_PANDAEXPRESS Db {
   class EXPCL_PANDAEXPRESS Db {
   public:
   public:
@@ -197,8 +197,8 @@ public:
   // Magic number for knowing this is a download Db
   // Magic number for knowing this is a download Db
   static PN_uint32 _magic_number;
   static PN_uint32 _magic_number;
   static PN_uint32 _bogus_magic_number;
   static PN_uint32 _bogus_magic_number;
-  typedef vector<HashVal> vectorHash;
-  typedef map<string, vectorHash> VersionMap;
+  typedef pvector<HashVal> vectorHash;
+  typedef pmap<string, vectorHash> VersionMap;
 
 
 PUBLISHED:
 PUBLISHED:
   void add_version(const Filename &name, HashVal hash, Version version);
   void add_version(const Filename &name, HashVal hash, Version version);

Some files were not shown because too many files changed in this diff