00001 // 00002 // C++ Interface: DataChannel 00003 // 00004 // Description: 00005 // 00006 // 00007 // Author: <martin@miles>, (C) 2004 00008 // 00009 // Copyright: See COPYING file that comes with this distribution 00010 // 00011 // 00012 #ifndef __DATA_CHANNEL_H__ 00013 #define __DATA_CHANNEL_H__ 00014 00015 #include <vector> 00016 #include <string> 00017 00018 using namespace std; 00019 00020 class DataChannel { 00021 private: 00022 int m_iNumTimeSteps; 00023 int m_iNumData; 00024 string m_sName; 00025 00026 float* m_pMinValues; 00027 float* m_pMaxValues; 00028 00029 float m_fMinValue; 00030 float m_fMaxValue; 00031 00032 float** m_pTimeSteps; 00033 public: 00034 DataChannel(); 00035 ~DataChannel(); 00036 void SetName(string& sName); 00037 void GetName(string& sName); 00038 void SetDim(int iNumTimeSteps, int iNumData); 00039 void SetData(int iTimeStep, float* pData); 00040 float* GetData(int iTimeStep); 00041 float GetMinValue(int iTimeStep); 00042 float GetMaxValue(int iTimeStep); 00043 00044 // min/max for all time steps 00045 float GetMinValue(); 00046 float GetMaxValue(); 00047 }; 00048 00049 00050 #endif // __DATA_CHANNEL_H__