Browse Source

Modifies api to avoid duplicating values when possible

Caleb Fangmeier 7 years ago
parent
commit
5559a13f24
100 changed files with 4846 additions and 5378 deletions
  1. 2 2
      CMakeLists.txt
  2. 3 3
      analysis/MiniTreeDataSet.hpp
  3. 4 0
      analysis/TTTT_Analysis.cpp
  4. 3 4
      docs/MiniTreeDataSet_8hpp_source.html
  5. 4210 4881
      docs/TTTT_Analysis.html
  6. 8 8
      docs/annotated.html
  7. 86 78
      docs/api_8hpp.html
  8. 16 15
      docs/api_8hpp_source.html
  9. 16 15
      docs/classfv_1_1Apply_3_01Ret_07ArgTypes_8_8_8_08_4-members.html
  10. 8 1
      docs/classfv_1_1Apply_3_01Ret_07ArgTypes_8_8_8_08_4.html
  11. 3 3
      docs/classfv_1_1BoundValue.html
  12. 1 1
      docs/classfv_1_1BoundValue__coll__graph.map
  13. 1 1
      docs/classfv_1_1BoundValue__coll__graph.md5
  14. 1 1
      docs/classfv_1_1BoundValue__inherit__graph.map
  15. 1 1
      docs/classfv_1_1BoundValue__inherit__graph.md5
  16. 17 16
      docs/classfv_1_1CartProduct-members.html
  17. 8 1
      docs/classfv_1_1CartProduct.html
  18. 5 5
      docs/classfv_1_1Combinations-members.html
  19. 8 8
      docs/classfv_1_1Combinations.html
  20. 5 5
      docs/classfv_1_1ConstantValue.html
  21. 1 1
      docs/classfv_1_1ConstantValue__coll__graph.map
  22. 1 1
      docs/classfv_1_1ConstantValue__coll__graph.md5
  23. 1 1
      docs/classfv_1_1ConstantValue__inherit__graph.map
  24. 1 1
      docs/classfv_1_1ConstantValue__inherit__graph.md5
  25. 1 1
      docs/classfv_1_1Container.html
  26. 2 2
      docs/classfv_1_1ContainerMean.html
  27. 18 17
      docs/classfv_1_1Count-members.html
  28. 8 1
      docs/classfv_1_1Count.html
  29. 17 16
      docs/classfv_1_1DeTup-members.html
  30. 8 1
      docs/classfv_1_1DeTup.html
  31. 17 16
      docs/classfv_1_1DeTupVector-members.html
  32. 8 1
      docs/classfv_1_1DeTupVector.html
  33. 6 6
      docs/classfv_1_1DerivedValue.html
  34. 1 1
      docs/classfv_1_1DerivedValue__coll__graph.map
  35. 1 1
      docs/classfv_1_1DerivedValue__coll__graph.md5
  36. 1 1
      docs/classfv_1_1DerivedValue__inherit__graph.map
  37. 1 1
      docs/classfv_1_1DerivedValue__inherit__graph.md5
  38. 2 2
      docs/classfv_1_1ElementOf.html
  39. 1 1
      docs/classfv_1_1ElementOf__coll__graph.map
  40. 1 1
      docs/classfv_1_1ElementOf__coll__graph.md5
  41. 1 1
      docs/classfv_1_1ElementOf__inherit__graph.map
  42. 1 1
      docs/classfv_1_1ElementOf__inherit__graph.md5
  43. 16 15
      docs/classfv_1_1Filter-members.html
  44. 8 1
      docs/classfv_1_1Filter.html
  45. 1 1
      docs/classfv_1_1Function_3_01R_07ArgTypes_8_8_8_08_4.html
  46. 17 16
      docs/classfv_1_1Map_3_01Ret_07ArgTypes_8_8_8_08_4-members.html
  47. 9 2
      docs/classfv_1_1Map_3_01Ret_07ArgTypes_8_8_8_08_4.html
  48. 17 16
      docs/classfv_1_1Max-members.html
  49. 9 2
      docs/classfv_1_1Max.html
  50. 1 1
      docs/classfv_1_1Max__coll__graph.map
  51. 1 1
      docs/classfv_1_1Max__coll__graph.md5
  52. 1 1
      docs/classfv_1_1Max__inherit__graph.map
  53. 1 1
      docs/classfv_1_1Max__inherit__graph.md5
  54. 17 16
      docs/classfv_1_1Mean-members.html
  55. 9 2
      docs/classfv_1_1Mean.html
  56. 1 1
      docs/classfv_1_1Mean__coll__graph.map
  57. 1 1
      docs/classfv_1_1Mean__coll__graph.md5
  58. 1 1
      docs/classfv_1_1Mean__inherit__graph.map
  59. 1 1
      docs/classfv_1_1Mean__inherit__graph.md5
  60. 17 16
      docs/classfv_1_1Min-members.html
  61. 9 2
      docs/classfv_1_1Min.html
  62. 1 1
      docs/classfv_1_1Min__coll__graph.map
  63. 1 1
      docs/classfv_1_1Min__coll__graph.md5
  64. 1 1
      docs/classfv_1_1Min__inherit__graph.map
  65. 1 1
      docs/classfv_1_1Min__inherit__graph.md5
  66. 16 15
      docs/classfv_1_1ObservedValue-members.html
  67. 9 2
      docs/classfv_1_1ObservedValue.html
  68. 1 1
      docs/classfv_1_1ObservedValue__coll__graph.map
  69. 1 1
      docs/classfv_1_1ObservedValue__coll__graph.md5
  70. 1 1
      docs/classfv_1_1ObservedValue__inherit__graph.map
  71. 1 1
      docs/classfv_1_1ObservedValue__inherit__graph.md5
  72. 17 16
      docs/classfv_1_1Pair-members.html
  73. 10 3
      docs/classfv_1_1Pair.html
  74. 3 3
      docs/classfv_1_1PointerValue.html
  75. 18 17
      docs/classfv_1_1Range-members.html
  76. 9 2
      docs/classfv_1_1Range.html
  77. 1 1
      docs/classfv_1_1Range__coll__graph.map
  78. 1 1
      docs/classfv_1_1Range__coll__graph.md5
  79. 1 1
      docs/classfv_1_1Range__inherit__graph.map
  80. 1 1
      docs/classfv_1_1Range__inherit__graph.md5
  81. 5 5
      docs/classfv_1_1Reduce.html
  82. 1 1
      docs/classfv_1_1ReduceIndex.html
  83. 1 1
      docs/classfv_1_1Reduce__coll__graph.map
  84. 1 1
      docs/classfv_1_1Reduce__coll__graph.md5
  85. 1 1
      docs/classfv_1_1Reduce__inherit__graph.map
  86. 1 1
      docs/classfv_1_1Reduce__inherit__graph.md5
  87. 17 16
      docs/classfv_1_1TupFilter-members.html
  88. 8 1
      docs/classfv_1_1TupFilter.html
  89. 8 8
      docs/classfv_1_1Tuple-members.html
  90. 10 6
      docs/classfv_1_1Tuple.html
  91. 2 2
      docs/classfv_1_1Value.html
  92. 17 16
      docs/classfv_1_1WrapperVector-members.html
  93. 10 3
      docs/classfv_1_1WrapperVector.html
  94. 8 8
      docs/classfv_1_1Zip-members.html
  95. 9 5
      docs/classfv_1_1Zip.html
  96. 1 1
      docs/container_8hpp.html
  97. 1 2
      docs/container_8hpp_source.html
  98. 1 1
      docs/filter_8hpp_source.html
  99. 8 8
      docs/hierarchy.html
  100. 0 0
      docs/inherit_graph_29.map

+ 2 - 2
CMakeLists.txt

@@ -7,7 +7,7 @@ PROJECT (TTTT CXX)
 SET(FILVAL_VERSION_MAJOR 0)
 SET(FILVAL_VERSION_MINOR 1)
 SET(FILVAL_VERSION_PATCH 0)
-SET(CMAKE_BUILD_TYPE "Debug")
+SET(CMAKE_BUILD_TYPE "Release")
 
 CONFIGURE_FILE (
   "${PROJECT_SOURCE_DIR}/filval/filval.hpp"
@@ -23,7 +23,7 @@ SET (CMAKE_CXX_COMPILER             "/usr/bin/clang++")
 SET (CMAKE_CXX_FLAGS                "-Wall")
 SET (CMAKE_CXX_FLAGS_DEBUG          "-g")
 SET (CMAKE_CXX_FLAGS_MINSIZEREL     "-Os -DNDEBUG")
-SET (CMAKE_CXX_FLAGS_RELEASE        "-O4 -DNDEBUG")
+SET (CMAKE_CXX_FLAGS_RELEASE        "-O3 -DNDEBUG")
 SET (CMAKE_CXX_FLAGS_RELWITHDEBINFO "-O2 -g")
 
 SET (CMAKE_AR      "/usr/bin/llvm-ar")

+ 3 - 3
analysis/MiniTreeDataSet.hpp

@@ -110,9 +110,9 @@ class MiniTreeDataSet : public DataSet,
         }
 
         template <typename T>
-        WrapperVector<T>* track_branch_vec(const std::string& size_bname, const std::string& bname){
-            track_branch_ptr<T>(bname);
-            return new WrapperVector<T>(lookup<int>(size_bname), lookup<T*>(bname), bname);
+        decltype(auto) track_branch_vec(const std::string& size_bname, const std::string& value_bname){
+            track_branch_ptr<T>(value_bname);
+            return wrapper_vector<T>(lookup<int>(size_bname), lookup<T*>(value_bname), value_bname);
         }
 
         void save_all(){

+ 4 - 0
analysis/TTTT_Analysis.cpp

@@ -129,6 +129,10 @@ void declare_values(MiniTreeDataSet& mt){
     lorentz_vectors("GenPart_pt", "GenPart_eta", "GenPart_phi", "GenPart_mass", "GenPart_4v");
     lorentz_vectors("Jet_pt",     "Jet_eta",     "Jet_phi",     "Jet_mass",     "Jet_4v"    );
 
+    lorentz_vectors("LepGood_pt", "LepGood_eta", "LepGood_phi", "LepGood_mass", "LepGood_4v");
+    lorentz_vectors("GenPart_pt", "GenPart_eta", "GenPart_phi", "GenPart_mass", "GenPart_4v");
+    lorentz_vectors("Jet_pt",     "Jet_eta",     "Jet_phi",     "Jet_mass",     "Jet_4v"    );
+
     energies("GenPart_4v", "GenPart_energy");
 
 

File diff suppressed because it is too large
+ 3 - 4
docs/MiniTreeDataSet_8hpp_source.html


File diff suppressed because it is too large
+ 4210 - 4881
docs/TTTT_Analysis.html


File diff suppressed because it is too large
+ 8 - 8
docs/annotated.html


+ 86 - 78
docs/api_8hpp.html

@@ -109,113 +109,121 @@ Functions</h2></td></tr>
 template&lt;typename T &gt; </td></tr>
 <tr class="memitem:a0fae7ec6ace37b889e1dd4d6a6cdc813"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; T &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::lookup</b> (const std::string &amp;name)</td></tr>
 <tr class="separator:a0fae7ec6ace37b889e1dd4d6a6cdc813"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a077f9e42129f3f25591168c14a629acf"><td class="memTemplParams" colspan="2"><a id="a077f9e42129f3f25591168c14a629acf"></a>
+template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a077f9e42129f3f25591168c14a629acf"><td class="memTemplItemLeft" align="right" valign="top">bool&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::check_exists</b> (const std::string name)</td></tr>
+<tr class="separator:a077f9e42129f3f25591168c14a629acf"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a18680fa2be352500598d8001eb9b2fd1"><td class="memItemLeft" align="right" valign="top"><a id="a18680fa2be352500598d8001eb9b2fd1"></a>
 ObsFilter *&#160;</td><td class="memItemRight" valign="bottom"><b>fv::lookup_obs_filter</b> (const std::string &amp;name)</td></tr>
 <tr class="separator:a18680fa2be352500598d8001eb9b2fd1"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a26b50d1fe8359abd46a343b27439c35f"><td class="memTemplParams" colspan="2"><a id="a26b50d1fe8359abd46a343b27439c35f"></a>
+<tr class="memitem:a6fe64b3422f4da95c98851b379033079"><td class="memTemplParams" colspan="2"><a id="a6fe64b3422f4da95c98851b379033079"></a>
+template&lt;typename T &gt; </td></tr>
+<tr class="memitem:a6fe64b3422f4da95c98851b379033079"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::wrapper_vector</b> (Value&lt; int &gt; *size, Value&lt; T *&gt; *data, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a6fe64b3422f4da95c98851b379033079"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3c468f0610de2dff8078e5b2a241827b"><td class="memTemplParams" colspan="2"><a id="a3c468f0610de2dff8078e5b2a241827b"></a>
 template&lt;typename... ArgTypes&gt; </td></tr>
-<tr class="memitem:a26b50d1fe8359abd46a343b27439c35f"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::vector&lt; std::tuple&lt; ArgTypes... &gt; &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::zip</b> (Value&lt; std::vector&lt; ArgTypes &gt;&gt; *... args, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a26b50d1fe8359abd46a343b27439c35f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a5f6cddf787ea43504071ae6241009c98"><td class="memTemplParams" colspan="2"><a id="a5f6cddf787ea43504071ae6241009c98"></a>
+<tr class="memitem:a3c468f0610de2dff8078e5b2a241827b"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::zip</b> (Value&lt; std::vector&lt; ArgTypes &gt;&gt; *... args, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a3c468f0610de2dff8078e5b2a241827b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a12082b6cb29d222917ae238ae3c7aee6"><td class="memTemplParams" colspan="2"><a id="a12082b6cb29d222917ae238ae3c7aee6"></a>
 template&lt;typename Ret , typename... ArgTypes&gt; </td></tr>
-<tr class="memitem:a5f6cddf787ea43504071ae6241009c98"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::vector&lt; Ret &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::map</b> (Function&lt; Ret(ArgTypes...)&gt; &amp;fn, Value&lt; std::vector&lt; std::tuple&lt; ArgTypes... &gt;&gt;&gt; *arg, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a5f6cddf787ea43504071ae6241009c98"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ad1aca7a0eb3a862c635286c5d65f0cfd"><td class="memTemplParams" colspan="2"><a id="ad1aca7a0eb3a862c635286c5d65f0cfd"></a>
+<tr class="memitem:a12082b6cb29d222917ae238ae3c7aee6"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::map</b> (Function&lt; Ret(ArgTypes...)&gt; &amp;fn, Value&lt; std::vector&lt; std::tuple&lt; ArgTypes... &gt;&gt;&gt; *arg, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a12082b6cb29d222917ae238ae3c7aee6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a470b4d26c1d5478e844bd9a02b3ef711"><td class="memTemplParams" colspan="2"><a id="a470b4d26c1d5478e844bd9a02b3ef711"></a>
 template&lt;typename... ArgTypes&gt; </td></tr>
-<tr class="memitem:ad1aca7a0eb3a862c635286c5d65f0cfd"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::tuple&lt; ArgTypes... &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::tuple</b> (Value&lt; ArgTypes &gt; *... args)</td></tr>
-<tr class="separator:ad1aca7a0eb3a862c635286c5d65f0cfd"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a3951826aff6680e2d587fb6fb08e7526"><td class="memTemplParams" colspan="2"><a id="a3951826aff6680e2d587fb6fb08e7526"></a>
+<tr class="memitem:a470b4d26c1d5478e844bd9a02b3ef711"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::tuple</b> (Value&lt; ArgTypes &gt; *... args)</td></tr>
+<tr class="separator:a470b4d26c1d5478e844bd9a02b3ef711"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a0813d130f646304ac7153931a0c5af52"><td class="memTemplParams" colspan="2"><a id="a0813d130f646304ac7153931a0c5af52"></a>
 template&lt;size_t N, typename... ArgTypes&gt; </td></tr>
-<tr class="memitem:a3951826aff6680e2d587fb6fb08e7526"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; typename std::tuple_element&lt; N, std::tuple&lt; ArgTypes... &gt; &gt;::type &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::detup</b> (Value&lt; std::tuple&lt; ArgTypes... &gt;&gt; *tup, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a3951826aff6680e2d587fb6fb08e7526"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a529978066d36d743a0083968cccbfe0a"><td class="memTemplParams" colspan="2"><a id="a529978066d36d743a0083968cccbfe0a"></a>
+<tr class="memitem:a0813d130f646304ac7153931a0c5af52"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::detup</b> (Value&lt; std::tuple&lt; ArgTypes... &gt;&gt; *tup, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a0813d130f646304ac7153931a0c5af52"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9f3e7cdd2e551864ca05a495d82829f9"><td class="memTemplParams" colspan="2"><a id="a9f3e7cdd2e551864ca05a495d82829f9"></a>
 template&lt;size_t N, typename... ArgTypes&gt; </td></tr>
-<tr class="memitem:a529978066d36d743a0083968cccbfe0a"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::vector&lt; typename std::tuple_element&lt; N, std::tuple&lt; ArgTypes... &gt; &gt;::type &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::detup_vec</b> (Value&lt; std::vector&lt; std::tuple&lt; ArgTypes... &gt;&gt;&gt; *tup, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a529978066d36d743a0083968cccbfe0a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:abf84ef885345c7a71fbd417f3d9e94f3"><td class="memTemplParams" colspan="2"><a id="abf84ef885345c7a71fbd417f3d9e94f3"></a>
+<tr class="memitem:a9f3e7cdd2e551864ca05a495d82829f9"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::detup_vec</b> (Value&lt; std::vector&lt; std::tuple&lt; ArgTypes... &gt;&gt;&gt; *tup, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a9f3e7cdd2e551864ca05a495d82829f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af356278ec3dbb7e440bbf4c16bc45a6c"><td class="memTemplParams" colspan="2"><a id="af356278ec3dbb7e440bbf4c16bc45a6c"></a>
 template&lt;typename Ret , typename... ArgTypes&gt; </td></tr>
-<tr class="memitem:abf84ef885345c7a71fbd417f3d9e94f3"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; Ret &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::apply</b> (Function&lt; Ret(ArgTypes...)&gt; &amp;fn, Value&lt; std::tuple&lt; ArgTypes... &gt;&gt; *arg, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:abf84ef885345c7a71fbd417f3d9e94f3"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae11c2654b0f8a1ac03cc3a44083e15ee"><td class="memTemplParams" colspan="2"><a id="ae11c2654b0f8a1ac03cc3a44083e15ee"></a>
+<tr class="memitem:af356278ec3dbb7e440bbf4c16bc45a6c"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::apply</b> (Function&lt; Ret(ArgTypes...)&gt; &amp;fn, Value&lt; std::tuple&lt; ArgTypes... &gt;&gt; *arg, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:af356278ec3dbb7e440bbf4c16bc45a6c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a76193a16d5628ae366c1ec4a527ed8d4"><td class="memTemplParams" colspan="2"><a id="a76193a16d5628ae366c1ec4a527ed8d4"></a>
 template&lt;typename T1 , typename T2 &gt; </td></tr>
-<tr class="memitem:ae11c2654b0f8a1ac03cc3a44083e15ee"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::pair&lt; T1, T2 &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::pair</b> (Value&lt; T1 &gt; *val1, Value&lt; T2 &gt; *val2, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:ae11c2654b0f8a1ac03cc3a44083e15ee"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a75d383db6e4e0baf5d542989cd8ba082"><td class="memTemplParams" colspan="2"><a id="a75d383db6e4e0baf5d542989cd8ba082"></a>
+<tr class="memitem:a76193a16d5628ae366c1ec4a527ed8d4"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::pair</b> (Value&lt; T1 &gt; *val1, Value&lt; T2 &gt; *val2, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a76193a16d5628ae366c1ec4a527ed8d4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a66b9e9f2537269abf1f0ab9af81b31b9"><td class="memTemplParams" colspan="2"><a id="a66b9e9f2537269abf1f0ab9af81b31b9"></a>
 template&lt;typename T1 , typename T2 &gt; </td></tr>
-<tr class="memitem:a75d383db6e4e0baf5d542989cd8ba082"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::pair&lt; T1, T2 &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::pair</b> (const std::string &amp;name1, const std::string &amp;name2, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a75d383db6e4e0baf5d542989cd8ba082"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a3b58d6182e0a3c2957b4e76b0c77dcbb"><td class="memTemplParams" colspan="2"><a id="a3b58d6182e0a3c2957b4e76b0c77dcbb"></a>
+<tr class="memitem:a66b9e9f2537269abf1f0ab9af81b31b9"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::pair</b> (const std::string &amp;name1, const std::string &amp;name2, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a66b9e9f2537269abf1f0ab9af81b31b9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a778f7634decf56de1c86cc934b5dafa1"><td class="memTemplParams" colspan="2"><a id="a778f7634decf56de1c86cc934b5dafa1"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a3b58d6182e0a3c2957b4e76b0c77dcbb"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; T &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::max</b> (Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a3b58d6182e0a3c2957b4e76b0c77dcbb"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ad07d5fcd7407393f06b8dc3f8a5bdd63"><td class="memTemplParams" colspan="2"><a id="ad07d5fcd7407393f06b8dc3f8a5bdd63"></a>
+<tr class="memitem:a778f7634decf56de1c86cc934b5dafa1"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::max</b> (Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a778f7634decf56de1c86cc934b5dafa1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:af190d82c61c477f00f6e731aac7d35f9"><td class="memTemplParams" colspan="2"><a id="af190d82c61c477f00f6e731aac7d35f9"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ad07d5fcd7407393f06b8dc3f8a5bdd63"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; T &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::max</b> (const std::string &amp;v_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:ad07d5fcd7407393f06b8dc3f8a5bdd63"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a6cc88e6768083c4933bbfbe8c13f0925"><td class="memTemplParams" colspan="2"><a id="a6cc88e6768083c4933bbfbe8c13f0925"></a>
+<tr class="memitem:af190d82c61c477f00f6e731aac7d35f9"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::max</b> (const std::string &amp;v_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:af190d82c61c477f00f6e731aac7d35f9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3438b08a0d1ac2f403bd9a1c3946d8db"><td class="memTemplParams" colspan="2"><a id="a3438b08a0d1ac2f403bd9a1c3946d8db"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a6cc88e6768083c4933bbfbe8c13f0925"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; T &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::min</b> (Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a6cc88e6768083c4933bbfbe8c13f0925"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ae1f87df69ec3507987990caf0ef2d31d"><td class="memTemplParams" colspan="2"><a id="ae1f87df69ec3507987990caf0ef2d31d"></a>
+<tr class="memitem:a3438b08a0d1ac2f403bd9a1c3946d8db"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::min</b> (Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a3438b08a0d1ac2f403bd9a1c3946d8db"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad60285daab75ce13077325de3655baee"><td class="memTemplParams" colspan="2"><a id="ad60285daab75ce13077325de3655baee"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ae1f87df69ec3507987990caf0ef2d31d"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; T &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::min</b> (const std::string &amp;v_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:ae1f87df69ec3507987990caf0ef2d31d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:accc998ba6310e6f8643ed3839cc34aba"><td class="memTemplParams" colspan="2"><a id="accc998ba6310e6f8643ed3839cc34aba"></a>
+<tr class="memitem:ad60285daab75ce13077325de3655baee"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::min</b> (const std::string &amp;v_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:ad60285daab75ce13077325de3655baee"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a9cbf89a316c4436d3654c60c998953b5"><td class="memTemplParams" colspan="2"><a id="a9cbf89a316c4436d3654c60c998953b5"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:accc998ba6310e6f8643ed3839cc34aba"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; T &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::range</b> (Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:accc998ba6310e6f8643ed3839cc34aba"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:ac10aae7b82637c510fba63f5dacc907b"><td class="memTemplParams" colspan="2"><a id="ac10aae7b82637c510fba63f5dacc907b"></a>
+<tr class="memitem:a9cbf89a316c4436d3654c60c998953b5"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::range</b> (Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a9cbf89a316c4436d3654c60c998953b5"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afc36df391bdd966904b05aa46f19628d"><td class="memTemplParams" colspan="2"><a id="afc36df391bdd966904b05aa46f19628d"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:ac10aae7b82637c510fba63f5dacc907b"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; T &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::range</b> (const std::string &amp;v_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:ac10aae7b82637c510fba63f5dacc907b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a2f2cee79c6a25e61d02af63267e84aaa"><td class="memTemplParams" colspan="2"><a id="a2f2cee79c6a25e61d02af63267e84aaa"></a>
+<tr class="memitem:afc36df391bdd966904b05aa46f19628d"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::range</b> (const std::string &amp;v_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:afc36df391bdd966904b05aa46f19628d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a62103f9d9054b8f96b58ceab8575cc5d"><td class="memTemplParams" colspan="2"><a id="a62103f9d9054b8f96b58ceab8575cc5d"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a2f2cee79c6a25e61d02af63267e84aaa"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; T &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::mean</b> (Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a2f2cee79c6a25e61d02af63267e84aaa"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:aec5733b62ac33f3406a2b28f636e3e57"><td class="memTemplParams" colspan="2"><a id="aec5733b62ac33f3406a2b28f636e3e57"></a>
+<tr class="memitem:a62103f9d9054b8f96b58ceab8575cc5d"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::mean</b> (Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a62103f9d9054b8f96b58ceab8575cc5d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:affabdd5554415ad445dd1fdead3fc1e9"><td class="memTemplParams" colspan="2"><a id="affabdd5554415ad445dd1fdead3fc1e9"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:aec5733b62ac33f3406a2b28f636e3e57"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; T &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::mean</b> (const std::string &amp;v_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:aec5733b62ac33f3406a2b28f636e3e57"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a0f1a26ed19d77644433fcd57b0fac134"><td class="memTemplParams" colspan="2"><a id="a0f1a26ed19d77644433fcd57b0fac134"></a>
+<tr class="memitem:affabdd5554415ad445dd1fdead3fc1e9"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::mean</b> (const std::string &amp;v_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:affabdd5554415ad445dd1fdead3fc1e9"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:aa19fbc8c805d324ff79ff98cce710062"><td class="memTemplParams" colspan="2"><a id="aa19fbc8c805d324ff79ff98cce710062"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a0f1a26ed19d77644433fcd57b0fac134"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; int &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::count</b> (Function&lt; bool(T)&gt; &amp;selector, Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a0f1a26ed19d77644433fcd57b0fac134"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a554da83102443b23009eba6b6392360d"><td class="memTemplParams" colspan="2"><a id="a554da83102443b23009eba6b6392360d"></a>
+<tr class="memitem:aa19fbc8c805d324ff79ff98cce710062"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::count</b> (Function&lt; bool(T)&gt; &amp;selector, Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:aa19fbc8c805d324ff79ff98cce710062"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a3b7f0e330927ca6147a6312219e7801d"><td class="memTemplParams" colspan="2"><a id="a3b7f0e330927ca6147a6312219e7801d"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a554da83102443b23009eba6b6392360d"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; int &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::count</b> (Function&lt; bool(T)&gt; &amp;selector, const std::string &amp;v_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a554da83102443b23009eba6b6392360d"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a3f5f6d6d56b8f2f90296ab9fbbf01c84"><td class="memTemplParams" colspan="2"><a id="a3f5f6d6d56b8f2f90296ab9fbbf01c84"></a>
+<tr class="memitem:a3b7f0e330927ca6147a6312219e7801d"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::count</b> (Function&lt; bool(T)&gt; &amp;selector, const std::string &amp;v_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a3b7f0e330927ca6147a6312219e7801d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a883a7fcd3bb624db9786e122645cf72b"><td class="memTemplParams" colspan="2"><a id="a883a7fcd3bb624db9786e122645cf72b"></a>
 template&lt;typename FST , typename SND &gt; </td></tr>
-<tr class="memitem:a3f5f6d6d56b8f2f90296ab9fbbf01c84"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::vector&lt; std::tuple&lt; FST, SND &gt; &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::cart_product</b> (Value&lt; std::vector&lt; FST &gt;&gt; *val1, Value&lt; std::vector&lt; SND &gt;&gt; *val2, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a3f5f6d6d56b8f2f90296ab9fbbf01c84"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a3bf12c1d228ee92d55264f38353da13e"><td class="memTemplParams" colspan="2"><a id="a3bf12c1d228ee92d55264f38353da13e"></a>
+<tr class="memitem:a883a7fcd3bb624db9786e122645cf72b"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::cart_product</b> (Value&lt; std::vector&lt; FST &gt;&gt; *val1, Value&lt; std::vector&lt; SND &gt;&gt; *val2, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a883a7fcd3bb624db9786e122645cf72b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a085797183ce9cedda5b01091b7f7dbf4"><td class="memTemplParams" colspan="2"><a id="a085797183ce9cedda5b01091b7f7dbf4"></a>
 template&lt;typename FST , typename SND &gt; </td></tr>
-<tr class="memitem:a3bf12c1d228ee92d55264f38353da13e"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::vector&lt; std::tuple&lt; FST, SND &gt; &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::cart_product</b> (const std::string &amp;val1_name, const std::string &amp;val2_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a3bf12c1d228ee92d55264f38353da13e"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a806ca30beec739e2de637900ba254432"><td class="memTemplParams" colspan="2"><a id="a806ca30beec739e2de637900ba254432"></a>
+<tr class="memitem:a085797183ce9cedda5b01091b7f7dbf4"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::cart_product</b> (const std::string &amp;val1_name, const std::string &amp;val2_name, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:a085797183ce9cedda5b01091b7f7dbf4"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:ad60d96adef65c30a71b0b13c358423d3"><td class="memTemplParams" colspan="2"><a id="ad60d96adef65c30a71b0b13c358423d3"></a>
 template&lt;typename T , int Size&gt; </td></tr>
-<tr class="memitem:a806ca30beec739e2de637900ba254432"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::vector&lt; typename HomoTuple&lt; T, Size &gt;::type &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::combinations</b> (Value&lt; std::vector&lt; T &gt;&gt; *val, const std::string &amp;alias=&quot;&quot;)</td></tr>
-<tr class="separator:a806ca30beec739e2de637900ba254432"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a9d96783878f1705b92a5356e7da9010f"><td class="memTemplParams" colspan="2"><a id="a9d96783878f1705b92a5356e7da9010f"></a>
+<tr class="memitem:ad60d96adef65c30a71b0b13c358423d3"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::combinations</b> (Value&lt; std::vector&lt; T &gt;&gt; *val, const std::string &amp;alias=&quot;&quot;)</td></tr>
+<tr class="separator:ad60d96adef65c30a71b0b13c358423d3"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a04cf743be019394f6248b905e4ad7cda"><td class="memTemplParams" colspan="2"><a id="a04cf743be019394f6248b905e4ad7cda"></a>
 template&lt;typename T , int Size&gt; </td></tr>
-<tr class="memitem:a9d96783878f1705b92a5356e7da9010f"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::vector&lt; typename HomoTuple&lt; T, Size &gt;::type &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::combinations</b> (const std::string &amp;val_name, const std::string alias=&quot;&quot;)</td></tr>
-<tr class="separator:a9d96783878f1705b92a5356e7da9010f"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a92535b827fc24bdac21c2946f94bfc18"><td class="memTemplParams" colspan="2"><a id="a92535b827fc24bdac21c2946f94bfc18"></a>
+<tr class="memitem:a04cf743be019394f6248b905e4ad7cda"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::combinations</b> (const std::string &amp;val_name, const std::string alias=&quot;&quot;)</td></tr>
+<tr class="separator:a04cf743be019394f6248b905e4ad7cda"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a5c0d16db73ba7266c3238f1383a2b690"><td class="memTemplParams" colspan="2"><a id="a5c0d16db73ba7266c3238f1383a2b690"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:a92535b827fc24bdac21c2946f94bfc18"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::vector&lt; T &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::filter</b> (Function&lt; bool(T)&gt; &amp;filter, Value&lt; std::vector&lt; T &gt;&gt; *val, const std::string alias=&quot;&quot;)</td></tr>
-<tr class="separator:a92535b827fc24bdac21c2946f94bfc18"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:af21834c019941f99aeb18167757d586a"><td class="memTemplParams" colspan="2"><a id="af21834c019941f99aeb18167757d586a"></a>
+<tr class="memitem:a5c0d16db73ba7266c3238f1383a2b690"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::filter</b> (Function&lt; bool(T)&gt; &amp;filter, Value&lt; std::vector&lt; T &gt;&gt; *val, const std::string alias=&quot;&quot;)</td></tr>
+<tr class="separator:a5c0d16db73ba7266c3238f1383a2b690"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:afbec3d2b438aea90517ecccd42d7070d"><td class="memTemplParams" colspan="2"><a id="afbec3d2b438aea90517ecccd42d7070d"></a>
 template&lt;typename T &gt; </td></tr>
-<tr class="memitem:af21834c019941f99aeb18167757d586a"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::vector&lt; T &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::filter</b> (Function&lt; bool(T)&gt; &amp;filter_func, const std::string &amp;val_name, const std::string alias=&quot;&quot;)</td></tr>
-<tr class="separator:af21834c019941f99aeb18167757d586a"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a24ba10ee4add24ac728bf558c1d15c65"><td class="memTemplParams" colspan="2"><a id="a24ba10ee4add24ac728bf558c1d15c65"></a>
+<tr class="memitem:afbec3d2b438aea90517ecccd42d7070d"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::filter</b> (Function&lt; bool(T)&gt; &amp;filter_func, const std::string &amp;val_name, const std::string alias=&quot;&quot;)</td></tr>
+<tr class="separator:afbec3d2b438aea90517ecccd42d7070d"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a63a1499e8c17a446b9ec0ba1affe12e1"><td class="memTemplParams" colspan="2"><a id="a63a1499e8c17a446b9ec0ba1affe12e1"></a>
 template&lt;typename... ArgTypes&gt; </td></tr>
-<tr class="memitem:a24ba10ee4add24ac728bf558c1d15c65"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::vector&lt; std::tuple&lt; ArgTypes... &gt; &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::tup_filter</b> (Function&lt; bool(ArgTypes...)&gt; &amp;filter, Value&lt; std::vector&lt; std::tuple&lt; ArgTypes... &gt;&gt;&gt; *val, const std::string alias=&quot;&quot;)</td></tr>
-<tr class="separator:a24ba10ee4add24ac728bf558c1d15c65"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a025873c4dc4de5280290f5798d00bf1e"><td class="memTemplParams" colspan="2"><a id="a025873c4dc4de5280290f5798d00bf1e"></a>
+<tr class="memitem:a63a1499e8c17a446b9ec0ba1affe12e1"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::tup_filter</b> (Function&lt; bool(ArgTypes...)&gt; &amp;filter, Value&lt; std::vector&lt; std::tuple&lt; ArgTypes... &gt;&gt;&gt; *val, const std::string alias=&quot;&quot;)</td></tr>
+<tr class="separator:a63a1499e8c17a446b9ec0ba1affe12e1"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38948a778b221e14d77c3c1c6ed4a840"><td class="memTemplParams" colspan="2"><a id="a38948a778b221e14d77c3c1c6ed4a840"></a>
 template&lt;typename... ArgTypes&gt; </td></tr>
-<tr class="memitem:a025873c4dc4de5280290f5798d00bf1e"><td class="memTemplItemLeft" align="right" valign="top">Value&lt; std::vector&lt; std::tuple&lt; ArgTypes... &gt; &gt; &gt; *&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::tup_filter</b> (Function&lt; bool(ArgTypes...)&gt; &amp;filter, const std::string &amp;val_name, const std::string alias=&quot;&quot;)</td></tr>
-<tr class="separator:a025873c4dc4de5280290f5798d00bf1e"><td class="memSeparator" colspan="2">&#160;</td></tr>
+<tr class="memitem:a38948a778b221e14d77c3c1c6ed4a840"><td class="memTemplItemLeft" align="right" valign="top">decltype(auto)&#160;</td><td class="memTemplItemRight" valign="bottom"><b>fv::tup_filter</b> (Function&lt; bool(ArgTypes...)&gt; &amp;filter, const std::string &amp;val_name, const std::string alias=&quot;&quot;)</td></tr>
+<tr class="separator:a38948a778b221e14d77c3c1c6ed4a840"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:a97c916f0cec36778d54ff19e98c8abaf"><td class="memItemLeft" align="right" valign="top"><a id="a97c916f0cec36778d54ff19e98c8abaf"></a>
 ObsFilter *&#160;</td><td class="memItemRight" valign="bottom"><b>fv::obs_filter</b> (const std::string &amp;name, std::function&lt; bool()&gt; filter_function, const std::string &amp;impl=&quot;&quot;)</td></tr>
 <tr class="separator:a97c916f0cec36778d54ff19e98c8abaf"><td class="memSeparator" colspan="2">&#160;</td></tr>

File diff suppressed because it is too large
+ 16 - 15
docs/api_8hpp_source.html


File diff suppressed because it is too large
+ 16 - 15
docs/classfv_1_1Apply_3_01Ret_07ArgTypes_8_8_8_08_4-members.html


+ 8 - 1
docs/classfv_1_1Apply_3_01Ret_07ArgTypes_8_8_8_08_4.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pri-methods">Private Member Functions</a> &#124;
 <a href="#pri-attribs">Private Attributes</a> &#124;
 <a href="classfv_1_1Apply_3_01Ret_07ArgTypes_8_8_8_08_4-members.html">List of all members</a>  </div>
@@ -124,6 +125,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:ad5ca5d46b4a8fde635d772d5f1cfe7e7"><td class="memItemLeft" align="right" valign="top"><a id="ad5ca5d46b4a8fde635d772d5f1cfe7e7"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (Function&lt; Ret(ArgTypes...)&gt; &amp;fn, <a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::tuple&lt; ArgTypes... &gt;&gt; *arg)</td></tr>
+<tr class="separator:ad5ca5d46b4a8fde635d772d5f1cfe7e7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
 Private Member Functions</h2></td></tr>
 <tr class="memitem:ab983f969ff7652150e7ce1d1240672e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfv_1_1Apply_3_01Ret_07ArgTypes_8_8_8_08_4.html#ab983f969ff7652150e7ce1d1240672e0">update_value</a> ()</td></tr>
@@ -183,7 +190,7 @@ template&lt;typename Ret , typename... ArgTypes&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; Ret &gt;</a>.</p>
 

+ 3 - 3
docs/classfv_1_1BoundValue.html

@@ -83,7 +83,7 @@ Inheritance diagram for fv::BoundValue&lt; T &gt;:</div>
 <div class="center"><img src="classfv_1_1BoundValue__inherit__graph.png" border="0" usemap="#fv_1_1BoundValue_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
 <map name="fv_1_1BoundValue_3_01T_01_4_inherit__map" id="fv_1_1BoundValue_3_01T_01_4_inherit__map">
 <area shape="rect" id="node2" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
@@ -92,7 +92,7 @@ Collaboration diagram for fv::BoundValue&lt; T &gt;:</div>
 <div class="center"><img src="classfv_1_1BoundValue__coll__graph.png" border="0" usemap="#fv_1_1BoundValue_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
 <map name="fv_1_1BoundValue_3_01T_01_4_coll__map" id="fv_1_1BoundValue_3_01T_01_4_coll__map">
 <area shape="rect" id="node2" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <table class="memberdecls">
@@ -176,7 +176,7 @@ template&lt;typename T &gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; T &gt;</a>.</p>
 

+ 1 - 1
docs/classfv_1_1BoundValue__coll__graph.map

@@ -1,4 +1,4 @@
 <map id="fv::BoundValue&lt; T &gt;" name="fv::BoundValue&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1BoundValue__coll__graph.md5

@@ -1 +1 @@
-e103e392af0cfc2af5fc44d16f19476a
+28f67e67d35795a74558ecef2d16af2a

+ 1 - 1
docs/classfv_1_1BoundValue__inherit__graph.map

@@ -1,4 +1,4 @@
 <map id="fv::BoundValue&lt; T &gt;" name="fv::BoundValue&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1BoundValue__inherit__graph.md5

@@ -1 +1 @@
-e13d80964db1a14dea3f2e36ee48a114
+0535e7f29d01e47bc97c67ecca174335

File diff suppressed because it is too large
+ 17 - 16
docs/classfv_1_1CartProduct-members.html


+ 8 - 1
docs/classfv_1_1CartProduct.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pri-methods">Private Member Functions</a> &#124;
 <a href="#pri-static-methods">Static Private Member Functions</a> &#124;
 <a href="#pri-attribs">Private Attributes</a> &#124;
@@ -126,6 +127,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a7ecb67b260b469e52f2bd96ebbdc7a27"><td class="memItemLeft" align="right" valign="top"><a id="a7ecb67b260b469e52f2bd96ebbdc7a27"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (<a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::vector&lt; FST &gt;&gt; *val1, <a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::vector&lt; SND &gt;&gt; *val2)</td></tr>
+<tr class="separator:a7ecb67b260b469e52f2bd96ebbdc7a27"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
 Private Member Functions</h2></td></tr>
 <tr class="memitem:a087a4b184e628e3fa20040b33225a906"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfv_1_1CartProduct.html#a087a4b184e628e3fa20040b33225a906">update_value</a> ()</td></tr>
@@ -190,7 +197,7 @@ template&lt;typename FST, typename SND&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; std::vector&lt; std::tuple&lt; FST, SND &gt; &gt; &gt;</a>.</p>
 <div class="dynheader">

File diff suppressed because it is too large
+ 5 - 5
docs/classfv_1_1Combinations-members.html


+ 8 - 8
docs/classfv_1_1Combinations.html

@@ -65,9 +65,9 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pri-types">Private Types</a> &#124;
 <a href="#pri-methods">Private Member Functions</a> &#124;
-<a href="#pri-static-methods">Static Private Member Functions</a> &#124;
 <a href="#pri-attribs">Private Attributes</a> &#124;
 <a href="classfv_1_1Combinations-members.html">List of all members</a>  </div>
   <div class="headertitle">
@@ -126,6 +126,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a76e1e87514c9a130e1b557243679d180"><td class="memItemLeft" align="right" valign="top"><a id="a76e1e87514c9a130e1b557243679d180"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (<a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::vector&lt; T &gt;&gt; *val)</td></tr>
+<tr class="separator:a76e1e87514c9a130e1b557243679d180"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-types"></a>
 Private Types</h2></td></tr>
 <tr class="memitem:a9ff01c6f111be04fe43fd813b2c7d60c"><td class="memItemLeft" align="right" valign="top"><a id="a9ff01c6f111be04fe43fd813b2c7d60c"></a>
@@ -138,12 +144,6 @@ Private Member Functions</h2></td></tr>
 <tr class="memdesc:a69ce557136cf74ba2e8540e06151bfa5"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates the internal value.  <a href="#a69ce557136cf74ba2e8540e06151bfa5">More...</a><br /></td></tr>
 <tr class="separator:a69ce557136cf74ba2e8540e06151bfa5"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
-<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-static-methods"></a>
-Static Private Member Functions</h2></td></tr>
-<tr class="memitem:a77f9b16b2e4290f51e1078bfa411fe2b"><td class="memItemLeft" align="right" valign="top"><a id="a77f9b16b2e4290f51e1078bfa411fe2b"></a>
-static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>calc_name</b> (<a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::vector&lt; T &gt;&gt; *val)</td></tr>
-<tr class="separator:a77f9b16b2e4290f51e1078bfa411fe2b"><td class="memSeparator" colspan="2">&#160;</td></tr>
-</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
 Private Attributes</h2></td></tr>
 <tr class="memitem:ab825ab8ca94a1c6d350215a43198c6b7"><td class="memItemLeft" align="right" valign="top"><a id="ab825ab8ca94a1c6d350215a43198c6b7"></a>
@@ -193,7 +193,7 @@ template&lt;typename T, int Size&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 <p>!! </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; std::vector&lt; HomoTuple&lt; T, Size &gt;::type &gt; &gt;</a>.</p>

+ 5 - 5
docs/classfv_1_1ConstantValue.html

@@ -72,7 +72,7 @@ $(function() {
 </div><!--header-->
 <div class="contents">
 
-<p>A <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> which always returns the same value, supplied in the constructor.  
+<p>A <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> which always returns the same value, supplied in the constructor.  
  <a href="classfv_1_1ConstantValue.html#details">More...</a></p>
 
 <p><code>#include &lt;<a class="el" href="value_8hpp_source.html">value.hpp</a>&gt;</code></p>
@@ -82,7 +82,7 @@ Inheritance diagram for fv::ConstantValue&lt; T &gt;:</div>
 <div class="center"><img src="classfv_1_1ConstantValue__inherit__graph.png" border="0" usemap="#fv_1_1ConstantValue_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
 <map name="fv_1_1ConstantValue_3_01T_01_4_inherit__map" id="fv_1_1ConstantValue_3_01T_01_4_inherit__map">
 <area shape="rect" id="node2" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="9,80,176,107"/>
-<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="35,5,151,32"/>
+<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="35,5,151,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
@@ -91,7 +91,7 @@ Collaboration diagram for fv::ConstantValue&lt; T &gt;:</div>
 <div class="center"><img src="classfv_1_1ConstantValue__coll__graph.png" border="0" usemap="#fv_1_1ConstantValue_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
 <map name="fv_1_1ConstantValue_3_01T_01_4_coll__map" id="fv_1_1ConstantValue_3_01T_01_4_coll__map">
 <area shape="rect" id="node2" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="9,80,176,107"/>
-<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="35,5,151,32"/>
+<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="35,5,151,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <table class="memberdecls">
@@ -143,7 +143,7 @@ std::function&lt; std::string(T)&gt;&#160;</td><td class="memItemRight" valign="
 <div class="textblock"><h3>template&lt;typename T&gt;<br />
 class fv::ConstantValue&lt; T &gt;</h3>
 
-<p>A <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> which always returns the same value, supplied in the constructor. </p>
+<p>A <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> which always returns the same value, supplied in the constructor. </p>
 </div><h2 class="groupheader">Member Function Documentation</h2>
 <a id="a6581e7fb69c082c07c9714138063b320"></a>
 <h2 class="memtitle"><span class="permalink"><a href="#a6581e7fb69c082c07c9714138063b320">&#9670;&nbsp;</a></span>update_value()</h2>
@@ -171,7 +171,7 @@ template&lt;typename T &gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; T &gt;</a>.</p>
 

+ 1 - 1
docs/classfv_1_1ConstantValue__coll__graph.map

@@ -1,4 +1,4 @@
 <map id="fv::ConstantValue&lt; T &gt;" name="fv::ConstantValue&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="9,80,176,107"/>
-<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="35,5,151,32"/>
+<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="35,5,151,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1ConstantValue__coll__graph.md5

@@ -1 +1 @@
-0838e8a8fd15a006071aa0720c9837f8
+d63cd6eff61d074dfdbe81435cd85c35

+ 1 - 1
docs/classfv_1_1ConstantValue__inherit__graph.map

@@ -1,4 +1,4 @@
 <map id="fv::ConstantValue&lt; T &gt;" name="fv::ConstantValue&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="9,80,176,107"/>
-<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="35,5,151,32"/>
+<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="35,5,151,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1ConstantValue__inherit__graph.md5

@@ -1 +1 @@
-c9749ca24fcaedc914386d353733561d
+ecc021c3e1fea3d42a96601df7590209

File diff suppressed because it is too large
+ 1 - 1
docs/classfv_1_1Container.html


+ 2 - 2
docs/classfv_1_1ContainerMean.html

@@ -73,7 +73,7 @@ $(function() {
 </div><!--header-->
 <div class="contents">
 
-<p>Calculate the <a class="el" href="classfv_1_1Mean.html" title="Calculate the mean value of a vector. ">Mean</a> of a <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> over a series of observations.  
+<p>Calculate the <a class="el" href="classfv_1_1Mean.html" title="Calculate the mean value of a vector. ">Mean</a> of a <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> over a series of observations.  
  <a href="classfv_1_1ContainerMean.html#details">More...</a></p>
 
 <p><code>#include &lt;<a class="el" href="container_8hpp_source.html">container.hpp</a>&gt;</code></p>
@@ -169,7 +169,7 @@ T *&#160;</td><td class="memItemRight" valign="bottom"><b>container</b></td></tr
 <div class="textblock"><h3>template&lt;typename T&gt;<br />
 class fv::ContainerMean&lt; T &gt;</h3>
 
-<p>Calculate the <a class="el" href="classfv_1_1Mean.html" title="Calculate the mean value of a vector. ">Mean</a> of a <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> over a series of observations. </p>
+<p>Calculate the <a class="el" href="classfv_1_1Mean.html" title="Calculate the mean value of a vector. ">Mean</a> of a <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> over a series of observations. </p>
 <p>This class is given a value of some type that supports addition and division(eg. a <code>float</code>) and yields the mean value. Note that this implementation does  not support serialization so it is not incredibly useful. See the ROOT Containers for Containers that support serialization using ROOT's facilities. </p>
 </div><hr/>The documentation for this class was generated from the following file:<ul>
 <li>/home/caleb/Sources/TTTT/filval/<a class="el" href="container_8hpp_source.html">container.hpp</a></li>

+ 18 - 17
docs/classfv_1_1Count-members.html

@@ -78,23 +78,24 @@ $(function() {
   <tr bgcolor="#f0f0f0"><td class="entry"><b>DerivedValue</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>disable_logging</b>() (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>enable_logging</b>(const std::function&lt; std::string(int)&gt; &amp;value_to_string=[](int){return &quot;&quot;;}) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>selector</b> (defined in <a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classfv_1_1Count.html#afff1c16a8747a82db1cc1c8248c56a08">update_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>fmt_name</b>(Function&lt; bool(T)&gt; &amp;selector, Value&lt; std::vector&lt; T &gt;&gt; *v) (defined in <a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>selector</b> (defined in <a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classfv_1_1Count.html#afff1c16a8747a82db1cc1c8248c56a08">update_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Count.html">fv::Count&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; int &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; int &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 8 - 1
docs/classfv_1_1Count.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pri-methods">Private Member Functions</a> &#124;
 <a href="#pri-attribs">Private Attributes</a> &#124;
 <a href="classfv_1_1Count-members.html">List of all members</a>  </div>
@@ -124,6 +125,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a4e8c69a042a3a7a2216171d6d16875f7"><td class="memItemLeft" align="right" valign="top"><a id="a4e8c69a042a3a7a2216171d6d16875f7"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (Function&lt; bool(T)&gt; &amp;selector, <a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::vector&lt; T &gt;&gt; *v)</td></tr>
+<tr class="separator:a4e8c69a042a3a7a2216171d6d16875f7"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
 Private Member Functions</h2></td></tr>
 <tr class="memitem:afff1c16a8747a82db1cc1c8248c56a08"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfv_1_1Count.html#afff1c16a8747a82db1cc1c8248c56a08">update_value</a> ()</td></tr>
@@ -182,7 +189,7 @@ template&lt;typename T&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; int &gt;</a>.</p>
 <div class="dynheader">

File diff suppressed because it is too large
+ 17 - 16
docs/classfv_1_1DeTup-members.html


+ 8 - 1
docs/classfv_1_1DeTup.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pro-methods">Protected Member Functions</a> &#124;
 <a href="#pri-attribs">Private Attributes</a> &#124;
 <a href="classfv_1_1DeTup-members.html">List of all members</a>  </div>
@@ -124,6 +125,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a506460d53126d6a7e33fc35fdd4b584b"><td class="memItemLeft" align="right" valign="top"><a id="a506460d53126d6a7e33fc35fdd4b584b"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (<a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::tuple&lt; ArgTypes... &gt;&gt; *tup)</td></tr>
+<tr class="separator:a506460d53126d6a7e33fc35fdd4b584b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
 Protected Member Functions</h2></td></tr>
 <tr class="memitem:a9b49bc088a2c98356dec7709e7da8261"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfv_1_1DeTup.html#a9b49bc088a2c98356dec7709e7da8261">update_value</a> ()</td></tr>
@@ -179,7 +186,7 @@ template&lt;size_t N, typename... ArgTypes&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; std::tuple_element&lt; N, std::tuple&lt; ArgTypes... &gt; &gt;::type &gt;</a>.</p>
 

File diff suppressed because it is too large
+ 17 - 16
docs/classfv_1_1DeTupVector-members.html


+ 8 - 1
docs/classfv_1_1DeTupVector.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pro-methods">Protected Member Functions</a> &#124;
 <a href="#pri-attribs">Private Attributes</a> &#124;
 <a href="classfv_1_1DeTupVector-members.html">List of all members</a>  </div>
@@ -124,6 +125,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:af902776d319e7609a1188e2f78692cb2"><td class="memItemLeft" align="right" valign="top"><a id="af902776d319e7609a1188e2f78692cb2"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (<a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::vector&lt; std::tuple&lt; ArgTypes... &gt;&gt;&gt; *tup)</td></tr>
+<tr class="separator:af902776d319e7609a1188e2f78692cb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
 Protected Member Functions</h2></td></tr>
 <tr class="memitem:a667043bb8851d8eb56d051e62e6d9646"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfv_1_1DeTupVector.html#a667043bb8851d8eb56d051e62e6d9646">update_value</a> ()</td></tr>
@@ -179,7 +186,7 @@ template&lt;size_t N, typename... ArgTypes&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; std::vector&lt; std::tuple_element&lt; N, std::tuple&lt; ArgTypes... &gt; &gt;::type &gt; &gt;</a>.</p>
 

File diff suppressed because it is too large
+ 6 - 6
docs/classfv_1_1DerivedValue.html


+ 1 - 1
docs/classfv_1_1DerivedValue__coll__graph.map

@@ -1,3 +1,3 @@
 <map id="fv::DerivedValue&lt; T &gt;" name="fv::DerivedValue&lt; T &gt;">
-<area shape="rect" id="node2" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node2" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1DerivedValue__coll__graph.md5

@@ -1 +1 @@
-f9a9a64eb13adb553922b5abc3bb6527
+aa0abaaf102d3723d18fdee1d6d9b361

+ 1 - 1
docs/classfv_1_1DerivedValue__inherit__graph.map

@@ -2,7 +2,7 @@
 <area shape="rect" id="node3" href="$classfv_1_1BoundValue.html" title="A generic value owning only a function object. " alt="" coords="5,155,163,181"/>
 <area shape="rect" id="node4" href="$classfv_1_1ConstantValue.html" title="A Value which always returns the same value, supplied in the constructor. " alt="" coords="187,155,362,181"/>
 <area shape="rect" id="node5" href="$classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="386,155,513,181"/>
-<area shape="rect" id="node2" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="217,5,333,32"/>
+<area shape="rect" id="node2" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="217,5,333,32"/>
 <area shape="rect" id="node6" href="$classfv_1_1ElementOf.html" title="Extract the element at a specific index from a vector. " alt="" coords="88,229,237,256"/>
 <area shape="rect" id="node7" href="$classfv_1_1Max.html" title="Find and return the maximum value of a vector. " alt="" coords="261,229,368,256"/>
 <area shape="rect" id="node8" href="$classfv_1_1Mean.html" title="Calculate the mean value of a vector. " alt="" coords="392,229,507,256"/>

+ 1 - 1
docs/classfv_1_1DerivedValue__inherit__graph.md5

@@ -1 +1 @@
-aec2b04dd3950943a2ddfe1e561a57a1
+45bdffe5c60c706edf8fbd32ed2126b1

+ 2 - 2
docs/classfv_1_1ElementOf.html

@@ -82,7 +82,7 @@ Inheritance diagram for fv::ElementOf&lt; T &gt;:</div>
 <map name="fv_1_1ElementOf_3_01T_01_4_inherit__map" id="fv_1_1ElementOf_3_01T_01_4_inherit__map">
 <area shape="rect" id="node2" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="25,155,152,181"/>
 <area shape="rect" id="node3" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
@@ -92,7 +92,7 @@ Collaboration diagram for fv::ElementOf&lt; T &gt;:</div>
 <map name="fv_1_1ElementOf_3_01T_01_4_coll__map" id="fv_1_1ElementOf_3_01T_01_4_coll__map">
 <area shape="rect" id="node2" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="120,185,247,212"/>
 <area shape="rect" id="node3" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node5" href="classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>

+ 1 - 1
docs/classfv_1_1ElementOf__coll__graph.map

@@ -1,6 +1,6 @@
 <map id="fv::ElementOf&lt; T &gt;" name="fv::ElementOf&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="120,185,247,212"/>
 <area shape="rect" id="node3" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node5" href="$classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>

+ 1 - 1
docs/classfv_1_1ElementOf__coll__graph.md5

@@ -1 +1 @@
-bcae4f37afc5a1cedfbe86f694ccbf08
+ff2e3c1d2c36f094183d63113ac86236

+ 1 - 1
docs/classfv_1_1ElementOf__inherit__graph.map

@@ -1,5 +1,5 @@
 <map id="fv::ElementOf&lt; T &gt;" name="fv::ElementOf&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="25,155,152,181"/>
 <area shape="rect" id="node3" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1ElementOf__inherit__graph.md5

@@ -1 +1 @@
-cce97267ef6bee459d8f114292106e49
+7e941654cbc7292ea4408bfa5481f3d8

+ 16 - 15
docs/classfv_1_1Filter-members.html

@@ -79,22 +79,23 @@ $(function() {
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>enable_logging</b>(const std::function&lt; std::string(std::vector&lt; T &gt;)&gt; &amp;value_to_string=[](std::vector&lt; T &gt;){return &quot;&quot;;}) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>Filter</b>(Function&lt; bool(T)&gt; &amp;filter, Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>filter</b> (defined in <a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classfv_1_1Filter.html#a3666dcad055ca8b0f7c7ab675f5eb57d">update_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>fmt_name</b>(Function&lt; bool(T)&gt; &amp;filter, Value&lt; std::vector&lt; T &gt;&gt; *v) (defined in <a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classfv_1_1Filter.html#a3666dcad055ca8b0f7c7ab675f5eb57d">update_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Filter.html">fv::Filter&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 8 - 1
docs/classfv_1_1Filter.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pri-methods">Private Member Functions</a> &#124;
 <a href="#pri-attribs">Private Attributes</a> &#124;
 <a href="classfv_1_1Filter-members.html">List of all members</a>  </div>
@@ -123,6 +124,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:ae76cc18788be0b6067394780b75d4809"><td class="memItemLeft" align="right" valign="top"><a id="ae76cc18788be0b6067394780b75d4809"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (Function&lt; bool(T)&gt; &amp;filter, <a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::vector&lt; T &gt;&gt; *v)</td></tr>
+<tr class="separator:ae76cc18788be0b6067394780b75d4809"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-methods"></a>
 Private Member Functions</h2></td></tr>
 <tr class="memitem:a3666dcad055ca8b0f7c7ab675f5eb57d"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfv_1_1Filter.html#a3666dcad055ca8b0f7c7ab675f5eb57d">update_value</a> ()</td></tr>
@@ -181,7 +188,7 @@ template&lt;typename T&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a>.</p>
 <div class="dynheader">

File diff suppressed because it is too large
+ 1 - 1
docs/classfv_1_1Function_3_01R_07ArgTypes_8_8_8_08_4.html


File diff suppressed because it is too large
+ 17 - 16
docs/classfv_1_1Map_3_01Ret_07ArgTypes_8_8_8_08_4-members.html


+ 9 - 2
docs/classfv_1_1Map_3_01Ret_07ArgTypes_8_8_8_08_4.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pri-types">Private Types</a> &#124;
 <a href="#pri-methods">Private Member Functions</a> &#124;
 <a href="#pri-attribs">Private Attributes</a> &#124;
@@ -125,6 +126,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:aec2cce0efe351332174364c874417786"><td class="memItemLeft" align="right" valign="top"><a id="aec2cce0efe351332174364c874417786"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (Function&lt; Ret(ArgTypes...)&gt; &amp;fn, <a class="el" href="classfv_1_1Value.html">arg_type</a> *arg)</td></tr>
+<tr class="separator:aec2cce0efe351332174364c874417786"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-types"></a>
 Private Types</h2></td></tr>
 <tr class="memitem:a138b795697ca85bf0b31a159db82e707"><td class="memItemLeft" align="right" valign="top"><a id="a138b795697ca85bf0b31a159db82e707"></a>
@@ -162,7 +169,7 @@ std::function&lt; std::string(std::vector&lt; Ret &gt;)&gt;&#160;</td><td class=
 class fv::Map&lt; Ret(ArgTypes...)&gt;</h3>
 
 <p>Maps a function over an input vector. </p>
-<p>The input vector must be a vector of tuples, where the the elements of the tuple match the arguments of the function. For example if the function takes two floats as arguments, the tuple should contain two floats. The <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> object required by Map will typically be created as a <a class="el" href="classfv_1_1Zip.html" title="Zips a series of vectors together. ">Zip</a>. </p>
+<p>The input vector must be a vector of tuples, where the the elements of the tuple match the arguments of the function. For example if the function takes two floats as arguments, the tuple should contain two floats. The <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> object required by Map will typically be created as a <a class="el" href="classfv_1_1Zip.html" title="Zips a series of vectors together. ">Zip</a>. </p>
 </div><h2 class="groupheader">Member Function Documentation</h2>
 <a id="acd85576e1e4eb0eb4ef0d4947299478c"></a>
 <h2 class="memtitle"><span class="permalink"><a href="#acd85576e1e4eb0eb4ef0d4947299478c">&#9670;&nbsp;</a></span>update_value()</h2>
@@ -190,7 +197,7 @@ template&lt;typename Ret , typename... ArgTypes&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; std::vector&lt; Ret &gt; &gt;</a>.</p>
 <div class="dynheader">

+ 17 - 16
docs/classfv_1_1Max-members.html

@@ -77,23 +77,24 @@ $(function() {
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DerivedValue</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>disable_logging</b>() (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>enable_logging</b>(const std::function&lt; std::string(T)&gt; &amp;value_to_string=[](T){return &quot;&quot;;}) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>Max</b>(Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Max.html">fv::Max&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Max.html">fv::Max&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Reduce</b>(Function&lt; T(std::vector&lt; T &gt;)&gt; &amp;reduce, Value&lt; std::vector&lt; T &gt; &gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>fmt_name</b>(Value&lt; std::vector&lt; T &gt;&gt; *v) (defined in <a class="el" href="classfv_1_1Max.html">fv::Max&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Max.html">fv::Max&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Max</b>(Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Max.html">fv::Max&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Max.html">fv::Max&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>Reduce</b>(Function&lt; T(std::vector&lt; T &gt;)&gt; &amp;reduce, Value&lt; std::vector&lt; T &gt; &gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 9 - 2
docs/classfv_1_1Max.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="classfv_1_1Max-members.html">List of all members</a>  </div>
   <div class="headertitle">
 <div class="title">fv::Max&lt; T &gt; Class Template Reference</div>  </div>
@@ -82,7 +83,7 @@ Inheritance diagram for fv::Max&lt; T &gt;:</div>
 <map name="fv_1_1Max_3_01T_01_4_inherit__map" id="fv_1_1Max_3_01T_01_4_inherit__map">
 <area shape="rect" id="node2" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="25,155,152,181"/>
 <area shape="rect" id="node3" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
@@ -92,7 +93,7 @@ Collaboration diagram for fv::Max&lt; T &gt;:</div>
 <map name="fv_1_1Max_3_01T_01_4_coll__map" id="fv_1_1Max_3_01T_01_4_coll__map">
 <area shape="rect" id="node2" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="120,185,247,212"/>
 <area shape="rect" id="node3" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node5" href="classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
@@ -128,6 +129,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a8860e349a01ad66629c9b956f1d69f8b"><td class="memItemLeft" align="right" valign="top"><a id="a8860e349a01ad66629c9b956f1d69f8b"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (<a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::vector&lt; T &gt;&gt; *v)</td></tr>
+<tr class="separator:a8860e349a01ad66629c9b956f1d69f8b"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
 Additional Inherited Members</h2></td></tr>
 <tr class="inherit_header pro_attribs_classfv_1_1Reduce"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classfv_1_1Reduce')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td></tr>

+ 1 - 1
docs/classfv_1_1Max__coll__graph.map

@@ -1,6 +1,6 @@
 <map id="fv::Max&lt; T &gt;" name="fv::Max&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="120,185,247,212"/>
 <area shape="rect" id="node3" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node5" href="$classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>

+ 1 - 1
docs/classfv_1_1Max__coll__graph.md5

@@ -1 +1 @@
-70a0c21fdbcaa02d930e10f63f581dd4
+33853d02e177d333e29261e385c73e94

+ 1 - 1
docs/classfv_1_1Max__inherit__graph.map

@@ -1,5 +1,5 @@
 <map id="fv::Max&lt; T &gt;" name="fv::Max&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="25,155,152,181"/>
 <area shape="rect" id="node3" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1Max__inherit__graph.md5

@@ -1 +1 @@
-7c6b5d8a3706a2e37a4f1da1cf27c522
+d57a91ab1d11343e635947dec028a825

+ 17 - 16
docs/classfv_1_1Mean-members.html

@@ -77,23 +77,24 @@ $(function() {
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DerivedValue</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>disable_logging</b>() (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>enable_logging</b>(const std::function&lt; std::string(T)&gt; &amp;value_to_string=[](T){return &quot;&quot;;}) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>Mean</b>(Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Mean.html">fv::Mean&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Mean.html">fv::Mean&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Reduce</b>(Function&lt; T(std::vector&lt; T &gt;)&gt; &amp;reduce, Value&lt; std::vector&lt; T &gt; &gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>fmt_name</b>(Value&lt; std::vector&lt; T &gt;&gt; *v) (defined in <a class="el" href="classfv_1_1Mean.html">fv::Mean&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Mean.html">fv::Mean&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Mean</b>(Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Mean.html">fv::Mean&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Mean.html">fv::Mean&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>Reduce</b>(Function&lt; T(std::vector&lt; T &gt;)&gt; &amp;reduce, Value&lt; std::vector&lt; T &gt; &gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 9 - 2
docs/classfv_1_1Mean.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="classfv_1_1Mean-members.html">List of all members</a>  </div>
   <div class="headertitle">
 <div class="title">fv::Mean&lt; T &gt; Class Template Reference</div>  </div>
@@ -82,7 +83,7 @@ Inheritance diagram for fv::Mean&lt; T &gt;:</div>
 <map name="fv_1_1Mean_3_01T_01_4_inherit__map" id="fv_1_1Mean_3_01T_01_4_inherit__map">
 <area shape="rect" id="node2" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="25,155,152,181"/>
 <area shape="rect" id="node3" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
@@ -92,7 +93,7 @@ Collaboration diagram for fv::Mean&lt; T &gt;:</div>
 <map name="fv_1_1Mean_3_01T_01_4_coll__map" id="fv_1_1Mean_3_01T_01_4_coll__map">
 <area shape="rect" id="node2" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="120,185,247,212"/>
 <area shape="rect" id="node3" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node5" href="classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
@@ -128,6 +129,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:aef6ef4e8542dda8eca0a81f0d60acc4c"><td class="memItemLeft" align="right" valign="top"><a id="aef6ef4e8542dda8eca0a81f0d60acc4c"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (<a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::vector&lt; T &gt;&gt; *v)</td></tr>
+<tr class="separator:aef6ef4e8542dda8eca0a81f0d60acc4c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
 Additional Inherited Members</h2></td></tr>
 <tr class="inherit_header pro_attribs_classfv_1_1Reduce"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classfv_1_1Reduce')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td></tr>

+ 1 - 1
docs/classfv_1_1Mean__coll__graph.map

@@ -1,6 +1,6 @@
 <map id="fv::Mean&lt; T &gt;" name="fv::Mean&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="120,185,247,212"/>
 <area shape="rect" id="node3" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node5" href="$classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>

+ 1 - 1
docs/classfv_1_1Mean__coll__graph.md5

@@ -1 +1 @@
-ce2b2ec59139e43586319dce79720b5d
+eff40d38b9ac580d7d51de0e75447397

+ 1 - 1
docs/classfv_1_1Mean__inherit__graph.map

@@ -1,5 +1,5 @@
 <map id="fv::Mean&lt; T &gt;" name="fv::Mean&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="25,155,152,181"/>
 <area shape="rect" id="node3" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1Mean__inherit__graph.md5

@@ -1 +1 @@
-1a60e6f470ae57f60e154d08a5103a32
+5a69a9e1599b4674a7b9a6443002a243

+ 17 - 16
docs/classfv_1_1Min-members.html

@@ -77,23 +77,24 @@ $(function() {
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DerivedValue</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>disable_logging</b>() (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>enable_logging</b>(const std::function&lt; std::string(T)&gt; &amp;value_to_string=[](T){return &quot;&quot;;}) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>Min</b>(Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Min.html">fv::Min&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Min.html">fv::Min&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Reduce</b>(Function&lt; T(std::vector&lt; T &gt;)&gt; &amp;reduce, Value&lt; std::vector&lt; T &gt; &gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>fmt_name</b>(Value&lt; std::vector&lt; T &gt;&gt; *v) (defined in <a class="el" href="classfv_1_1Min.html">fv::Min&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Min.html">fv::Min&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Min</b>(Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Min.html">fv::Min&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Min.html">fv::Min&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>Reduce</b>(Function&lt; T(std::vector&lt; T &gt;)&gt; &amp;reduce, Value&lt; std::vector&lt; T &gt; &gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 9 - 2
docs/classfv_1_1Min.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="classfv_1_1Min-members.html">List of all members</a>  </div>
   <div class="headertitle">
 <div class="title">fv::Min&lt; T &gt; Class Template Reference</div>  </div>
@@ -82,7 +83,7 @@ Inheritance diagram for fv::Min&lt; T &gt;:</div>
 <map name="fv_1_1Min_3_01T_01_4_inherit__map" id="fv_1_1Min_3_01T_01_4_inherit__map">
 <area shape="rect" id="node2" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="25,155,152,181"/>
 <area shape="rect" id="node3" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
@@ -92,7 +93,7 @@ Collaboration diagram for fv::Min&lt; T &gt;:</div>
 <map name="fv_1_1Min_3_01T_01_4_coll__map" id="fv_1_1Min_3_01T_01_4_coll__map">
 <area shape="rect" id="node2" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="120,185,247,212"/>
 <area shape="rect" id="node3" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node5" href="classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
@@ -128,6 +129,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a14842c048a5028b2a97a9f6677774aac"><td class="memItemLeft" align="right" valign="top"><a id="a14842c048a5028b2a97a9f6677774aac"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (<a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::vector&lt; T &gt;&gt; *v)</td></tr>
+<tr class="separator:a14842c048a5028b2a97a9f6677774aac"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
 Additional Inherited Members</h2></td></tr>
 <tr class="inherit_header pro_attribs_classfv_1_1Reduce"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classfv_1_1Reduce')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td></tr>

+ 1 - 1
docs/classfv_1_1Min__coll__graph.map

@@ -1,6 +1,6 @@
 <map id="fv::Min&lt; T &gt;" name="fv::Min&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="120,185,247,212"/>
 <area shape="rect" id="node3" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node5" href="$classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>

+ 1 - 1
docs/classfv_1_1Min__coll__graph.md5

@@ -1 +1 @@
-d3984e3d8becfe3dd1b254c725b53aa2
+988fc7bc6aa5e1e8e7dcfbdbc73e47ba

+ 1 - 1
docs/classfv_1_1Min__inherit__graph.map

@@ -1,5 +1,5 @@
 <map id="fv::Min&lt; T &gt;" name="fv::Min&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="25,155,152,181"/>
 <area shape="rect" id="node3" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1Min__inherit__graph.md5

@@ -1 +1 @@
-00093b3692bbf9e0d3d2d34121844855
+7b99010167f2a12bfb2602cad402d8b7

+ 16 - 15
docs/classfv_1_1ObservedValue-members.html

@@ -76,21 +76,22 @@ $(function() {
   <tr bgcolor="#f0f0f0"><td class="entry"><b>aliases</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>disable_logging</b>() (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>enable_logging</b>(const std::function&lt; std::string(T)&gt; &amp;value_to_string=[](T){return &quot;&quot;;}) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classfv_1_1ObservedValue.html#a10419313294471ba9da25e55d23956ba">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>ObservedValue</b>(const std::string &amp;name, T *val_ref, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>val_ref</b> (defined in <a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>fmt_name</b>(const std::string &amp;name) (defined in <a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classfv_1_1ObservedValue.html#a10419313294471ba9da25e55d23956ba">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>ObservedValue</b>(const std::string &amp;name, T *val_ref, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>val_ref</b> (defined in <a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1ObservedValue.html">fv::ObservedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 9 - 2
docs/classfv_1_1ObservedValue.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pri-attribs">Private Attributes</a> &#124;
 <a href="classfv_1_1ObservedValue-members.html">List of all members</a>  </div>
   <div class="headertitle">
@@ -81,7 +82,7 @@ Inheritance diagram for fv::ObservedValue&lt; T &gt;:</div>
 <div class="dyncontent">
 <div class="center"><img src="classfv_1_1ObservedValue__inherit__graph.png" border="0" usemap="#fv_1_1ObservedValue_3_01T_01_4_inherit__map" alt="Inheritance graph"/></div>
 <map name="fv_1_1ObservedValue_3_01T_01_4_inherit__map" id="fv_1_1ObservedValue_3_01T_01_4_inherit__map">
-<area shape="rect" id="node2" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="37,5,153,32"/>
+<area shape="rect" id="node2" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="37,5,153,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
@@ -89,7 +90,7 @@ Collaboration diagram for fv::ObservedValue&lt; T &gt;:</div>
 <div class="dyncontent">
 <div class="center"><img src="classfv_1_1ObservedValue__coll__graph.png" border="0" usemap="#fv_1_1ObservedValue_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
 <map name="fv_1_1ObservedValue_3_01T_01_4_coll__map" id="fv_1_1ObservedValue_3_01T_01_4_coll__map">
-<area shape="rect" id="node2" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="37,5,153,32"/>
+<area shape="rect" id="node2" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="37,5,153,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <table class="memberdecls">
@@ -116,6 +117,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a70fa3d061e587f31437aeee3a417c93c"><td class="memItemLeft" align="right" valign="top"><a id="a70fa3d061e587f31437aeee3a417c93c"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (const std::string &amp;name)</td></tr>
+<tr class="separator:a70fa3d061e587f31437aeee3a417c93c"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-attribs"></a>
 Private Attributes</h2></td></tr>
 <tr class="memitem:a18aeb656fc14e2161c7b7710ab944829"><td class="memItemLeft" align="right" valign="top"><a id="a18aeb656fc14e2161c7b7710ab944829"></a>

+ 1 - 1
docs/classfv_1_1ObservedValue__coll__graph.map

@@ -1,3 +1,3 @@
 <map id="fv::ObservedValue&lt; T &gt;" name="fv::ObservedValue&lt; T &gt;">
-<area shape="rect" id="node2" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="37,5,153,32"/>
+<area shape="rect" id="node2" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="37,5,153,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1ObservedValue__coll__graph.md5

@@ -1 +1 @@
-448bb76d36385384b56a170e11309dc6
+7602971e3fa1dc3bc71df958ad392233

+ 1 - 1
docs/classfv_1_1ObservedValue__inherit__graph.map

@@ -1,3 +1,3 @@
 <map id="fv::ObservedValue&lt; T &gt;" name="fv::ObservedValue&lt; T &gt;">
-<area shape="rect" id="node2" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="37,5,153,32"/>
+<area shape="rect" id="node2" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="37,5,153,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1ObservedValue__inherit__graph.md5

@@ -1 +1 @@
-00e822f2fa6fdb5f89617c34c8a1988e
+8cfd4aa821067b9f20d2cf4112ee1654

File diff suppressed because it is too large
+ 17 - 16
docs/classfv_1_1Pair-members.html


+ 10 - 3
docs/classfv_1_1Pair.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pro-methods">Protected Member Functions</a> &#124;
 <a href="#pro-attribs">Protected Attributes</a> &#124;
 <a href="classfv_1_1Pair-members.html">List of all members</a>  </div>
@@ -73,7 +74,7 @@ $(function() {
 </div><!--header-->
 <div class="contents">
 
-<p>Creates a std::pair type from a two other <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects.  
+<p>Creates a std::pair type from a two other <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects.  
  <a href="classfv_1_1Pair.html#details">More...</a></p>
 
 <p><code>#include &lt;<a class="el" href="value_8hpp_source.html">value.hpp</a>&gt;</code></p>
@@ -123,6 +124,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a9fefc533a8872f8d0010cc78345f6092"><td class="memItemLeft" align="right" valign="top"><a id="a9fefc533a8872f8d0010cc78345f6092"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (<a class="el" href="classfv_1_1Value.html">Value</a>&lt; T1 &gt; *value1, <a class="el" href="classfv_1_1Value.html">Value</a>&lt; T2 &gt; *value2)</td></tr>
+<tr class="separator:a9fefc533a8872f8d0010cc78345f6092"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
 Protected Member Functions</h2></td></tr>
 <tr class="memitem:ab3225f03f49240fc1547a5005f57b864"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfv_1_1Pair.html#ab3225f03f49240fc1547a5005f57b864">update_value</a> ()</td></tr>
@@ -147,7 +154,7 @@ std::function&lt; std::string(std::pair&lt; T1, T2 &gt;)&gt;&#160;</td><td class
 <div class="textblock"><h3>template&lt;typename T1, typename T2&gt;<br />
 class fv::Pair&lt; T1, T2 &gt;</h3>
 
-<p>Creates a std::pair type from a two other <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects. </p>
+<p>Creates a std::pair type from a two other <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects. </p>
 </div><h2 class="groupheader">Member Function Documentation</h2>
 <a id="ab3225f03f49240fc1547a5005f57b864"></a>
 <h2 class="memtitle"><span class="permalink"><a href="#ab3225f03f49240fc1547a5005f57b864">&#9670;&nbsp;</a></span>update_value()</h2>
@@ -175,7 +182,7 @@ template&lt;typename T1, typename T2&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; std::pair&lt; T1, T2 &gt; &gt;</a>.</p>
 

+ 3 - 3
docs/classfv_1_1PointerValue.html

@@ -72,7 +72,7 @@ $(function() {
 </div><!--header-->
 <div class="contents">
 
-<p>A <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> of a pointer.  
+<p>A <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> of a pointer.  
  <a href="classfv_1_1PointerValue.html#details">More...</a></p>
 
 <p><code>#include &lt;<a class="el" href="value_8hpp_source.html">value.hpp</a>&gt;</code></p>
@@ -143,7 +143,7 @@ std::function&lt; std::string(T *)&gt;&#160;</td><td class="memItemRight" valign
 <div class="textblock"><h3>template&lt;typename T&gt;<br />
 class fv::PointerValue&lt; T &gt;</h3>
 
-<p>A <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> of a pointer. </p>
+<p>A <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> of a pointer. </p>
 <p>The pointer is constant, however the data the pointer points to is variable. </p>
 </div><h2 class="groupheader">Member Function Documentation</h2>
 <a id="a81e39d040919be39c37f845a27343f3e"></a>
@@ -172,7 +172,7 @@ template&lt;typename T&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; T *&gt;</a>.</p>
 

+ 18 - 17
docs/classfv_1_1Range-members.html

@@ -77,23 +77,24 @@ $(function() {
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>DerivedValue</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>disable_logging</b>() (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>enable_logging</b>(const std::function&lt; std::string(T)&gt; &amp;value_to_string=[](T){return &quot;&quot;;}) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>Range</b>(Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Range.html">fv::Range&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Range.html">fv::Range&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Reduce</b>(Function&lt; T(std::vector&lt; T &gt;)&gt; &amp;reduce, Value&lt; std::vector&lt; T &gt; &gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>fmt_name</b>(Value&lt; std::vector&lt; T &gt;&gt; *v) (defined in <a class="el" href="classfv_1_1Range.html">fv::Range&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Range.html">fv::Range&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr class="even"><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>Range</b>(Value&lt; std::vector&lt; T &gt;&gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Range.html">fv::Range&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Range.html">fv::Range&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>Reduce</b>(Function&lt; T(std::vector&lt; T &gt;)&gt; &amp;reduce, Value&lt; std::vector&lt; T &gt; &gt; *v, const std::string alias) (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>v</b> (defined in <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; T &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

+ 9 - 2
docs/classfv_1_1Range.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="classfv_1_1Range-members.html">List of all members</a>  </div>
   <div class="headertitle">
 <div class="title">fv::Range&lt; T &gt; Class Template Reference</div>  </div>
@@ -82,7 +83,7 @@ Inheritance diagram for fv::Range&lt; T &gt;:</div>
 <map name="fv_1_1Range_3_01T_01_4_inherit__map" id="fv_1_1Range_3_01T_01_4_inherit__map">
 <area shape="rect" id="node2" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="25,155,152,181"/>
 <area shape="rect" id="node3" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
@@ -92,7 +93,7 @@ Collaboration diagram for fv::Range&lt; T &gt;:</div>
 <map name="fv_1_1Range_3_01T_01_4_coll__map" id="fv_1_1Range_3_01T_01_4_coll__map">
 <area shape="rect" id="node2" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="120,185,247,212"/>
 <area shape="rect" id="node3" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node5" href="classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
@@ -128,6 +129,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a398ad1a46b0dc8b7daac3c38f26194eb"><td class="memItemLeft" align="right" valign="top"><a id="a398ad1a46b0dc8b7daac3c38f26194eb"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (<a class="el" href="classfv_1_1Value.html">Value</a>&lt; std::vector&lt; T &gt;&gt; *v)</td></tr>
+<tr class="separator:a398ad1a46b0dc8b7daac3c38f26194eb"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
 Additional Inherited Members</h2></td></tr>
 <tr class="inherit_header pro_attribs_classfv_1_1Reduce"><td colspan="2" onclick="javascript:toggleInherit('pro_attribs_classfv_1_1Reduce')"><img src="closed.png" alt="-"/>&#160;Protected Attributes inherited from <a class="el" href="classfv_1_1Reduce.html">fv::Reduce&lt; T &gt;</a></td></tr>

+ 1 - 1
docs/classfv_1_1Range__coll__graph.map

@@ -1,6 +1,6 @@
 <map id="fv::Range&lt; T &gt;" name="fv::Range&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="120,185,247,212"/>
 <area shape="rect" id="node3" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node5" href="$classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>

+ 1 - 1
docs/classfv_1_1Range__coll__graph.md5

@@ -1 +1 @@
-433a925837ad3c09ec4f5e85ee2ab46f
+475d858008373e37dd16e1b242f52760

+ 1 - 1
docs/classfv_1_1Range__inherit__graph.map

@@ -1,5 +1,5 @@
 <map id="fv::Range&lt; T &gt;" name="fv::Range&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. " alt="" coords="25,155,152,181"/>
 <area shape="rect" id="node3" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,80,172,107"/>
-<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node4" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1Range__inherit__graph.md5

@@ -1 +1 @@
-42855fff98250650de246304013236e5
+ac66f6aadb982e9f62b1a5f2293d3820

+ 5 - 5
docs/classfv_1_1Reduce.html

@@ -74,7 +74,7 @@ $(function() {
 </div><!--header-->
 <div class="contents">
 
-<p><a class="el" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. ">Reduce</a> a <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> of type vector&lt;T&gt; to just a T.  
+<p><a class="el" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. ">Reduce</a> a <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> of type vector&lt;T&gt; to just a T.  
  <a href="classfv_1_1Reduce.html#details">More...</a></p>
 
 <p><code>#include &lt;<a class="el" href="value_8hpp_source.html">value.hpp</a>&gt;</code></p>
@@ -89,7 +89,7 @@ Inheritance diagram for fv::Reduce&lt; T &gt;:</div>
 <area shape="rect" id="node7" href="classfv_1_1Min.html" title="Find and return the minimum value of a vector. " alt="" coords="449,229,551,256"/>
 <area shape="rect" id="node8" href="classfv_1_1Range.html" title="Calculate the range of the values in a vector. " alt="" coords="575,229,697,256"/>
 <area shape="rect" id="node2" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="283,80,450,107"/>
-<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="309,5,425,32"/>
+<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="309,5,425,32"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
 <div class="dynheader">
@@ -98,7 +98,7 @@ Collaboration diagram for fv::Reduce&lt; T &gt;:</div>
 <div class="center"><img src="classfv_1_1Reduce__coll__graph.png" border="0" usemap="#fv_1_1Reduce_3_01T_01_4_coll__map" alt="Collaboration graph"/></div>
 <map name="fv_1_1Reduce_3_01T_01_4_coll__map" id="fv_1_1Reduce_3_01T_01_4_coll__map">
 <area shape="rect" id="node2" href="classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node3" href="classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node4" href="classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>
 <center><span class="legend">[<a href="graph_legend.html">legend</a>]</span></center></div>
@@ -163,7 +163,7 @@ Additional Inherited Members</h2></td></tr>
 <div class="textblock"><h3>template&lt;typename T&gt;<br />
 class fv::Reduce&lt; T &gt;</h3>
 
-<p><a class="el" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. ">Reduce</a> a <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> of type vector&lt;T&gt; to just a T. </p>
+<p><a class="el" href="classfv_1_1Reduce.html" title="Reduce a Value of type vector&lt;T&gt; to just a T. ">Reduce</a> a <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> of type vector&lt;T&gt; to just a T. </p>
 <p>This is useful functionality to model, for instance, calculating the maximum element of a vector, or a the mean. See child classes for specific implementations. </p>
 </div><h2 class="groupheader">Member Function Documentation</h2>
 <a id="ab0809c4ab1884b84a7f88e005ade76a5"></a>
@@ -192,7 +192,7 @@ template&lt;typename T &gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; T &gt;</a>.</p>
 

+ 1 - 1
docs/classfv_1_1ReduceIndex.html

@@ -185,7 +185,7 @@ template&lt;typename T &gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; std::pair&lt; T, int &gt; &gt;</a>.</p>
 

+ 1 - 1
docs/classfv_1_1Reduce__coll__graph.map

@@ -1,5 +1,5 @@
 <map id="fv::Reduce&lt; T &gt;" name="fv::Reduce&lt; T &gt;">
 <area shape="rect" id="node2" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="5,89,172,115"/>
-<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="31,5,147,32"/>
+<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="31,5,147,32"/>
 <area shape="rect" id="node4" href="$classfv_1_1Value.html" title="fv::Value\&lt; std::vector\l\&lt; T \&gt; \&gt;" alt="" coords="197,81,359,123"/>
 </map>

+ 1 - 1
docs/classfv_1_1Reduce__coll__graph.md5

@@ -1 +1 @@
-fa5aa6db9cfebe63f9afea171d46302c
+b8eb1ca1170f44ae11de208d3d1f721b

+ 1 - 1
docs/classfv_1_1Reduce__inherit__graph.map

@@ -5,5 +5,5 @@
 <area shape="rect" id="node7" href="$classfv_1_1Min.html" title="Find and return the minimum value of a vector. " alt="" coords="449,229,551,256"/>
 <area shape="rect" id="node8" href="$classfv_1_1Range.html" title="Calculate the range of the values in a vector. " alt="" coords="575,229,697,256"/>
 <area shape="rect" id="node2" href="$classfv_1_1DerivedValue.html" title="A Value derived from some other Values, not directly from the dataset. " alt="" coords="283,80,450,107"/>
-<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A generic value. " alt="" coords="309,5,425,32"/>
+<area shape="rect" id="node3" href="$classfv_1_1Value.html" title="A templated value. " alt="" coords="309,5,425,32"/>
 </map>

+ 1 - 1
docs/classfv_1_1Reduce__inherit__graph.md5

@@ -1 +1 @@
-206907d1e118b99c173d04d8344d8303
+b160219a8302ac96856775a4c6f8e841

File diff suppressed because it is too large
+ 17 - 16
docs/classfv_1_1TupFilter-members.html


+ 8 - 1
docs/classfv_1_1TupFilter.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pri-types">Private Types</a> &#124;
 <a href="#pri-methods">Private Member Functions</a> &#124;
 <a href="#pri-attribs">Private Attributes</a> &#124;
@@ -125,6 +126,12 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a814ced4483f850485ccef6ed536c2325"><td class="memItemLeft" align="right" valign="top"><a id="a814ced4483f850485ccef6ed536c2325"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (Function&lt; bool(ArgTypes...)&gt; &amp;filter, <a class="el" href="classfv_1_1Value.html">Value</a>&lt; value_type &gt; *arg)</td></tr>
+<tr class="separator:a814ced4483f850485ccef6ed536c2325"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pri-types"></a>
 Private Types</h2></td></tr>
 <tr class="memitem:ab6e9ffbeda78885ecceb1996368f3776"><td class="memItemLeft" align="right" valign="top"><a id="ab6e9ffbeda78885ecceb1996368f3776"></a>
@@ -190,7 +197,7 @@ template&lt;typename... ArgTypes&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; std::vector&lt; std::tuple&lt; ArgTypes... &gt; &gt; &gt;</a>.</p>
 <div class="dynheader">

File diff suppressed because it is too large
+ 8 - 8
docs/classfv_1_1Tuple-members.html


+ 10 - 6
docs/classfv_1_1Tuple.html

@@ -65,6 +65,7 @@ $(function() {
 <div class="header">
   <div class="summary">
 <a href="#pub-methods">Public Member Functions</a> &#124;
+<a href="#pub-static-methods">Static Public Member Functions</a> &#124;
 <a href="#pro-methods">Protected Member Functions</a> &#124;
 <a href="classfv_1_1Tuple-members.html">List of all members</a>  </div>
   <div class="headertitle">
@@ -72,7 +73,7 @@ $(function() {
 </div><!--header-->
 <div class="contents">
 
-<p>Takes a series of <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects and bundles them together into a std::tuple object.  
+<p>Takes a series of <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects and bundles them together into a std::tuple object.  
  <a href="classfv_1_1Tuple.html#details">More...</a></p>
 
 <p><code>#include &lt;<a class="el" href="value_8hpp_source.html">value.hpp</a>&gt;</code></p>
@@ -122,14 +123,17 @@ void&#160;</td><td class="memItemRight" valign="bottom"><b>enable_logging</b> (c
 void&#160;</td><td class="memItemRight" valign="bottom"><b>disable_logging</b> ()</td></tr>
 <tr class="separator:a8a3517fdba15dcb2c141dbd58fc232b1 inherit pub_methods_classfv_1_1Value"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
+<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-static-methods"></a>
+Static Public Member Functions</h2></td></tr>
+<tr class="memitem:a14991dd7c7bb043bb15596496342bff6"><td class="memItemLeft" align="right" valign="top"><a id="a14991dd7c7bb043bb15596496342bff6"></a>
+static std::string&#160;</td><td class="memItemRight" valign="bottom"><b>fmt_name</b> (<a class="el" href="classfv_1_1Value.html">Value</a>&lt; ArgTypes &gt; *... args)</td></tr>
+<tr class="separator:a14991dd7c7bb043bb15596496342bff6"><td class="memSeparator" colspan="2">&#160;</td></tr>
+</table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pro-methods"></a>
 Protected Member Functions</h2></td></tr>
 <tr class="memitem:a5cbf67ef6b68f1a18fb4b2b4e8b98c22"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfv_1_1Tuple.html#a5cbf67ef6b68f1a18fb4b2b4e8b98c22">update_value</a> ()</td></tr>
 <tr class="memdesc:a5cbf67ef6b68f1a18fb4b2b4e8b98c22"><td class="mdescLeft">&#160;</td><td class="mdescRight">Updates the internal value.  <a href="#a5cbf67ef6b68f1a18fb4b2b4e8b98c22">More...</a><br /></td></tr>
 <tr class="separator:a5cbf67ef6b68f1a18fb4b2b4e8b98c22"><td class="memSeparator" colspan="2">&#160;</td></tr>
-<tr class="memitem:a23e3c2c4eb61feea56c39c4272b7667f"><td class="memItemLeft" align="right" valign="top"><a id="a23e3c2c4eb61feea56c39c4272b7667f"></a>
-std::string&#160;</td><td class="memItemRight" valign="bottom"><b>_get_name</b> ()</td></tr>
-<tr class="separator:a23e3c2c4eb61feea56c39c4272b7667f"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="inherited"></a>
 Additional Inherited Members</h2></td></tr>
@@ -146,7 +150,7 @@ std::function&lt; std::string(std::tuple&lt; ArgTypes... &gt;)&gt;&#160;</td><td
 <div class="textblock"><h3>template&lt;typename... ArgTypes&gt;<br />
 class fv::Tuple&lt; ArgTypes &gt;</h3>
 
-<p>Takes a series of <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects and bundles them together into a std::tuple object. </p>
+<p>Takes a series of <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects and bundles them together into a std::tuple object. </p>
 <p>Typically, this is most usefull when one wants to apply a function to a few values and store the result. This class can be used in conjunction with Apply to achieve this. </p>
 </div><h2 class="groupheader">Member Function Documentation</h2>
 <a id="a5cbf67ef6b68f1a18fb4b2b4e8b98c22"></a>
@@ -175,7 +179,7 @@ template&lt;typename... ArgTypes&gt; </div>
 </div><div class="memdoc">
 
 <p>Updates the internal value. </p>
-<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
+<p>This function should be overridden by any child class to do the actual work of updating value based on whatever rules the class chooses. Normally, this consists of geting the values from some associated <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> objects, doing some calculation on them, and storing the result in value. </p>
 
 <p>Implements <a class="el" href="classfv_1_1DerivedValue.html#ae59e80a98eb74b95d8961bfe12ee5ec2">fv::DerivedValue&lt; std::tuple&lt; ArgTypes... &gt; &gt;</a>.</p>
 

File diff suppressed because it is too large
+ 2 - 2
docs/classfv_1_1Value.html


+ 17 - 16
docs/classfv_1_1WrapperVector-members.html

@@ -78,23 +78,24 @@ $(function() {
   <tr bgcolor="#f0f0f0"><td class="entry"><b>DerivedValue</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>disable_logging</b>() (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
   <tr bgcolor="#f0f0f0"><td class="entry"><b>enable_logging</b>(const std::function&lt; std::string(std::vector&lt; T &gt;)&gt; &amp;value_to_string=[](std::vector&lt; T &gt;){return &quot;&quot;;}) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>size</b> (defined in <a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
-  <tr class="even"><td class="entry"><a class="el" href="classfv_1_1WrapperVector.html#a2ee99bc4425642d209df7b48ee2ada95">update_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span><span class="mlabel">virtual</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>fmt_name</b>(Value&lt; int &gt; *size, Value&lt; T *&gt; *data) (defined in <a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>GenValue</b>(const std::string &amp;name, const std::string &amp;alias) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_name</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html#a39970158aa8f6eb062a28037df6e2128">get_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">virtual</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>get_value</b>(const std::string &amp;name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>log</b>() (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>logging_enabled</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>reset</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>set_name</b>(const std::string &amp;new_name) (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>size</b> (defined in <a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a></td><td class="entry"><span class="mlabel">private</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>summary</b>() (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">static</span></td></tr>
+  <tr><td class="entry"><a class="el" href="classfv_1_1WrapperVector.html#a2ee99bc4425642d209df7b48ee2ada95">update_value</a>()</td><td class="entry"><a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">private</span><span class="mlabel">virtual</span></td></tr>
   <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value</b> (defined in <a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1DerivedValue.html">fv::DerivedValue&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
-  <tr bgcolor="#f0f0f0"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
-  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>WrapperVector</b>(Value&lt; int &gt; *size, Value&lt; T *&gt; *data, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>Value</b>(const std::string &amp;name, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>value_to_string</b> (defined in <a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1Value.html">fv::Value&lt; std::vector&lt; T &gt; &gt;</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>value_valid</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">protected</span></td></tr>
+  <tr bgcolor="#f0f0f0" class="even"><td class="entry"><b>values</b> (defined in <b>fv::GenValue</b>)</td><td class="entry"><a class="el" href="classfv_1_1GenValue.html">fv::GenValue</a></td><td class="entry"><span class="mlabel">inline</span><span class="mlabel">protected</span><span class="mlabel">static</span></td></tr>
+  <tr bgcolor="#f0f0f0"><td class="entry"><b>WrapperVector</b>(Value&lt; int &gt; *size, Value&lt; T *&gt; *data, const std::string &amp;alias=&quot;&quot;) (defined in <a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a>)</td><td class="entry"><a class="el" href="classfv_1_1WrapperVector.html">fv::WrapperVector&lt; T &gt;</a></td><td class="entry"><span class="mlabel">inline</span></td></tr>
 </table></div><!-- contents -->
 <!-- start footer part -->
 <hr class="footer"/><address class="footer"><small>

File diff suppressed because it is too large
+ 10 - 3
docs/classfv_1_1WrapperVector.html


File diff suppressed because it is too large
+ 8 - 8
docs/classfv_1_1Zip-members.html


File diff suppressed because it is too large
+ 9 - 5
docs/classfv_1_1Zip.html


+ 1 - 1
docs/container_8hpp.html

@@ -112,7 +112,7 @@ Classes</h2></td></tr>
 <tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">A class that is used to "hold" values.  <a href="classfv_1_1Container.html#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classfv_1_1ContainerMean.html">fv::ContainerMean&lt; T &gt;</a></td></tr>
-<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the <a class="el" href="classfv_1_1Mean.html" title="Calculate the mean value of a vector. ">Mean</a> of a <a class="el" href="classfv_1_1Value.html" title="A generic value. ">Value</a> over a series of observations.  <a href="classfv_1_1ContainerMean.html#details">More...</a><br /></td></tr>
+<tr class="memdesc:"><td class="mdescLeft">&#160;</td><td class="mdescRight">Calculate the <a class="el" href="classfv_1_1Mean.html" title="Calculate the mean value of a vector. ">Mean</a> of a <a class="el" href="classfv_1_1Value.html" title="A templated value. ">Value</a> over a series of observations.  <a href="classfv_1_1ContainerMean.html#details">More...</a><br /></td></tr>
 <tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
 </table><table class="memberdecls">
 <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>

File diff suppressed because it is too large
+ 1 - 2
docs/container_8hpp_source.html


File diff suppressed because it is too large
+ 1 - 1
docs/filter_8hpp_source.html


File diff suppressed because it is too large
+ 8 - 8
docs/hierarchy.html


+ 0 - 0
docs/inherit_graph_29.map


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