<commit_before>#ifndef DECON_HPP
#define DECON_HPP
#include <vector>
#include <string>
#include <UnorderedMap>
#include "Variant.h"
#include "index.hpp"
#include "path.hpp"
#include "vg.hpp"
#include "set"

class Deconstructor{
public:

  Deconstructor();
  void set_index(Index& ind);

  /**
  * Project a mapping onto another mapping.
  */
  Path relative_mapping(Path& p1, Path& p2);

  /**
  * Convenience function.
  * Project a mapping with name 'p2' onto p1.
  * Return the projection as a map.
  */
  Path relative_mapping(Path& p1, string p2);

  /**
  * Build a vcf record from two paths, with the
  * second path argument taken as the reference.
  */
  Variant mapping_to_variant(Path variant, Path ref);
  
  /**
  * Turn a vector of variants into a proper VCF.
  */
  VariantCallFile write_variants(string filename, vector<Variant> variants);
private:
  // TODO Should probably be able to handle XG or VG indices
  Index& index;

}


#endif<commit_msg>Fixed some errors in deconstructor<commit_after>#ifndef DECON_HPP
#define DECON_HPP
#include <vector>
#include <string>
#include <unordered_map>
#include "Variant.h"
#include "index.hpp"
#include "path.hpp"
#include "vg.hpp"
#include <set>
#include "vg.pb.h"

class Deconstructor{
public:

  Deconstructor();
  void set_index(Index ind);

  /**
  * Project a mapping onto another mapping.
  */
  Path relative_mapping(Path& p1, Path& p2);

  /**
  * Convenience function.
  * Project a mapping with name 'p2' onto p1.
  * Return the projection as a map.
  */
  Path relative_mapping(Path& p1, string p2);

  /**
  * Build a vcf record from two paths, with the
  * second path argument taken as the reference.
  */
  Variant mapping_to_variant(Path variant, Path ref);
  
  /**
  * Turn a vector of variants into a proper VCF.
  */
  VariantCallFile write_variants(string filename, vector<Variant> variants);
private:
  // TODO Should probably be able to handle XG or VG indices
  Index index;

}


#endif
{'fraction_non_alphanumeric': 0.10919248349415947, 'fraction_numerical': 0.006094464195022855, 'mean_word_length': 3.7699757869249395, 'pattern_counts': {'":': 0, '<': 12, '<?xml version=': 0, '>': 12, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6235635', 'n_tokens_mistral': 664, 'n_tokens_neox': 638, 'n_words': 223}