Revision a2e6a2b1dd1da48e502fc25126aa9b8a139ed543 authored by GUANGMING ZANG on 13 August 2018, 08:44:48 UTC, committed by GitHub on 13 August 2018, 08:44:48 UTC
1 parent 80d039c
CoherentVolume.h
#ifndef __CoherentVolume_h
#define __CoherentVolume_h
#include "MyStandardIncludes.h"
class VolumeData;
class CoherentVolume
{
public:
class BlockArray;
//CoherentVolume();
CoherentVolume(int x, int y, int z);
virtual ~CoherentVolume();
virtual void Initialize();
void SetBlockSize(const int bs[3])
{
m_BlockSize[0]=bs[0];
m_BlockSize[1]=bs[1];
m_BlockSize[2]=bs[2];
}
void GetBlcokSize(int bs[3])
{
bs[0]=m_BlockSize[0];
bs[1]=m_BlockSize[1];
bs[2]=m_BlockSize[2];
}
void SetDimensions(const int dims[3])
{
m_Dimensions[0] = dims[0];
m_Dimensions[1] = dims[1];
m_Dimensions[2] = dims[2];
m_BlockNum[0]= (m_Dimensions[0]-1)/m_BlockSize[0]+1;
m_BlockNum[1]= (m_Dimensions[1]-1)/m_BlockSize[1]+1;
m_BlockNum[2]= (m_Dimensions[2]-1)/m_BlockSize[2]+1;
}
void GetDimensions(int dims[3]) const
{
dims[0] = m_Dimensions[0];
dims[1] = m_Dimensions[1];
dims[2] = m_Dimensions[2];
}
void SetSpacings(const float s[3])
{
m_Spacings[0] = s[0];
m_Spacings[1] = s[1];
m_Spacings[2] = s[2];
}
void GetSpacings(float s[3]) const
{
s[0] = m_Spacings[0];
s[1] = m_Spacings[1];
s[2] = m_Spacings[2];
}
void GetBlockNum(int bn[3])
{
bn[0]=m_BlockNum[0];
bn[1]=m_BlockNum[1];
bn[2]=m_BlockNum[2];
}
//DataType GetDataType() const;
//void SetDataType(DataType type);
void AllocateBlocks();
void SetBlockSlice(void *sliceData,int sliceID,int dimz=-1);
void SetData(float *data);
//void SetData(VolumeData *vol);
float GetValue(int x,int y,int z);
void GetMinMaxValue(double &minValue,double &maxValue);
private:
BlockArray *m_BlockArray;
int m_BlockSize[3];
int m_Dimensions[3];
float m_Spacings[3];
int m_BlockNum[3];
//DataType m_DataType;
};
#endif

Computing file changes ...