Adding some user events to trace the multicasts.
[charm.git] / src / ck-com / ComlibLearner.h
index 5d60d29e0f52ff64d7347856d73864a847d154bf..8fd6698370a1662e27a27dec171e77e03da605ba 100644 (file)
@@ -1,30 +1,48 @@
 #ifndef COMLIBLEARNER_H
 #define COMLIBLEARNER_H
 
+
+/**
+   @addtogroup CharmComlib
+   @{
+   @file
+
+   @brief ComlibLearner
+
+*/
+
 #include "convcomlibstrategy.h"
 
+class ComlibGlobalStats;
 
-/* Communication library learner which takes a strategy or a list of
+/** Communication library learner which takes a strategy or a list of
    strategies as input along with the communication pattern of the
    objects belonging to those strategies and returns new strategies to
    replace the input strategies. These new strategies optimize the
    communication pattern. */
 
-class ComlibGlobalStats;
 class ComlibLearner {
  public:
-    //Configures parameters of the learner. Will be called by the
-    //communication library on every processor after the second
-    //barrier of the communication library.
+    virtual ~ComlibLearner() {}
+    /// Configures parameters of the learner. Will be called by the
+    /// communication library on every processor after the second
+    /// barrier of the communication library.
     virtual void init() {}
     
-    //Optimizes a specific strategy. Returns a new optimized strategy
-    virtual Strategy* optimizePattern(Strategy *strat,ComlibGlobalStats &sdata){return NULL;}
+    /// Optimizes a specific strategy. Returns a new optimized strategy
+    virtual Strategy* optimizePattern(Strategy *strat, 
+                                      ComlibGlobalStats &sdata){
+        return NULL;
+    }
     
-    //Optimizes the communication pattern of a group of strategies
-    //together
+    //Optimizes the communication pattern of a group of strategies
+    //together
     virtual Strategy** optimizePattern(Strategy **strat, 
-                                           ComlibGlobalStats &sdata){return NULL;}
+                                       ComlibGlobalStats &sdata){
+        return NULL;
+    }
 };
 
+/*@}*/
+
 #endif