Ignore:
File:
1 edited

Legend:

Unmodified
Added
Removed
  • src/molecule.hpp

    rd74077 r4bb63c  
    2929#include "Patterns/Cacheable.hpp"
    3030#include "Formula.hpp"
     31#include "AtomSet.hpp"
    3132
    3233#include "Descriptors/MoleculeDescriptor_impl.hpp"
     
    8485
    8586  public:
    86     typedef std::list<atom*> atomSet;
     87    typedef ATOMSET(std::list) atomSet;
    8788    typedef std::set<atomId_t> atomIdSet;
    8889    typedef ObservedIterator<atomSet> iterator;
     
    164165  bool IsEnd() const ;
    165166
     167  // templates for allowing global manipulation of all vectors
     168  template <typename res> void ActOnAllVectors( res (Vector::*f)() ) const;
     169  template <typename res> void ActOnAllVectors( res (Vector::*f)() const) const;
     170  template <typename res, typename T> void ActOnAllVectors( res (Vector::*f)(T), T t ) const;
     171  template <typename res, typename T> void ActOnAllVectors( res (Vector::*f)(T) const, T t ) const;
     172  template <typename res, typename T> void ActOnAllVectors( res (Vector::*f)(T&), T &t ) const;
     173  template <typename res, typename T> void ActOnAllVectors( res (Vector::*f)(T&) const, T &t ) const;
     174  template <typename res, typename T, typename U> void ActOnAllVectors( res (Vector::*f)(T, U), T t, U u ) const;
     175  template <typename res, typename T, typename U> void ActOnAllVectors( res (Vector::*f)(T, U) const, T t, U u ) const;
     176  template <typename res, typename T, typename U, typename V> void ActOnAllVectors( res (Vector::*f)(T, U, V), T t, U u, V v) const;
     177  template <typename res, typename T, typename U, typename V> void ActOnAllVectors( res (Vector::*f)(T, U, V) const, T t, U u, V v) const;
     178
    166179  // templates for allowing global manipulation of molecule with each atom as single argument
    167180  template <typename res> void ActWithEachAtom( res (molecule::*f)(atom *) ) const;
     
    257270  void Scale(const double ** const factor);
    258271  void DeterminePeriodicCenter(Vector &center);
    259   Vector * DetermineCenterOfGravity();
     272  Vector * DetermineCenterOfGravity() const;
    260273  Vector * DetermineCenterOfAll() const;
    261274  Vector * DetermineCenterOfBox() const;
     
    265278  bool VerletForceIntegration(char *file, config &configuration, const size_t offset);
    266279  void Thermostats(config &configuration, double ActualTemp, int Thermostat);
    267   void PrincipalAxisSystem(bool DoRotate);
    268280  double VolumeOfConvexEnvelope(bool IsAngstroem);
    269281
     
    328340
    329341  // Output routines.
    330   bool Output(ofstream * const output);
     342  bool Output(std::ostream * const output);
    331343  bool OutputTrajectories(ofstream * const output);
    332344  void OutputListOfBonds() const;
Note: See TracChangeset for help on using the changeset viewer.