ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/OpenMD/branches/development/src/utils/ElementsTable.cpp
(Generate patch)

Comparing:
trunk/src/utils/ElementsTable.cpp (file contents), Revision 1293 by chuckv, Sun Sep 14 01:32:26 2008 UTC vs.
branches/development/src/utils/ElementsTable.cpp (file contents), Revision 1808 by gezelter, Mon Oct 22 20:42:10 2012 UTC

# Line 1 | Line 1 | This basic Periodic Table class was originally taken f
1   /**********************************************************************
2  
3   This basic Periodic Table class was originally taken from the data.cpp
4 < file in OpenBabel. The code has been modified to match the OOPSE coding style.
4 > file in OpenBabel. The code has been modified to match the OpenMD coding style.
5  
6   We have retained the OpenBabel copyright and GPL license on this class:  
7  
# Line 25 | Line 25 | GNU General Public License for more details.
25   * @file ElementsTable.cpp
26   * @author gezelter
27   * @date 12/21/2007
28 * @time 11:30am
28   * @version 1.0
29   */
30  
32 #include <iostream>
31   #include "config.h"
32 +
33 + #include <iostream>
34   #include <cstdlib>
35   #include <string>
36   #include <fstream>
37   #include <cstdlib>
38   #include "utils/ElementsTable.hpp"
39   #include "utils/simError.h"
40 < #include "io/basic_ifstrstream.hpp"
40 > #include "io/ifstrstream.hpp"
41  
42 < #if !HAVE_STRNCASECMP
43 < extern "C" int strncasecmp(const char *s1, const char *s2, size_t n);
42 > #ifdef _MSC_VER
43 > #define strncasecmp _strnicmp
44 > #define strcasecmp _stricmp
45   #endif
46  
47 +
48   #ifdef WIN32
49   #define FILE_SEP_CHAR "\\"
50   #else
# Line 53 | Line 55 | extern "C" int strncasecmp(const char *s1, const char
55   #define BUFF_SIZE 32768
56   #endif
57  
58 < namespace oopse {
58 > namespace OpenMD {
59  
60    ElementsTable etab;
61  
62    ElementsTable::ElementsTable() {
63      init_ = false;
64 <    STR_DEFINE(dir_, FRC_PATH );
64 >    dir_ = std::string("TO_STRING(FRC_PATH)");
65      envvar_ = "FORCE_PARAM_PATH";
66      filename_ = "element.txt";
67    }
# Line 78 | Line 80 | namespace oopse {
80      RealType red, green, blue;
81  
82      // skip comment line (at the top)
81    
83      if (line[0] != '#')  {
84        sscanf(line,"%d %5s %lf %*f %lf %d %lf %lf %lf %lf %lf %lf %lf %255s",
85               &num,
# Line 110 | Line 111 | namespace oopse {
111      return elements_.size();
112    }
113  
114 <  char *ElementsTable::GetSymbol(int atomicnum) {
114 >  const char *ElementsTable::GetSymbol(int atomicnum) {
115      if (!init_)
116        Init();
117      
# Line 295 | Line 296 | namespace oopse {
296        buffer = getenv(envvar_.c_str());
297        buffer += FILE_SEP_CHAR;
298        
299 +
300 +
301 +
302        if (!subdir_.empty()) {
303          subbuffer = buffer;
304          subbuffer += subdir_;
305          subbuffer += FILE_SEP_CHAR;
306        }
307        
308 +
309 +      
310        buffer += filename_;
311        subbuffer += filename_;
312 +
313        
314        ifs1.open(subbuffer.c_str());
315        ifsP= &ifs1;
316 <      if (!(*ifsP)) {
316 >      if (!(ifsP->is_open())) {
317          ifs2.open(buffer.c_str());
318          ifsP = &ifs2;
319        }
320 +      
321      } else {
322        sprintf( painCave.errMsg,
323                 "ElementsTable error.\n"
# Line 322 | Line 330 | namespace oopse {
330      if ((*ifsP)) {
331        while(ifsP->getline(charBuffer,BUFF_SIZE))
332          ParseLine(charBuffer);
333 <      
333 >
334        if (ifs1)
335          ifs1.close();
336        if (ifs2)

Comparing:
trunk/src/utils/ElementsTable.cpp (property svn:keywords), Revision 1293 by chuckv, Sun Sep 14 01:32:26 2008 UTC vs.
branches/development/src/utils/ElementsTable.cpp (property svn:keywords), Revision 1808 by gezelter, Mon Oct 22 20:42:10 2012 UTC

# Line 0 | Line 1
1 + Author Id Revision Date

Diff Legend

Removed lines
+ Added lines
< Changed lines
> Changed lines