< prev index next >

src/hotspot/share/gc/cms/cmsHeap.hpp

Print this page

        

@@ -23,19 +23,21 @@
  */
 
 #ifndef SHARE_VM_GC_CMS_CMSHEAP_HPP
 #define SHARE_VM_GC_CMS_CMSHEAP_HPP
 
+#include "gc/cms/cmsSettings.hpp"
 #include "gc/cms/concurrentMarkSweepGeneration.hpp"
 #include "gc/shared/collectedHeap.hpp"
 #include "gc/shared/gcCause.hpp"
 #include "gc/shared/genCollectedHeap.hpp"
 #include "utilities/growableArray.hpp"
 
 class CLDClosure;
-class GenCollectorPolicy;
+class CMSSettings;
 class GCMemoryManager;
+class GCPolicyCounters;
 class MemoryPool;
 class OopsInGenClosure;
 class outputStream;
 class StrongRootsScope;
 class ThreadClosure;

@@ -45,15 +47,17 @@
 
 protected:
   virtual void check_gen_kinds();
 
 public:
-  CMSHeap(GenCollectorPolicy *policy);
+  CMSHeap(const CMSSettings& settings);
 
   // Returns JNI_OK on success
   virtual jint initialize();
 
+  virtual void initialize_gc_policy_counters();
+
   // Convenience function to be used in situations where the heap type can be
   // asserted to be this type.
   static CMSHeap* heap();
 
   virtual Name kind() const {

@@ -95,10 +99,12 @@
                          CLDClosure* cld_closure);
 
   GCMemoryManager* old_manager() const { return _old_manager; }
 
 private:
+  const CMSSettings _settings;
+
   WorkGang* _workers;
   MemoryPool* _eden_pool;
   MemoryPool* _survivor_pool;
   MemoryPool* _old_pool;
 
< prev index next >