Keywords: DeveloppersGuide

# Package layout

- examples
  This package contains all the main classes to test the program.
  - test
    It contains all the experimental Data and sequences to test the program.
- melting
  This package contains the general classes used by most classes of the program. It also contains the main class which runs MELTING.
  - approximativeMethods
    It contains all the classes which implement an approximative formula to compute the melting temperature.
  - configuration
    It contains all the classes which register the option, models and corrections names. It contains the classes which manage the default options and which map the models and correction names with the matching classes.
  - correctionMethods
    It regroups some of the base implementations for ion or denaturing agent corrections.
  - exceptions
    It contains all the exceptions used in the program.
  - handlers
    It contains all the Handler classes necessary to parse the XML files.
  - ionCorrection
    - magnesiumCorrections
      It contains all the classes which implement a magnesium correction.
    - mixedNaMgCorrections
      It contains all the classes which implement a mixed sodium, magnesium correction.
    - sodiumCorrections
      It contains all the classes which implement a sodium correction.
    - sodiumEquivalence
      It contains all the classes which implement a formula to compute a sodium-equivalent concentration.
  - methodInterfaces
    It contains all the interfaces.
  - nearestNeighborModel
    It contains the class which uses a Nearest-Neighbor approach to compute the enthalpy, entropy and melting temperature.
  - otherCorrections
    - dmsoCorrections
      It contains all the classes which implement a DMSO correction.
    - formamideCorrections
      It contains all the classes which implement a formamide correction.
  - patternModels
    It contains the base implementation of each thermodynamic model.
    - cngPatterns
      It contains the class which implements a thermodynamic model for CNG repetitions computation.
    - cricksPair
      It contains the classes which implement a thermodynamic model for Crick's pairs computation.
    - InternalLoops
      It contains the classes which implement a thermodynamic model for internal loop computation.
    - longBulge
      It contains the classes which implement a thermodynamic model for long bulge loop computation.
    - longDanglingEnds
      It contains the classes which implement a thermodynamic model for long dangling end computation.
    - secondDanglingEnds
      It contains the classes which implement a thermodynamic model for two adjacent dangling end computation.
    - singleBulge
      It contains the classes which implement a thermodynamic model for single bulge loop computation.
    - singleDanglingEnds
      It contains the classes which implement a thermodynamic model for single dangling end computation.
    - singleMismatch
      It contains the classes which implement a thermodynamic model for single mismatch computation.
    - specificAcids
      It contains the classes which implement a thermodynamic model for specific or modified nucleic acids computation.
    - tandemMismatches
      It contains the classes which implement a thermodynamic model for tandem mismatches computation.
    - wobble
      It contains the classes which implement a thermodynamic model for inosine and GU base pair computation.
  - sequences
    It contains the classes which allow to represent nucleic acids and sequences and analyze them.