Index: src/Fragmentation/BondsPerShortestPath.cpp
===================================================================
--- src/Fragmentation/BondsPerShortestPath.cpp	(revision e920d3d78bfcf50bfef7c62b3496caceec76e6e1)
+++ src/Fragmentation/BondsPerShortestPath.cpp	(revision 9291d04e2ad151a7ed6cce0346b5c80b82895d87)
@@ -122,7 +122,7 @@
  * \param _RootKeyNr index of root node
  * \param RestrictedKeySet Restricted vertex set to use in context of molecule
- * \param saturation this tells whether to treat hydrogen special or not.
- */
-void BondsPerShortestPath::FillSPListandLabelVertices(int _RootKeyNr, KeySet &RestrictedKeySet, const enum HydrogenSaturation saturation)
+ * \param treatment this tells whether to treat hydrogen special or not.
+ */
+void BondsPerShortestPath::FillSPListandLabelVertices(int _RootKeyNr, KeySet &RestrictedKeySet, const enum HydrogenTreatment treatment)
 {
   // Actually, we should construct a spanning tree vom the root atom and select all edges therefrom and put them into
@@ -173,5 +173,5 @@
         if ((RestrictedKeySet.find(OtherWalker->getNr()) != RestrictedKeySet.end())
             // skip hydrogens if desired and restrict to fragment
-            && ((saturation == DontSaturate) || (OtherWalker->getType()->getAtomicNumber() != 1))) {
+            && ((treatment == IncludeHydrogen) || (OtherWalker->getType()->getAtomicNumber() != 1))) {
           LOG(2, "Current partner is " << *OtherWalker << " with nr " << OtherWalker->getNr() << " in bond " << *(*Runner) << ".");
           // set the label if not set (and push on root stack as well)
Index: src/Fragmentation/BondsPerShortestPath.hpp
===================================================================
--- src/Fragmentation/BondsPerShortestPath.hpp	(revision e920d3d78bfcf50bfef7c62b3496caceec76e6e1)
+++ src/Fragmentation/BondsPerShortestPath.hpp	(revision 9291d04e2ad151a7ed6cce0346b5c80b82895d87)
@@ -33,5 +33,5 @@
   void SetSPList(atom *_Root);
   void ResetSPList();
-  void FillSPListandLabelVertices(int _RootKeyNr, KeySet &RestrictedKeySet, const enum HydrogenSaturation saturation);
+  void FillSPListandLabelVertices(int _RootKeyNr, KeySet &RestrictedKeySet, const enum HydrogenTreatment treatment);
   void OutputSPList();
   int CountNumbersInBondsList();
Index: src/Fragmentation/Fragmentation.cpp
===================================================================
--- src/Fragmentation/Fragmentation.cpp	(revision e920d3d78bfcf50bfef7c62b3496caceec76e6e1)
+++ src/Fragmentation/Fragmentation.cpp	(revision 9291d04e2ad151a7ed6cce0346b5c80b82895d87)
@@ -64,9 +64,9 @@
  * \param _mol molecule for internal use (looking up atoms)
  * \param _FileChecker instance contains adjacency parsed from elsewhere
- * \param _saturation whether to treat hydrogen special and saturate dangling bonds or not
- */
-Fragmentation::Fragmentation(molecule *_mol, AdjacencyList &_FileChecker, const enum HydrogenSaturation _saturation) :
+ * \param _treatment whether to treat hydrogen special and saturate dangling bonds or not
+ */
+Fragmentation::Fragmentation(molecule *_mol, AdjacencyList &_FileChecker, const enum HydrogenTreatment _treatment) :
   mol(_mol),
-  saturation(_saturation),
+  treatment(_treatment),
   FileChecker(_FileChecker)
 {}
@@ -109,13 +109,13 @@
 
   LOG(0, std::endl);
-  switch (saturation) {
-    case DoSaturate:
-      LOG(0, "I will treat hydrogen special and saturate dangling bonds with it.");
+  switch (treatment) {
+    case ExcludeHydrogen:
+      LOG(0, "I will treat hydrogen special.");
       break;
-    case DontSaturate:
+    case IncludeHydrogen:
       LOG(0, "Hydrogen is treated just like the rest of the lot.");
       break;
     default:
-      ASSERT(0, "Fragmentation::FragmentMolecule() - there is a saturation setting which I have no idea about.");
+      ASSERT(0, "Fragmentation::FragmentMolecule() - there is a HydrogenTreatment setting which I have no idea about.");
       break;
   }
@@ -137,5 +137,5 @@
   for (molecule::const_iterator iter = mol->begin(); iter != mol->end(); ++iter) {
     // remove in hydrogen and we do saturate
-    if ((saturation == DoSaturate) && ((*iter)->getType()->getAtomicNumber() == 1)) // skip hydrogen
+    if ((treatment == ExcludeHydrogen) && ((*iter)->getType()->getAtomicNumber() == 1)) // skip hydrogen
       AtomMask.setFalse((*iter)->getNr());
   }
@@ -258,5 +258,5 @@
 
       // Create list of Graphs of current Bond Order (i.e. F_{ij})
-      NumMoleculesOfOrder[RootNr] = PSG(CompleteMolecule, saturation);
+      NumMoleculesOfOrder[RootNr] = PSG(CompleteMolecule, treatment);
 
       // output resulting number
@@ -309,5 +309,5 @@
     c = (ListOfBonds.size() > c) ? ListOfBonds.size() : c;
   }
-  FragmentCount = (saturation == DoSaturate ? mol->getNoNonHydrogen() : mol->getAtomCount()) *(1 << (c*order));
+  FragmentCount = (treatment == ExcludeHydrogen ? mol->getNoNonHydrogen() : mol->getAtomCount()) *(1 << (c*order));
   LOG(1, "Upper limit for this subgraph is " << FragmentCount << " for "
       << mol->getNoNonHydrogen() << " non-H atoms with maximum bond degree of " << c << ".");
@@ -466,5 +466,5 @@
     const atom * const Father = (*iter)->GetTrueFather();
     if (AtomMask.isTrue(Father->getNr())) // apply mask
-      if ((saturation == DontSaturate) || ((*iter)->getType()->getAtomicNumber() != 1)) // skip hydrogen
+      if ((treatment == IncludeHydrogen) || ((*iter)->getType()->getAtomicNumber() != 1)) // skip hydrogen
         RootStack.push_front((*iter)->getNr());
   }
Index: src/Fragmentation/Fragmentation.hpp
===================================================================
--- src/Fragmentation/Fragmentation.hpp	(revision e920d3d78bfcf50bfef7c62b3496caceec76e6e1)
+++ src/Fragmentation/Fragmentation.hpp	(revision 9291d04e2ad151a7ed6cce0346b5c80b82895d87)
@@ -34,5 +34,8 @@
 {
 public:
-  Fragmentation(molecule *_mol, AdjacencyList &_FileChecker, const enum HydrogenSaturation _saturation);
+  Fragmentation(
+      molecule *_mol,
+      AdjacencyList &_FileChecker,
+      const enum HydrogenTreatment _treatment);
   ~Fragmentation();
 
@@ -61,6 +64,6 @@
   //!> pointer to molecule that is fragmented
   molecule *mol;
-  //!> whether to saturate dangling bonds with hydrogen and hence treat hydrogen special
-  const enum HydrogenSaturation saturation;
+  //!> whether to treat hydrogen special
+  const enum HydrogenTreatment treatment;
   //!> reference to an external adjacency for comparison
   AdjacencyList &FileChecker;
Index: src/Fragmentation/HydrogenSaturation_enum.hpp
===================================================================
--- src/Fragmentation/HydrogenSaturation_enum.hpp	(revision e920d3d78bfcf50bfef7c62b3496caceec76e6e1)
+++ src/Fragmentation/HydrogenSaturation_enum.hpp	(revision 9291d04e2ad151a7ed6cce0346b5c80b82895d87)
@@ -19,4 +19,9 @@
 };
 
+enum HydrogenTreatment {
+  ExcludeHydrogen, //!< exclude hydrogen from the bond graph, i.e. fragmentation treats hydrogen special
+  IncludeHydrogen,   //!< include hydrogen from the bond graph, i.e. fragmentation treats hydrogen just as the rest
+};
+
 
 #endif /* HYDROGENSATURATION_ENUM_HPP_ */
Index: src/Fragmentation/PowerSetGenerator.cpp
===================================================================
--- src/Fragmentation/PowerSetGenerator.cpp	(revision e920d3d78bfcf50bfef7c62b3496caceec76e6e1)
+++ src/Fragmentation/PowerSetGenerator.cpp	(revision 9291d04e2ad151a7ed6cce0346b5c80b82895d87)
@@ -191,9 +191,9 @@
  * with SP of 2, then those with SP of 3, then those with SP of 4 and so on.
  * \param RestrictedKeySet Restricted vertex set to use in context of molecule
- * \param saturation whether to treat hydrogen special or not
+ * \param treatment whether to treat hydrogen special or not
  * \return number of inserted fragments
  * \note ShortestPathList in FragmentSearch structure is probably due to NumberOfAtomsSPLevel and SP not needed anymore
  */
-int PowerSetGenerator::operator()(KeySet &RestrictedKeySet, const enum HydrogenSaturation saturation)
+int PowerSetGenerator::operator()(KeySet &RestrictedKeySet, const enum HydrogenTreatment treatment)
 {
   int Counter = FragmentSearch->FragmentCounter; // mark current value of counter
@@ -205,5 +205,5 @@
 
   // do a BFS search to fill the SP lists and label the found vertices
-  BondsPerSPList.FillSPListandLabelVertices(FragmentSearch->getRoot()->GetTrueFather()->getNr(), RestrictedKeySet, saturation);
+  BondsPerSPList.FillSPListandLabelVertices(FragmentSearch->getRoot()->GetTrueFather()->getNr(), RestrictedKeySet, treatment);
 
   // outputting all list for debugging
Index: src/Fragmentation/PowerSetGenerator.hpp
===================================================================
--- src/Fragmentation/PowerSetGenerator.hpp	(revision e920d3d78bfcf50bfef7c62b3496caceec76e6e1)
+++ src/Fragmentation/PowerSetGenerator.hpp	(revision 9291d04e2ad151a7ed6cce0346b5c80b82895d87)
@@ -30,5 +30,5 @@
 
   void SPFragmentGenerator(int RootDistance, std::vector<bond::ptr > &BondsSet, int SetDimension, int SubOrder);
-  int operator()(KeySet &RestrictedKeySet, const enum HydrogenSaturation saturation);
+  int operator()(KeySet &RestrictedKeySet, const enum HydrogenTreatment treatment);
   void RemoveAllTouchedFromSnakeStack(int verbosity, KeySet *FragmentSet, int *&TouchedList, int &TouchedIndex);
   int FillBondsList(std::vector<bond::ptr > &BondsList, std::list<bond::ptr >::const_iterator SetFirst, std::list<bond::ptr >::const_iterator SetLast, int *&TouchedList, int TouchedIndex);
