Boost logo

Boost-Commit :

Subject: [Boost-commit] svn:boost r56025 - sandbox/statistics/tree_view/boost/tree_view
From: erwann.rogard_at_[hidden]
Date: 2009-09-04 20:39:27


Author: e_r
Date: 2009-09-04 20:39:26 EDT (Fri, 04 Sep 2009)
New Revision: 56025
URL: http://svn.boost.org/trac/boost/changeset/56025

Log:
m
Text files modified:
   sandbox/statistics/tree_view/boost/tree_view/depth_first.hpp | 10 +++++++---
   sandbox/statistics/tree_view/boost/tree_view/node.hpp | 23 ++++++++++++++++++-----
   sandbox/statistics/tree_view/boost/tree_view/stage.hpp | 2 +-
   3 files changed, 26 insertions(+), 9 deletions(-)

Modified: sandbox/statistics/tree_view/boost/tree_view/depth_first.hpp
==============================================================================
--- sandbox/statistics/tree_view/boost/tree_view/depth_first.hpp (original)
+++ sandbox/statistics/tree_view/boost/tree_view/depth_first.hpp 2009-09-04 20:39:26 EDT (Fri, 04 Sep 2009)
@@ -17,6 +17,7 @@
 namespace boost{
 namespace tree_view{
 
+ // Manages a node that moves in the tree according to breadth-first
     template<unsigned n,unsigned m = BOOST_SWITCH_LIMIT>
     class depth_first
         : incrementable<
@@ -27,21 +28,24 @@
         typedef node<n,m> node_type;
         public:
         
+ // [ Construction ]
         depth_first();
+ // Initialized with the root node:
         depth_first(unsigned n_stages); //terminal stage = n_stages - 1
         
         // [ Update ]
- void operator++();
+ void operator++();
         
         // [ Access ]
- bool is_subtree()const;
+ // Whether the subtree rooted at the current node was visited
+ bool is_subtree()const;
         const node_type& node()const;
         unsigned n_stages()const;
 
         private:
         const bools_& tree()const{ return this->tree_; }
         unsigned n_stages_;
- bools_ tree_;
+ bools_ tree_; // keeps is_subtree for each node in the tree
         node_type node_;
     };
     

Modified: sandbox/statistics/tree_view/boost/tree_view/node.hpp
==============================================================================
--- sandbox/statistics/tree_view/boost/tree_view/node.hpp (original)
+++ sandbox/statistics/tree_view/boost/tree_view/node.hpp 2009-09-04 20:39:26 EDT (Fri, 04 Sep 2009)
@@ -16,7 +16,12 @@
 namespace boost{
 namespace tree_view{
 
-// n = 3 :
+// Data structure reprensentation:
+// i : position in physical storage
+// k : position in stage
+// j : stage
+//
+// Example for n = 3 :
 //
 // j: 0 1 2
 //
@@ -38,7 +43,8 @@
 // ) )
 // )
 
-
+ // Data structure representing a node in a tree
+ //
     // n : number of branches
     // m : number of stages
     template<unsigned n,unsigned m = BOOST_SWITCH_LIMIT>
@@ -64,6 +70,8 @@
         
         node();
         node(unsigned j,unsigned k);
+
+ // ++ and -- are along breadth-first
         this_& operator++();
         this_& operator--();
         bool operator==(const this_&)const;
@@ -90,7 +98,7 @@
     tree_view::node<n,m>
     parent(const tree_view::node<n,m>& child);
 
- // first_child(a) is first node in the next stage, parented at a
+ // first_child(a) is first node in the next stage, with parent a.
     // To visit all the nodes sharing the same parent:
     // node<n,m> node = first_child(a);
     // while(parent(node++)!=a){...}
@@ -98,7 +106,8 @@
     tree_view::node<n,m>
     first_child(const tree_view::node<n,m>& parent);
 
- // -> firs, back and last of each stage
+ // -> first, back and last of each stage
+ // [first,...,back,last)
     template<unsigned n,unsigned m>
     tree_view::node<n,m>
     first(const tree_view::node<n,m>& root,unsigned stage);
@@ -112,6 +121,7 @@
     last(const tree_view::node<n,m>& root,unsigned stage);
     // <-
 
+ // prior and next by breadth first.
     template<unsigned n,unsigned m>
     tree_view::node<n,m>
     prior(const tree_view::node<n,m>& node);
@@ -193,7 +203,10 @@
 }
 
     template<unsigned n,unsigned m>
- std::ostream& operator<<(std::ostream& out, const tree_view::node<n,m>& that){
+ std::ostream& operator<<(
+ std::ostream& out,
+ const tree_view::node<n,m>& that
+ ){
         out
             << '(' << that.stage
             << ',' << that.position_in_stage

Modified: sandbox/statistics/tree_view/boost/tree_view/stage.hpp
==============================================================================
--- sandbox/statistics/tree_view/boost/tree_view/stage.hpp (original)
+++ sandbox/statistics/tree_view/boost/tree_view/stage.hpp 2009-09-04 20:39:26 EDT (Fri, 04 Sep 2009)
@@ -18,7 +18,7 @@
     // The tree structure has a root node (stage 0) with n adjacent
     // nodes (stage 1), each of which have n adjacent nodes (stage 2) etc.
     // The nodes are stored in a vector, starting with the root node,
- // followed by those in stage1, then those in stage 2 etc.
+ // followed by those in stage1, then those in stage 2 etc. (breadth first)
     
     // j : stage
     // n : number of branches per node


Boost-Commit list run by bdawes at acm.org, david.abrahams at rcn.com, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk