~ubuntu-branches/ubuntu/trusty/travis/trusty

« back to all changes in this revision

Viewing changes to src/region.h

  • Committer: Package Import Robot
  • Author(s): Daniel Leidert
  • Date: 2014-01-18 20:07:16 UTC
  • mfrom: (1.1.8)
  • Revision ID: package-import@ubuntu.com-20140118200716-whsmcg7fa1eyqecq
Tags: 140117-1
New upstream release.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
/***************************************************************************** 
2
 
    TRAVIS - Trajectory Analyzer and Visualizer 
3
 
    http://www.travis-analyzer.de/ 
4
 
 
5
 
    Copyright (c) 2009-2013 Martin Brehm 
6
 
                  2012-2013 Martin Thomas 
7
 
 
8
 
    This file written by Martin Thomas. 
9
 
 
10
 
    This program is free software: you can redistribute it and/or modify 
11
 
    it under the terms of the GNU General Public License as published by 
12
 
    the Free Software Foundation, either version 3 of the License, or 
13
 
    (at your option) any later version. 
14
 
 
15
 
    This program is distributed in the hope that it will be useful, 
16
 
    but WITHOUT ANY WARRANTY; without even the implied warranty of 
17
 
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
18
 
    GNU General Public License for more details. 
19
 
 
20
 
    You should have received a copy of the GNU General Public License 
21
 
    along with this program.  If not, see <http://www.gnu.org/licenses/>. 
22
 
*****************************************************************************/ 
23
 
 
24
 
#ifndef REGION_H 
25
 
#define REGION_H 
26
 
 
27
 
#include "xobject.h" 
28
 
 
29
 
class CTimeStep; 
30
 
class CxVector3; 
31
 
 
32
 
 
33
 
class CRegion: public CxObject 
34
 
35
 
public: 
36
 
        CRegion(); 
37
 
        ~CRegion(); 
38
 
         
39
 
        unsigned char centerAtomType(int index) const { return _centerAtomTypes[index]; } 
40
 
        unsigned char centerAtomRealType(int index) const { return _centerAtomRealTypes[index]; } 
41
 
        unsigned char centerAtom(int index) const { return _centerAtoms[index]; } 
42
 
         
43
 
        bool isInRegion(const CxVector3 &vector); 
44
 
         
45
 
private: 
46
 
        float _xmin; 
47
 
        float _xmax; 
48
 
        float _ymin; 
49
 
        float _ymax; 
50
 
        float _zmin; 
51
 
        float _zmax; 
52
 
         
53
 
        unsigned char *_centerAtomTypes; 
54
 
        unsigned char *_centerAtomRealTypes; 
55
 
        unsigned char *_centerAtoms; 
56
 
}; 
57
 
 
58
 
 
59
 
bool gatherRegionAnalysis(); 
60
 
void processRegionAnalysis(CTimeStep *ts); 
61
 
void finalizeRegionAnalysis(); 
62
 
 
63
 
#endif 
 
1
/***************************************************************************** 
 
2
    TRAVIS - Trajectory Analyzer and Visualizer 
 
3
    http://www.travis-analyzer.de/ 
 
4
 
 
5
    Copyright (c) 2009-2014 Martin Brehm 
 
6
                  2012-2014 Martin Thomas 
 
7
 
 
8
    This file written by Martin Thomas. 
 
9
 
 
10
    This program is free software: you can redistribute it and/or modify 
 
11
    it under the terms of the GNU General Public License as published by 
 
12
    the Free Software Foundation, either version 3 of the License, or 
 
13
    (at your option) any later version. 
 
14
 
 
15
    This program is distributed in the hope that it will be useful, 
 
16
    but WITHOUT ANY WARRANTY; without even the implied warranty of 
 
17
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the 
 
18
    GNU General Public License for more details. 
 
19
 
 
20
    You should have received a copy of the GNU General Public License 
 
21
    along with this program.  If not, see <http://www.gnu.org/licenses/>. 
 
22
*****************************************************************************/ 
 
23
 
 
24
#ifndef REGION_H 
 
25
#define REGION_H 
 
26
 
 
27
#include "xobject.h" 
 
28
 
 
29
class CTimeStep; 
 
30
class CxVector3; 
 
31
 
 
32
 
 
33
class CRegion: public CxObject 
 
34
 
35
public: 
 
36
        CRegion(); 
 
37
        ~CRegion(); 
 
38
         
 
39
        unsigned char centerAtomType(int index) const { return _centerAtomTypes[index]; } 
 
40
        unsigned char centerAtomRealType(int index) const { return _centerAtomRealTypes[index]; } 
 
41
        unsigned char centerAtom(int index) const { return _centerAtoms[index]; } 
 
42
         
 
43
        bool isInRegion(const CxVector3 &vector); 
 
44
         
 
45
private: 
 
46
        float _xmin; 
 
47
        float _xmax; 
 
48
        float _ymin; 
 
49
        float _ymax; 
 
50
        float _zmin; 
 
51
        float _zmax; 
 
52
         
 
53
        unsigned char *_centerAtomTypes; 
 
54
        unsigned char *_centerAtomRealTypes; 
 
55
        unsigned char *_centerAtoms; 
 
56
}; 
 
57
 
 
58
 
 
59
bool gatherRegionAnalysis(); 
 
60
void processRegionAnalysis(CTimeStep *ts); 
 
61
void finalizeRegionAnalysis(); 
 
62
 
 
63
#endif