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

Last change on this file since 3502 was 3502, checked in by ldelgass, 6 years ago

Add basic VTK structured points reader to nanovis, update copyright dates.

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