source: src/Fragmentation/Graph.hpp@ e1e108

IndependentFragmentGrids_IntegrationTest
Last change on this file since e1e108 was 0331ee, checked in by Frederik Heber <heber@…>, 12 years ago

Added functor to add non-bonded union of fragments.

  • this is done by going through all keysets created so far and placing pair-wise two into a new fragment that are within a given distance.
  • Property mode set to 100644
File size: 1.0 KB
Line 
1/*
2 * Graph.hpp
3 *
4 * Created on: Oct 20, 2011
5 * Author: heber
6 */
7
8#ifndef FRAGMENTATION_GRAPH_HPP_
9#define FRAGMENTATION_GRAPH_HPP_
10
11// include config.h
12#ifdef HAVE_CONFIG_H
13#include <config.h>
14#endif
15
16#include <map>
17#include <string>
18
19#include "Fragmentation/KeySet.hpp"
20
21typedef int fragmentcount_t;
22typedef double TEFactor_t;
23typedef std::pair<fragmentcount_t, TEFactor_t> NumberValuePair;
24typedef std::pair<KeySet, NumberValuePair> GraphPair;
25
26class AdaptivityMap;
27class molecule;
28
29class Graph : public std::map <KeySet, NumberValuePair >
30{
31public:
32 Graph();
33 ~Graph();
34
35 void InsertGraph(const Graph &graph, int &counter);
36
37 bool ParseKeySetFile(const std::string &path);
38 bool StoreKeySetFile(const std::string &path) const;
39 bool ParseTEFactorsFile(char *path);
40 bool StoreTEFactorsFile(char *path) const;
41
42 Graph getLocalGraph(const molecule* mol) const;
43
44 AdaptivityMap * GraphToAdaptivityMap() const;
45};
46
47typedef std::pair<Graph::iterator, bool> GraphTestPair;
48
49#endif /* FRAGMENTATION_GRAPH_HPP_ */
Note: See TracBrowser for help on using the repository browser.