Changeset 031e2c6 for src


Ignore:
Timestamp:
Dec 16, 2010, 5:27:54 PM (14 years ago)
Author:
Frederik Heber <heber@…>
Branches:
Action_Thermostats, Add_AtomRandomPerturbation, Add_FitFragmentPartialChargesAction, Add_RotateAroundBondAction, Add_SelectAtomByNameAction, Added_ParseSaveFragmentResults, AddingActions_SaveParseParticleParameters, Adding_Graph_to_ChangeBondActions, Adding_MD_integration_tests, Adding_ParticleName_to_Atom, Adding_StructOpt_integration_tests, AtomFragments, Automaking_mpqc_open, AutomationFragmentation_failures, Candidate_v1.5.4, Candidate_v1.6.0, Candidate_v1.6.1, ChangeBugEmailaddress, ChangingTestPorts, ChemicalSpaceEvaluator, CombiningParticlePotentialParsing, Combining_Subpackages, Debian_Package_split, Debian_package_split_molecuildergui_only, Disabling_MemDebug, Docu_Python_wait, EmpiricalPotential_contain_HomologyGraph, EmpiricalPotential_contain_HomologyGraph_documentation, Enable_parallel_make_install, Enhance_userguide, Enhanced_StructuralOptimization, Enhanced_StructuralOptimization_continued, Example_ManyWaysToTranslateAtom, Exclude_Hydrogens_annealWithBondGraph, FitPartialCharges_GlobalError, Fix_BoundInBox_CenterInBox_MoleculeActions, Fix_ChargeSampling_PBC, Fix_ChronosMutex, Fix_FitPartialCharges, Fix_FitPotential_needs_atomicnumbers, Fix_ForceAnnealing, Fix_IndependentFragmentGrids, Fix_ParseParticles, Fix_ParseParticles_split_forward_backward_Actions, Fix_PopActions, Fix_QtFragmentList_sorted_selection, Fix_Restrictedkeyset_FragmentMolecule, Fix_StatusMsg, Fix_StepWorldTime_single_argument, Fix_Verbose_Codepatterns, Fix_fitting_potentials, Fixes, ForceAnnealing_goodresults, ForceAnnealing_oldresults, ForceAnnealing_tocheck, ForceAnnealing_with_BondGraph, ForceAnnealing_with_BondGraph_continued, ForceAnnealing_with_BondGraph_continued_betteresults, ForceAnnealing_with_BondGraph_contraction-expansion, FragmentAction_writes_AtomFragments, FragmentMolecule_checks_bonddegrees, GeometryObjects, Gui_Fixes, Gui_displays_atomic_force_velocity, ImplicitCharges, IndependentFragmentGrids, IndependentFragmentGrids_IndividualZeroInstances, IndependentFragmentGrids_IntegrationTest, IndependentFragmentGrids_Sole_NN_Calculation, JobMarket_RobustOnKillsSegFaults, JobMarket_StableWorkerPool, JobMarket_unresolvable_hostname_fix, MoreRobust_FragmentAutomation, ODR_violation_mpqc_open, PartialCharges_OrthogonalSummation, PdbParser_setsAtomName, PythonUI_with_named_parameters, QtGui_reactivate_TimeChanged_changes, Recreated_GuiChecks, Rewrite_FitPartialCharges, RotateToPrincipalAxisSystem_UndoRedo, SaturateAtoms_findBestMatching, SaturateAtoms_singleDegree, StoppableMakroAction, Subpackage_CodePatterns, Subpackage_JobMarket, Subpackage_LinearAlgebra, Subpackage_levmar, Subpackage_mpqc_open, Subpackage_vmg, Switchable_LogView, ThirdParty_MPQC_rebuilt_buildsystem, TrajectoryDependenant_MaxOrder, TremoloParser_IncreasedPrecision, TremoloParser_MultipleTimesteps, TremoloParser_setsAtomName, Ubuntu_1604_changes, stable
Children:
24f128, dd97a9
Parents:
4c1230
git-author:
Frederik Heber <heber@…> (12/07/10 13:09:39)
git-committer:
Frederik Heber <heber@…> (12/16/10 17:27:54)
Message:

Splitted off classes TremoloKey and TremoloAtomInfoContainer into own modules.

Location:
src/Parser
Files:
3 added
3 edited

Legend:

Unmodified
Added
Removed
  • src/Parser/Makefile.am

    r4c1230 r031e2c6  
    1717  PdbParser.cpp \
    1818  TremoloParser.cpp \
     19  TremoloAtomInfoContainer.cpp \
    1920  XyzParser.cpp
    2021
     
    2829  PdbKey.hpp \
    2930  PdbParser.hpp \
     31  TremoloKey.hpp \
    3032  TremoloParser.hpp \
     33  TremoloAtomInfoContainer.hpp \
    3134  XyzParser.hpp
    3235
  • src/Parser/TremoloParser.cpp

    r4c1230 r031e2c6  
    427427}
    428428
    429 
    430 TremoloAtomInfoContainer::TremoloAtomInfoContainer() :
    431   F("0"),
    432   stress("0"),
    433   imprData("-"),
    434   GroupMeasureTypeNo("0"),
    435   extType("-"),
    436   name("-"),
    437   resName("-"),
    438   chainID("0"),
    439   resSeq("0"),
    440   occupancy("0"),
    441   tempFactor("0"),
    442   segID("0"),
    443   Charge("0"),
    444   charge("0"),
    445   GrpTypeNo("0"),
    446   torsion("-"),
    447   neighbors(vector<int>(0, 5))
    448 {}
    449 
    450 void TremoloAtomInfoContainer::set(TremoloKey::atomDataKey key, string value) {
    451   switch (key) {
    452     case TremoloKey::F :
    453       F = value;
    454       break;
    455     case TremoloKey::stress :
    456       stress = value;
    457      break;
    458     case TremoloKey::imprData :
    459       imprData = value;
    460       break;
    461     case TremoloKey::GroupMeasureTypeNo :
    462       GroupMeasureTypeNo = value;
    463       break;
    464     case TremoloKey::extType :
    465       extType = value;
    466       break;
    467     case TremoloKey::name :
    468       name = value;
    469       break;
    470     case TremoloKey::resName :
    471       resName = value;
    472       break;
    473     case TremoloKey::chainID :
    474       chainID = value;
    475       break;
    476     case TremoloKey::resSeq :
    477       resSeq = value;
    478       break;
    479     case TremoloKey::occupancy :
    480       occupancy = value;
    481       break;
    482     case TremoloKey::tempFactor :
    483       tempFactor = value;
    484       break;
    485     case TremoloKey::segID :
    486       segID = value;
    487       break;
    488     case TremoloKey::Charge :
    489       Charge = value;
    490       break;
    491     case TremoloKey::charge :
    492       charge = value;
    493       break;
    494     case TremoloKey::GrpTypeNo :
    495       GrpTypeNo = value;
    496       break;
    497     case TremoloKey::torsion :
    498       torsion = value;
    499       break;
    500     default :
    501       cout << "Unknown key: " << key << ", value: " << value << endl;
    502       break;
    503   }
    504 }
    505 
    506 string TremoloAtomInfoContainer::get(TremoloKey::atomDataKey key) {
    507   switch (key) {
    508     case TremoloKey::F :
    509       return F;
    510     case TremoloKey::stress :
    511       return stress;
    512     case TremoloKey::imprData :
    513       return imprData;
    514     case TremoloKey::GroupMeasureTypeNo :
    515       return GroupMeasureTypeNo;
    516     case TremoloKey::extType :
    517       return extType;
    518     case TremoloKey::name :
    519       return name;
    520     case TremoloKey::resName :
    521       return resName;
    522     case TremoloKey::chainID :
    523       return chainID;
    524     case TremoloKey::resSeq :
    525       return resSeq;
    526     case TremoloKey::occupancy :
    527       return occupancy;
    528     case TremoloKey::tempFactor :
    529       return tempFactor;
    530     case TremoloKey::segID :
    531       return segID;
    532     case TremoloKey::Charge :
    533       return Charge;
    534     case TremoloKey::charge :
    535       return charge;
    536     case TremoloKey::GrpTypeNo :
    537       return GrpTypeNo;
    538     case TremoloKey::torsion :
    539       return torsion;
    540     default :
    541       cout << "Unknown key: " << key << endl;
    542       return "";
    543   }
    544 }
    545 
  • src/Parser/TremoloParser.hpp

    r4c1230 r031e2c6  
    1212#include "Parser/FormatParser.hpp"
    1313
     14#include "TremoloKey.hpp"
     15#include "TremoloAtomInfoContainer.hpp"
     16
    1417class molecule;
    15 
    16 /**
    17  * Known keys for the ATOMDATA line.
    18  */
    19 class TremoloKey {
    20 public:
    21   enum atomDataKey {
    22     noKey,
    23     x,
    24     u,
    25     F,
    26     stress,
    27     Id,
    28     neighbors,
    29     imprData,
    30     GroupMeasureTypeNo,
    31     Type,
    32     extType,
    33     name,
    34     resName,
    35     chainID,
    36     resSeq,
    37     occupancy,
    38     tempFactor,
    39     segID,
    40     Charge,
    41     charge,
    42     GrpTypeNo,
    43     torsion
    44   };
    45 };
    46 
    47 /**
    48  * Holds tremolo-specific information which is not store in the atom class.
    49  */
    50 class TremoloAtomInfoContainer {
    51 public:
    52   TremoloAtomInfoContainer();
    53   void set(TremoloKey::atomDataKey key, std::string value);
    54   std::string get(TremoloKey::atomDataKey key);
    55   std::string F;
    56   std::string stress;
    57   std::string imprData;
    58   std::string GroupMeasureTypeNo;
    59   std::string extType;
    60   std::string name;
    61   std::string resName;
    62   std::string chainID;
    63   std::string resSeq;
    64   std::string occupancy;
    65   std::string tempFactor;
    66   std::string segID;
    67   std::string Charge;
    68   std::string charge;
    69   std::string GrpTypeNo;
    70   std::string torsion;
    71   std::vector<int> neighbors;
    72 };
    7318
    7419/**
Note: See TracChangeset for help on using the changeset viewer.