Merge branch 'charm' of charmgit:charm into charm
[charm.git] / src / ck-com / ComlibLearner.h
index aa1f1a066851148d7da01c0b2bf935e35562bb95..8fd6698370a1662e27a27dec171e77e03da605ba 100644 (file)
@@ -1,35 +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
+    //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;
     }
 };
 
+/*@}*/
+
 #endif