source: trunk/packages/vizservers/nanovis/VolumeInterpolator.h @ 2831

Last change on this file since 2831 was 2798, checked in by ldelgass, 12 years ago

Add emacs mode magic line in preparation for indentation cleanup

  • Property svn:eol-style set to native
File size: 1.3 KB
Line 
1/* -*- mode: c++; c-basic-offset: 4; indent-tabs-mode: nil -*- */
2#ifndef __VOLUME_INTERPOLATOR_H__
3#define __VOLUME_INTERPOLATOR_H__
4
5#include "Volume.h"
6
7#include <vector>
8
9class VolumeInterpolator {
10    Volume* _volume;
11
12    std::vector<Volume*> _volumes;
13
14    double _interval;
15    bool _started;
16    unsigned int _numBytes;
17    unsigned int _dataCount;
18    unsigned int _n_components;
19    unsigned int _referenceOfVolume;
20    double _start_time;
21
22public :
23    VolumeInterpolator();
24    void addVolume(Volume* vol);
25    void clearAll();
26   
27    void start();
28    Volume* update(float fraction);
29    void stop();
30    void computeKeys(float fraction, int count, float* interp, int* key1, int* key2);
31    bool is_started() const;
32    double getInterval() const;
33    double getStartTime() const;
34    unsigned int getReferenceVolumeID() const;
35    Volume* getVolume();
36};
37
38inline bool VolumeInterpolator::is_started() const
39{
40    return _started;
41}
42
43inline double VolumeInterpolator::getStartTime() const
44{
45    return _start_time;
46}
47
48inline double VolumeInterpolator::getInterval() const
49{
50    return _interval;
51}
52
53inline unsigned int VolumeInterpolator::getReferenceVolumeID() const
54{
55    return _referenceOfVolume;
56}
57
58//inline Volume* VolumeInterpolator::getVolume()
59//{
60//    return _volume;
61//    //return _volumes[0];
62//}
63#endif
64
Note: See TracBrowser for help on using the repository browser.