Changes in / [2ededc2:b8d1aeb]


Ignore:
Files:
22 added
18 edited

Legend:

Unmodified
Added
Removed
  • configure.ac

    r2ededc2 rb8d1aeb  
    3434#AX_BOOST_PROGRAM_OPTIONS
    3535#AX_BOOST_SERIALIZATION
     36
     37#QT4 libraries
     38gw_CHECK_QT4
     39AX_CHECK_GLU
     40AC_MSG_NOTICE(["GLU_CFLAGS: $GLU_CFLAGS, GLU_CXXFLAGS: $GLU_CXXFLAGS, GLU_LDFLAGS: $GLU_LDFLAGS, GLU_LIBS: $GLU_LIBS"])
     41
    3642
    3743# Checks for header files.
  • doc/class structure.uxf

    r2ededc2 rb8d1aeb  
    2121
    2222
    23 // This text will be stored with each diagram;  use it for notes.</help_text><zoom_level>7</zoom_level><element><type>com.umlet.element.base.Class</type><coordinates><x>1855</x><y>294</y><w>147</w><h>70</h></coordinates><panel_attributes>AtomInfo
     23// This text will be stored with each diagram;  use it for notes.</help_text><zoom_level>7</zoom_level><element><type>com.umlet.element.base.Class</type><coordinates><x>1855</x><y>210</y><w>147</w><h>70</h></coordinates><panel_attributes>AtomInfo
    2424--
    2525-x,v,F: Vector
     
    2828#AtomInfo();
    2929#~AtomInfo();
    30 </panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1645</x><y>315</y><w>223</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>210;21;21;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1274</x><y>147</y><w>392</w><h>259</h></coordinates><panel_attributes>Element
     30</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1645</x><y>231</y><w>223</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>210;21;21;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1274</x><y>63</y><w>392</w><h>259</h></coordinates><panel_attributes>Element
    3131--
    3232mass: double
     
    4949#~element();
    5050#Output(ofstream * const out) const: bool
    51 #Checkout(ofstream * const out, const int No, const int NoOfAtoms) const: bool</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1960</x><y>532</y><w>280</w><h>161</h></coordinates><panel_attributes>BondedParticle
     51#Checkout(ofstream * const out, const int No, const int NoOfAtoms) const: bool</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1960</x><y>448</y><w>280</w><h>161</h></coordinates><panel_attributes>BondedParticle
    5252--
    5353--
     
    6363#OutputBondOfAtom() const
    6464#OutputAdjacency(ofstream *AdjacencyFile) const
    65 #OutputOrder(ofstream *file) const</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>2184</x><y>343</y><w>258</w><h>202</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>245;21;245;154;21;154;21;189</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1925</x><y>343</y><w>293</w><h>202</h></coordinates><panel_attributes>lt=&lt;&lt;-
    66 </panel_attributes><additional_attributes>21;21;21;154;280;154;280;189</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>2184</x><y>343</y><w>34</w><h>202</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;189</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2359</x><y>294</y><w>147</w><h>70</h></coordinates><panel_attributes>BondedParticleInfo
     65#OutputOrder(ofstream *file) const</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>2184</x><y>259</y><w>258</w><h>202</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>245;21;245;154;21;154;21;189</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1925</x><y>259</y><w>293</w><h>202</h></coordinates><panel_attributes>lt=&lt;&lt;-
     66</panel_attributes><additional_attributes>21;21;21;154;280;154;280;189</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>2184</x><y>259</y><w>34</w><h>202</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;189</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2359</x><y>210</y><w>147</w><h>70</h></coordinates><panel_attributes>BondedParticleInfo
    6767--
    6868AdaptiveOrder: unsigned char
     
    7171#BondedParticleInfo()
    7272#~BondedParticleInfo()
    73 </panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2079</x><y>280</y><w>217</w><h>84</h></coordinates><panel_attributes>ParticleInfo
     73</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2079</x><y>196</y><w>217</w><h>84</h></coordinates><panel_attributes>ParticleInfo
    7474--
    7575nr: int
     
    7979#~ParticleInfo()
    8080#ostream &amp; operator &lt;&lt; (ostream &amp;ost) const
    81 </panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>2485</x><y>315</y><w>174</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>21;21;161;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2646</x><y>245</y><w>147</w><h>133</h></coordinates><panel_attributes>BondList
     81</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>2485</x><y>231</y><w>174</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>21;21;161;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2646</x><y>161</y><w>147</w><h>133</h></coordinates><panel_attributes>BondList
    8282{Some Properties}
    8383--
     
    9090Responsibilities
    9191-- Resp1
    92 *-- Resp2*</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1372</x><y>427</y><w>147</w><h>105</h></coordinates><panel_attributes>GraphNodeInfo
     92*-- Resp2*</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1372</x><y>343</y><w>147</w><h>105</h></coordinates><panel_attributes>GraphNodeInfo
    9393--
    9494--
     
    102102#GraphNodeInfo()
    103103#~GraphNodeInfo()
    104 </panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1484</x><y>609</y><w>126</w><h>70</h></coordinates><panel_attributes>GraphNode
     104</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1484</x><y>525</y><w>126</w><h>70</h></coordinates><panel_attributes>GraphNode
    105105--
    106106--
     
    109109#OutputGraphInfo() const
    110110#OutputComponentNumber() const
    111 </panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1484</x><y>343</y><w>748</w><h>279</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>735;21;735;70;217;70;217;210;21;210;21;266</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1484</x><y>511</y><w>34</w><h>111</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;98</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1288</x><y>756</y><w>588</w><h>245</h></coordinates><panel_attributes>Atom
     111</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1484</x><y>259</y><w>748</w><h>279</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>735;21;735;70;217;70;217;210;21;210;21;266</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1484</x><y>427</y><w>34</w><h>111</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;98</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1288</x><y>672</y><w>588</w><h>245</h></coordinates><panel_attributes>Atom
    112112--
    113113sort: int*
     
    129129#DistanceToVector(const Vector &amp;origin) const: double
    130130#DistanceSquaredToVector(const Vector &amp;origin) const: double
    131 #IsInParallelepiped(const Vector offset, const double *parallelepiped) const: bool</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1379</x><y>511</y><w>83</w><h>258</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;182;70;182;70;245</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2226</x><y>749</y><w>504</w><h>210</h></coordinates><panel_attributes>TrajectoryParticle
     131#IsInParallelepiped(const Vector offset, const double *parallelepiped) const: bool</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1379</x><y>427</y><w>83</w><h>258</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;182;70;182;70;245</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2226</x><y>665</y><w>504</w><h>210</h></coordinates><panel_attributes>TrajectoryParticle
    132132--
    133133--
     
    147147#Thermostat_Berendsen(int Step, double ScaleTempFactor, double *ekin, config *configuration)
    148148#Thermostat_NoseHoover_init(int Step, double *delta_alpha)
    149 #Thermostat_NoseHoover_scale(int Step, double *ekin, config *configuration)</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>2149</x><y>343</y><w>209</w><h>419</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;112;196;112;196;406</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1967</x><y>343</y><w>391</w><h>419</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;112;378;112;378;406</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1617</x><y>574</y><w>203</w><h>70</h></coordinates><panel_attributes>TrajectoryParticleInfo
     149#Thermostat_NoseHoover_scale(int Step, double *ekin, config *configuration)</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>2149</x><y>259</y><w>209</w><h>419</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;112;196;112;196;406</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1967</x><y>259</y><w>391</w><h>419</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;112;378;112;378;406</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1617</x><y>490</y><w>203</w><h>70</h></coordinates><panel_attributes>TrajectoryParticleInfo
    150150--
    151151Trajectory: struct {vector&lt;Vector&gt; R,U,V}
     
    153153--
    154154#TrajectoryParticleInfo()
    155 #~TrajectoryParticleInfo()</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1757</x><y>623</y><w>601</w><h>139</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;105;588;105;588;126</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1729</x><y>623</y><w>34</w><h>146</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;133</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1519</x><y>658</y><w>244</w><h>111</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;56;231;56;231;98</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1736</x><y>448</y><w>147</w><h>112</h></coordinates><panel_attributes>TesselPoint
     155#~TrajectoryParticleInfo()</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1757</x><y>539</y><w>601</w><h>139</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;105;588;105;588;126</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1729</x><y>539</y><w>34</w><h>146</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;133</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1519</x><y>574</y><w>244</w><h>111</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>21;21;21;56;231;56;231;98</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1736</x><y>364</y><w>147</w><h>112</h></coordinates><panel_attributes>TesselPoint
    156156--
    157157-id: Long
     
    163163Responsibilities
    164164-- Resp1
    165 *-- Resp2*</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1729</x><y>539</y><w>146</w><h>230</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>133;21;133;175;21;175;21;217</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1729</x><y>672</y><w>398</w><h>97</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>385;21;385;42;21;42;21;84</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1729</x><y>343</y><w>398</w><h>426</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>385;21;385;168;196;168;196;371;21;371;21;413</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1729</x><y>343</y><w>209</w><h>426</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>196;21;196;371;21;371;21;413</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>833</x><y>854</y><w>357</w><h>224</h></coordinates><panel_attributes>Bond
     165*-- Resp2*</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1729</x><y>455</y><w>146</w><h>230</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>133;21;133;175;21;175;21;217</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1729</x><y>588</y><w>398</w><h>97</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>385;21;385;42;21;42;21;84</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1729</x><y>259</y><w>398</w><h>426</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>385;21;385;168;196;168;196;371;21;371;21;413</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1729</x><y>259</y><w>209</w><h>426</h></coordinates><panel_attributes>lt=&lt;&lt;-</panel_attributes><additional_attributes>196;21;196;371;21;371;21;413</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>833</x><y>770</y><w>357</w><h>224</h></coordinates><panel_attributes>Bond
    166166--
    167167HydrogenBond: int
     
    182182#bond()
    183183#bond(atom *left, atom *right, const int degree=1, const int number=0)
    184 #~bond()</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1834</x><y>707</y><w>107</w><h>125</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
    185 3</panel_attributes><additional_attributes>42;112;91;112;91;35;21;35;21;49</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1169</x><y>896</y><w>132</w><h>49</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
    186 2</panel_attributes><additional_attributes>21;35;119;35</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>770</x><y>742</y><w>111</w><h>167</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
    187 2</panel_attributes><additional_attributes>63;154;28;154;28;35;98;35;98;112</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1113</x><y>1330</y><w>504</w><h>168</h></coordinates><panel_attributes>BondGraph
     184#~bond()</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1834</x><y>623</y><w>107</w><h>125</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
     1853</panel_attributes><additional_attributes>42;112;91;112;91;35;21;35;21;49</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1169</x><y>812</y><w>132</w><h>49</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
     1862</panel_attributes><additional_attributes>21;35;119;35</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>770</x><y>658</y><w>111</w><h>167</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
     1872</panel_attributes><additional_attributes>63;154;28;154;28;35;98;35;98;112</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1113</x><y>1246</y><w>504</w><h>168</h></coordinates><panel_attributes>BondGraph
    188188--
    189189max_distance: double
     
    199199                                                        double &amp;MinDistance, double &amp;MaxDistance, bool IsAngstroem)
    200200#CovalentMinMaxDistance(BondedParticle * const Walker, BondedParticle * const OtherWalker,
    201                                           double &amp;MinDistance, double &amp;MaxDistance, bool IsAngstroem)</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1596</x><y>1407</y><w>167</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>21;21;154;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1750</x><y>1365</y><w>147</w><h>133</h></coordinates><panel_attributes>MatrixContainer
     201                                          double &amp;MinDistance, double &amp;MaxDistance, bool IsAngstroem)</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1596</x><y>1323</y><w>167</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>21;21;154;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1750</x><y>1281</y><w>147</w><h>133</h></coordinates><panel_attributes>MatrixContainer
    202202--
    203203-id: Long
     
    209209Responsibilities
    210210-- Resp1
    211 *-- Resp2*</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>0</x><y>539</y><w>511</w><h>1050</h></coordinates><panel_attributes>config
     211*-- Resp2*</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>0</x><y>455</y><w>511</w><h>1050</h></coordinates><panel_attributes>config
    212212--
    213213PsiType: int
     
    297297#SetDefaultPath(const char * const path);
    298298#InitThermostats();
    299 #ParseThermostats(class ConfigFileBuffer * const fb);</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>490</x><y>1428</y><w>636</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>21;21;623;21</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1596</x><y>84</y><w>121</w><h>139</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
    300 2</panel_attributes><additional_attributes>70;126;105;126;105;35;21;35;21;63</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2520</x><y>980</y><w>224</w><h>140</h></coordinates><panel_attributes>&lt;&lt;Singleton&gt;&gt;
     299#ParseThermostats(class ConfigFileBuffer * const fb);</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>490</x><y>1344</y><w>636</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>21;21;623;21</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1596</x><y>0</y><w>121</w><h>139</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
     3002</panel_attributes><additional_attributes>70;126;105;126;105;35;21;35;21;63</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2520</x><y>896</y><w>224</w><h>140</h></coordinates><panel_attributes>&lt;&lt;Singleton&gt;&gt;
    301301errorLogger
    302302--
     
    310310#static setVerbosity(int verbosityLevel);
    311311#protected errorLogger()
    312 #protected ~errorLogger()</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2093</x><y>1064</y><w>364</w><h>35</h></coordinates><panel_attributes>KeyCompare
     312#protected ~errorLogger()</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>2093</x><y>980</y><w>364</w><h>35</h></coordinates><panel_attributes>KeyCompare
    313313--
    314314--
    315315#operator() (const KeySet SubgraphA, const KeySet SubgraphB) const: bool
    316 </panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1169</x><y>1218</y><w>147</w><h>105</h></coordinates><panel_attributes>UniqueFragments
     316</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1169</x><y>1134</y><w>147</w><h>105</h></coordinates><panel_attributes>UniqueFragments
    317317--
    318318ANOVAOrder: int
     
    322322ShortestPathList: int *
    323323UsedList: bool **
    324 BondsPerSPCount: int *</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>490</x><y>1253</y><w>692</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>679;21;21;21</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1120</x><y>980</y><w>251</w><h>307</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>49;294;21;294;21;224;238;224;238;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>840</x><y>1127</y><w>245</w><h>28</h></coordinates><panel_attributes>Graph
     324BondsPerSPCount: int *</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>490</x><y>1169</y><w>692</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>679;21;21;21</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1120</x><y>896</y><w>251</w><h>307</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>49;294;21;294;21;224;238;224;238;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>840</x><y>1043</y><w>245</w><h>28</h></coordinates><panel_attributes>Graph
    325325{map &lt;KeySet, NumberValuePair, KeyCompare&gt;}
    326 </panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>861</x><y>1134</y><w>321</w><h>153</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>308;140;21;140;21;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>945</x><y>1190</y><w>56</w><h>28</h></coordinates><panel_attributes>KeySet
    327 {set&lt;int&gt;}</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>945</x><y>1197</y><w>237</w><h>90</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>224;77;21;77;21;21</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1085</x><y>1057</y><w>99</w><h>230</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
    328 0...N X 0...N</panel_attributes><additional_attributes>84;217;56;217;56;112;21;112;21;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1736</x><y>2282</y><w>147</w><h>42</h></coordinates><panel_attributes>LSQ_params
     326</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>861</x><y>1050</y><w>321</w><h>153</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>308;140;21;140;21;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>945</x><y>1106</y><w>56</w><h>28</h></coordinates><panel_attributes>KeySet
     327{set&lt;int&gt;}</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>945</x><y>1113</y><w>237</w><h>90</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>224;77;21;77;21;21</additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1085</x><y>973</y><w>99</w><h>230</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-
     3280...N X 0...N</panel_attributes><additional_attributes>84;217;56;217;56;112;21;112;21;21</additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1736</x><y>2198</y><w>147</w><h>42</h></coordinates><panel_attributes>LSQ_params
    329329--
    330330vectors: const Vector **
    331331num: int
    332 </panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1043</x><y>266</y><w>147</w><h>35</h></coordinates><panel_attributes>lsq_params
    333 --
    334 x: gsl_vector *</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1169</x><y>266</y><w>118</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>21;21;105;21</additional_attributes></element></umlet_diagram>
     332</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Class</type><coordinates><x>1043</x><y>182</y><w>147</w><h>35</h></coordinates><panel_attributes>lsq_params
     333--
     334x: gsl_vector *</panel_attributes><additional_attributes></additional_attributes></element><element><type>com.umlet.element.base.Relation</type><coordinates><x>1169</x><y>182</y><w>118</w><h>34</h></coordinates><panel_attributes>lt=&lt;&lt;&lt;&lt;-</panel_attributes><additional_attributes>21;21;105;21</additional_attributes></element></umlet_diagram>
  • src/Actions/Action.hpp

    r2ededc2 rb8d1aeb  
    2929  virtual void undo()=0;
    3030  virtual bool canUndo()=0;
     31  //virtual bool shouldUndo()=0;
    3132
    3233  virtual const std::string getName();
  • src/Makefile.am

    r2ededc2 rb8d1aeb  
    88ANALYSISHEADER = analysis_bonds.hpp analysis_correlation.hpp
    99
    10 ACTIONSSOURCE = Actions/Action.cpp Actions/MethodAction.cpp Actions/ActionSequence.cpp Actions/MakroAction.cpp Actions/ErrorAction.cpp Actions/ActionRegistry.cpp
    11 ACTIONSHEADER = Actions/Action.hpp Actions/MethodAction.hpp Actions/ActionSequence.hpp Actions/MakroAction.hpp Actions/ErrorAction.hpp Actions/ActionRegistry.hpp
     10ACTIONSSOURCE = Actions/Action.cpp Actions/MethodAction.cpp Actions/ActionSequence.cpp Actions/MakroAction.cpp Actions/ErrorAction.cpp Actions/small_actions.cpp Actions/ActionRegistry.cpp
     11ACTIONSHEADER = Actions/Action.hpp Actions/MethodAction.hpp Actions/ActionSequence.hpp Actions/MakroAction.hpp Actions/ErrorAction.hpp Actions/small_actions.hpp Actions/ActionRegistry.hpp
     12
     13PATTERNSOURCE = Patterns/Observer.cpp
     14PATTERNHEADER = Patterns/Observer.hpp
    1215
    1316VIEWSOURCE = Views/View.cpp Views/StringView.cpp Views/MethodStringView.cpp Views/StreamStringView.cpp
     
    1720MENUHEADER = Menu/Menu.hpp Menu/TextMenu.hpp Menu/MenuItem.hpp Menu/SubMenuItem.hpp Menu/ActionMenuItem.hpp Menu/SeperatorItem.hpp Menu/DisplayMenuItem.hpp
    1821
    19 UISOURCE = ${ACTIONSSOURCE} ${VIEWSOURCE} ${MENUSOURCE} UIElements/UIFactory.cpp UIElements/TextUIFactory.cpp UIElements/MainWindow.cpp UIElements/TextWindow.cpp UIElements/Dialog.cpp UIElements/TextDialog.cpp
    20 UIHEADER = ${ACTIONSHEADER} ${VIEWHEADER} ${MENUHEADER} UIElements/UIFactory.hpp UIElements/TextUIFactory.hpp UIElements/MainWindow.hpp UIElements/TextWindow.hpp UIElements/Dialog.hpp UIElements/TextDialog.hpp
     22UISOURCE = ${ACTIONSSOURCE} ${VIEWSOURCE} ${MENUSOURCE} UIElements/TextUIFactory.cpp UIElements/MainWindow.cpp UIElements/TextWindow.cpp UIElements/Dialog.cpp UIElements/TextDialog.cpp
     23UIHEADER = ${ACTIONSHEADER} ${VIEWHEADER} ${MENUHEADER} UIElements/TextUIFactory.hpp UIElements/MainWindow.hpp UIElements/TextWindow.hpp UIElements/Dialog.hpp UIElements/TextDialog.hpp
    2124
    22 SOURCE = ${ANALYSISSOURCE} ${ATOMSOURCE} ${UISOURCE} bond.cpp bondgraph.cpp boundary.cpp config.cpp element.cpp ellipsoid.cpp errorlogger.cpp graph.cpp helpers.cpp info.cpp leastsquaremin.cpp linkedcell.cpp log.cpp logger.cpp memoryusageobserver.cpp moleculelist.cpp molecule.cpp molecule_dynamics.cpp molecule_fragmentation.cpp molecule_geometry.cpp molecule_graph.cpp molecule_pointcloud.cpp parser.cpp periodentafel.cpp tesselation.cpp tesselationhelpers.cpp vector.cpp verbose.cpp menu.cpp
    23 HEADER = ${ANALYSISHEADER} ${ATOMHEADER} ${UIHEADER} bond.hpp bondgraph.hpp boundary.hpp config.hpp defs.hpp element.hpp ellipsoid.hpp errorlogger.hpp graph.hpp helpers.hpp info.hpp leastsquaremin.hpp linkedcell.hpp lists.hpp log.hpp logger.hpp memoryallocator.hpp memoryusageobserver.hpp molecule.hpp molecule_template.hpp parser.hpp periodentafel.hpp stackclass.hpp tesselation.hpp tesselationhelpers.hpp vector.hpp verbose.hpp menu.hpp
     25FACTORYSOURCE = UIElements/UIFactory.cpp
     26FACTORYHEADER = UIElements/UIFactory.hpp
     27
     28QTUIMOC_HEADER = UIElements/QT4/QTMainWindow.hpp UIElements/QT4/QTDialog.hpp Menu/QT4/QTMenu.hpp  Views/QT4/QTMoleculesView.hpp Views/QT4/GLMoleculeView.hpp
     29QTUIMOC_TARGETS = QTMainWindow.moc.cpp QTMenu.moc.cpp QTDialog.moc.cpp QTMoleculesView.moc.cpp GLMoleculeView.moc.cpp
     30
     31QTUISOURCE = ${QTUIMOC_TARGETS} UIElements/QT4/QTMainWindow.cpp UIElements/QT4/QTDialog.cpp UIElements/QT4/QTUIFactory.cpp Menu/QT4/QTMenu.cpp Views/QT4/QTMoleculesView.cpp Views/QT4/GLMoleculeView.cpp
     32QTUIHEADER = ${QTUIMOC_HEADER} UIElements/QT4/QTUIFactory.hpp
     33
     34QTUI_DEFS =
     35
     36SOURCE = ${ANALYSISSOURCE} ${ATOMSOURCE} ${PATTERNSOURCE} bond.cpp bondgraph.cpp boundary.cpp config.cpp element.cpp ellipsoid.cpp errorlogger.cpp graph.cpp helpers.cpp info.cpp leastsquaremin.cpp linkedcell.cpp log.cpp logger.cpp memoryusageobserver.cpp moleculelist.cpp molecule.cpp molecule_dynamics.cpp molecule_fragmentation.cpp molecule_geometry.cpp molecule_graph.cpp molecule_pointcloud.cpp parser.cpp periodentafel.cpp tesselation.cpp tesselationhelpers.cpp vector.cpp verbose.cpp
     37HEADER = ${ANALYSISHEADER} ${ATOMHEADER} ${PATTERNHEADER} bond.hpp bondgraph.hpp boundary.hpp config.hpp defs.hpp element.hpp ellipsoid.hpp errorlogger.hpp graph.hpp helpers.hpp info.hpp leastsquaremin.hpp linkedcell.hpp lists.hpp log.hpp logger.hpp memoryallocator.hpp memoryusageobserver.hpp molecule.hpp molecule_template.hpp parser.hpp periodentafel.hpp stackclass.hpp tesselation.hpp tesselationhelpers.hpp vector.hpp verbose.hpp
    2438
    2539BOOST_LIB = $(BOOST_LDFLAGS) $(BOOST_MPL_LIB)
    2640INCLUDES = -I$(top_srcdir)/src/unittests
    2741
    28 noinst_LIBRARIES = libmolecuilder.a libgslwrapper.a
    29 bin_PROGRAMS = molecuilder joiner analyzer
     42noinst_LIBRARIES = libmolecuilder.a libgslwrapper.a libmenu.a
     43bin_PROGRAMS = molecuilder molecuildergui joiner analyzer
    3044molecuilderdir = ${bindir}
    3145libmolecuilder_a_SOURCES = ${SOURCE} ${HEADER}
     46libmenu_a_SOURCES = ${UISOURCE} ${UIHEADER}
    3247libgslwrapper_a_SOURCES = ${LINALGSOURCE} ${LINALGHEADER}
    3348molecuilder_DATA = elements.db valence.db orbitals.db Hbonddistance.db Hbondangle.db
    3449molecuilder_LDFLAGS = $(BOOST_LIB)
    35 molecuilder_SOURCES = builder.cpp
    36 molecuilder_LDADD = libmolecuilder.a libgslwrapper.a
     50molecuilder_SOURCES = ${FACTORYSOURCE} menu.cpp builder.cpp
     51molecuilder_SOURCES += $(srcdir)/version.c
     52molecuilder_LDADD = libmolecuilder.a libgslwrapper.a libmenu.a
     53#Stuff for building the GUI using QT
     54molecuildergui_SOURCES = ${QTUISOURCE} ${FACTORYSOURCE} menu.cpp builder.cpp
     55molecuildergui_SOURCES += $(srcdir)/version.c
     56molecuildergui_CXXFLAGS = ${QT_CXXFLAGS} ${GLU_CXXFLAGS} -DUSE_GUI_QT
     57molecuildergui_LDFLAGS = $(BOOST_LIB) ${QT_LDFLAGS} ${GLU_LDFLAGS}
     58molecuildergui_LDADD = libmolecuilder.a libgslwrapper.a libmenu.a ${QT_LDADD} ${QT_LIB_GUI} -lQtOpenGL ${GLU_LIBS}
    3759joiner_SOURCES = joiner.cpp datacreator.cpp parser.cpp datacreator.hpp helpers.hpp parser.hpp periodentafel.hpp
    3860joiner_LDADD = libmolecuilder.a
     
    4062analyzer_LDADD = libmolecuilder.a
    4163
     64#Rules needed for QT4
     65# UI-Files are scattered throughout several subdirectories
     66# Therfore `%'-rules do not seem to work
     67#Quick fix to get it done otherwise
     68${QTUIMOC_TARGETS}: ${QTUIMOC_HEADER}
     69        list='$(QTUIMOC_HEADER)'; for header in $$list; do \
     70        echo "Making mocfile for $$header"; \
     71        target=`basename $$header | sed "s/\(.*\)\..*/\1.moc.cpp/"`;\
     72        $(MOC) $(srcdir)/$$header -o $$target \
     73        || eval $$failcom; \
     74        done;
     75
     76MOSTLYCLEANFILES = ${QTUIMOC_TARGETS}
     77       
    4278#EXTRA_DIST = ${molecuilder_DATA}
    4379
     
    5692        echo "const char *ESPACKVersion = \"$(PACKAGE_NAME) -- git version: "`cat $(srcdir)/.git-version`"\";" > $@
    5793
    58 molecuilder_SOURCES += $(srcdir)/version.c
     94
  • src/UIElements/Dialog.cpp

    r2ededc2 rb8d1aeb  
    3131
    3232bool Dialog::display(){
     33  if(checkAll()){
     34    setAll();
     35    return true;
     36  }
     37  else{
     38    return false;
     39  }
     40}
     41
     42bool Dialog::checkAll(){
    3343  list<Query*>::iterator iter;
    3444  bool retval = true;
     
    3949      break;
    4050  }
    41   if (retval){
    42     // if all queries succeeded we can set the targets to appropriate values
    43     for(iter=queries.begin(); iter!=queries.end(); iter++) {
    44       (*iter)->setResult();
    45     }
     51  return retval;
     52}
     53
     54void Dialog::setAll(){
     55  list<Query*>::iterator iter;
     56  for(iter=queries.begin(); iter!=queries.end(); iter++) {
     57    (*iter)->setResult();
    4658  }
    47   return retval;
    4859}
    4960
     
    7687
    7788Dialog::StringQuery::StringQuery(string title,string *_target) :
    78     Query(title), target(_target)
     89    Query(title),
     90    target(_target),
     91    tmp("")
    7992{}
    8093
  • src/UIElements/Dialog.hpp

    r2ededc2 rb8d1aeb  
    2929
    3030  virtual bool display();
     31
     32  virtual bool checkAll();
     33  virtual void setAll();
    3134
    3235protected:
  • src/UIElements/TextDialog.cpp

    r2ededc2 rb8d1aeb  
    114114bool TextDialog::VectorTextQuery::handle() {
    115115 tmp->AskPosition(cellSize,check);
     116 return true;
    116117}
  • src/UIElements/TextUIFactory.hpp

    r2ededc2 rb8d1aeb  
    1313class TextUIFactory : public UIFactory
    1414{
    15 friend class UIFactory;
     15  friend class UIFactory;
    1616
    1717public:
  • src/UIElements/UIFactory.cpp

    r2ededc2 rb8d1aeb  
    1212// all factories that can be used:
    1313#include "UIElements/TextUIFactory.hpp"
     14#ifdef USE_GUI_QT
     15#include "UIElements/QT4/QTUIFactory.hpp"
     16#endif
    1417
    1518UIFactory *UIFactory::theFactory = 0;
     
    3235      theFactory = new TextUIFactory();
    3336      break;
    34 
     37#ifdef USE_GUI_QT
     38    case QT4 :
     39      theFactory = new QTUIFactory();
     40      break;
     41#endif
    3542    default:
    3643      assert(0 && "No such Factory in stock");
  • src/UIElements/UIFactory.hpp

    r2ededc2 rb8d1aeb  
    2222
    2323public:
    24   enum InterfaceTypes {Text};
     24  enum InterfaceTypes {
     25    Text,
     26#ifdef USE_GUI_QT
     27    QT4
     28#endif
     29};
    2530  virtual ~UIFactory();
    2631
  • src/builder.cpp

    r2ededc2 rb8d1aeb  
    7575#include "Actions/ActionRegistry.hpp"
    7676#include "Actions/MethodAction.hpp"
     77#include "Actions/small_actions.hpp"
    7778#include "version.h"
    7879
     
    450451  mol->Mirror((const Vector *)&n);
    451452};
     453>>>>>>> MenuRefactoring:molecuilder/src/builder.cpp
    452454
    453455/** Submenu for removing the atoms from the molecule.
     
    21172119  new ActionMenuItem('l',"load molecule from xyz file",editMoleculesMenu,loadMoleculeAction);
    21182120
    2119   Action *changeFilenameAction = new MethodAction("changeFilenameAction",boost::bind(&MoleculeListClass::changeName,molecules));
     2121  Action *changeFilenameAction = new ChangeMoleculeNameAction(molecules);
    21202122  new ActionMenuItem('n',"change molecule's name",editMoleculesMenu,changeFilenameAction);
    21212123
     
    21282130  Action *eraseMoleculeAction = new MethodAction("eraseMoleculeAction",boost::bind(&MoleculeListClass::eraseMolecule,molecules));
    21292131  new ActionMenuItem('r',"remove a molecule",editMoleculesMenu,eraseMoleculeAction);
     2132
    21302133}
    21312134
     
    21862189      populaters.MakeEditMoleculesMenu = populateEditMoleculesMenu;
    21872190
     2191#ifdef USE_GUI_QT
     2192      UIFactory::makeUserInterface(UIFactory::QT4);
     2193#else
    21882194      UIFactory::makeUserInterface(UIFactory::Text);
     2195#endif
    21892196      MainWindow *mainWindow = UIFactory::get()->makeMainWindow(populaters,molecules, configuration, periode, ConfigFileName);
    21902197      mainWindow->display();
     2198
    21912199      delete mainWindow;
    21922200    }
  • src/defs.hpp

    r2ededc2 rb8d1aeb  
    8181#define STD_SEPERATOR_SPACER '-'
    8282
     83#define MOLECUILDER_NAME "Molecuilder"
     84
    8385#endif /*DEFS_HPP_*/
  • src/molecule.cpp

    r2ededc2 rb8d1aeb  
    6161  delete(start);
    6262};
     63
     64
     65// getter and setter
     66const std::string molecule::getName(){
     67  return std::string(name);
     68}
     69
     70void molecule::setName(const std::string _name){
     71  START_OBSERVER;
     72  strncpy(name,_name.c_str(),MAXSTRINGSIZE);
     73  FINISH_OBSERVER;
     74}
    6375
    6476
  • src/molecule.hpp

    r2ededc2 rb8d1aeb  
    2727#include <vector>
    2828
     29#include <string>
     30
    2931#include "graph.hpp"
    3032#include "stackclass.hpp"
    3133#include "tesselation.hpp"
     34#include "Patterns/Observer.hpp"
    3235
    3336/****************************************** forward declarations *****************************/
     
    8083 * Class incorporates number of types
    8184 */
    82 class molecule : public PointCloud {
     85class molecule : public PointCloud , public Observable {
    8386  public:
    8487    double cell_size[6];//!< cell size
     
    99102    bool ActiveFlag;    //!< in a MoleculeListClass used to discern active from inactive molecules
    100103    Vector Center;      //!< Center of molecule in a global box
     104    int IndexNr;        //!< index of molecule in a MoleculeListClass
    101105    char name[MAXSTRINGSIZE];         //!< arbitrary name
    102     int IndexNr;        //!< index of molecule in a MoleculeListClass
    103 
     106
     107public:
    104108  molecule(const periodentafel * const teil);
    105109  virtual ~molecule();
     110
     111  //getter and setter
     112  const std::string getName();
     113  void setName(const std::string);
    106114
    107115  // re-definition of virtual functions from PointCloud
     
    310318/** A list of \a molecule classes.
    311319 */
    312 class MoleculeListClass {
     320class MoleculeListClass : public Observable {
    313321  public:
    314322    MoleculeList ListOfMolecules; //!< List of the contained molecules
     
    334342  void createNewMolecule(periodentafel *periode);
    335343  void loadFromXYZ(periodentafel *periode);
    336   void changeName();
    337344  void setMoleculeFilename();
    338345  void parseXYZIntoMolecule();
  • src/moleculelist.cpp

    r2ededc2 rb8d1aeb  
    5050void MoleculeListClass::insert(molecule *mol)
    5151{
     52  START_OBSERVER;
    5253  mol->IndexNr = MaxIndex++;
    5354  ListOfMolecules.push_back(mol);
     55  mol->signOn(this);
     56  FINISH_OBSERVER;
    5457};
    5558
     
    889892
    890893void MoleculeListClass::createNewMolecule(periodentafel *periode) {
     894  START_OBSERVER;
    891895  molecule *mol = NULL;
    892896  mol = new molecule(periode);
    893897  insert(mol);
     898  FINISH_OBSERVER;
    894899};
    895900
     
    916921}
    917922
    918 void MoleculeListClass::changeName(){
    919   char filename[MAXSTRINGSIZE];
    920   molecule *mol = NULL;
    921   int nr;
    922   do {
    923     Log() << Verbose(0) << "Enter index of molecule: ";
    924     cin >> nr;
    925     mol = ReturnIndex(nr);
    926   } while (mol == NULL);
    927   Log() << Verbose(0) << "Enter name: ";
    928   cin >> filename;
    929   strcpy(mol->name, filename);
    930 }
    931 
    932923void MoleculeListClass::setMoleculeFilename() {
    933924  char filename[MAXSTRINGSIZE];
  • src/unittests/Makefile.am

    r2ededc2 rb8d1aeb  
    44AM_CXXFLAGS = $(CPPUNIT_CFLAGS)
    55
    6 MENUTESTS = ActionSequenceTest
     6MENUTESTS = ActionSequenceTest
     7
    78
    89TESTS = \
     
    2627  Tesselation_BoundaryTriangleUnitTest \
    2728  Tesselation_InOutsideUnitTest \
    28   VectorUnitTest
     29  VectorUnitTest \
     30  ObserverTest \
     31  ${MENUTESTS}
    2932   
    3033 
    31 check_PROGRAMS = $(TESTS) ${MENUTESTS}
    32 noinst_PROGRAMS = $(TESTS) ${MENUTESTS}
     34check_PROGRAMS = $(TESTS)
     35noinst_PROGRAMS = $(TESTS)
    3336
    3437ActOnAllUnitTest_SOURCES = ../test/ActOnAllTest.hpp ActOnAllUnitTest.cpp ActOnAllUnitTest.hpp
     
    9396
    9497ActionSequenceTest_SOURCES = ActionSequenceTest.cpp ActionSequenceTest.hpp
    95 ActionSequenceTest_LDADD = ../libmolecuilder.a
     98ActionSequenceTest_LDADD = ../libmolecuilder.a ../libmenu.a
     99
     100ObserverTest_SOURCES = ObserverTest.cpp ObserverTest.hpp
     101ObserverTest_LDADD = ../libmolecuilder.a
    96102
    97103#AUTOMAKE_OPTIONS = parallel-tests
  • src/vector.cpp

    r2ededc2 rb8d1aeb  
    2020#include <gsl/gsl_permutation.h>
    2121#include <gsl/gsl_vector.h>
     22
     23#include <cassert>
    2224
    2325/************************************ Functions for class vector ************************************/
     
    666668  CopyVector(src);
    667669  return *this;
     670}
     671
     672double& Vector::operator[](int i){
     673  assert(i<NDIM && "Invalid Vector dimension requested");
     674  return x[i];
    668675}
    669676
  • src/vector.hpp

    r2ededc2 rb8d1aeb  
    8181
    8282  Vector& operator=(const Vector &src);
     83  double& operator[](int i);
    8384
    8485};
Note: See TracChangeset for help on using the changeset viewer.