EMAN2
volume_data.h
Go to the documentation of this file.
1// Copyright (C) 2005-2008 Washington University in St Louis, Baylor College of Medicine. All rights reserved
2// Author: Sasakthi S. Abeysinghe (sasakthi@gmail.com)
3// Description: Stores information of a density volume
4#include "emdata.h"
5using namespace EMAN;
6
7#ifndef SKELETON_MAKER_VOLUME_DATA_H
8#define SKELETON_MAKER_VOLUME_DATA_H
9
10namespace wustl_mm {
11 namespace SkeletonMaker {
12 class VolumeData {
13 public:
14 //Constructors & Destructor
15 VolumeData(EMData* em); //eman2
16 VolumeData(int sizeX, int sizeY, int sizeZ);
17 VolumeData(int sizeX, int sizeY, int sizeZ, float val);
18 VolumeData(int sizeX, int sizeY, int sizeZ, int offsetX, int offsetY, int offsetZ, VolumeData * data);
19 VolumeData(VolumeData& obj); //eman2
21
22 //Member functions
23 int GetSize(int dimension);
24 int GetSizeX();
25 int GetSizeY();
26 int GetSizeZ();
27 float GetSpacing(int dimension);
28 float GetSpacingX();
29 float GetSpacingY();
30 float GetSpacingZ();
31 float GetOrigin(int dimension);
32 float GetOriginX();
33 float GetOriginY();
34 float GetOriginZ();
35 float GetDataAt(int x, int y, int z);
36 float GetDataAt(int index);
37 int GetIndex(int x, int y, int z);
38 int GetMaxIndex();
39
40 void SetSpacing(float spacingX, float spacingY, float spacingZ);
41 void SetOrigin(float originX, float originY, float originZ);
42 void SetDataAt(int x, int y, int z, float value);
43 void SetDataAt(int index, float value);
44 void Pad(int padBy, double padValue);
45 EMData * get_emdata(); //eman2
46 private:
47 void InitializeVolumeData(int sizeX, int sizeY, int sizeZ, float spacingX, float spacingY, float spacingZ, float originX, float originY, float originZ, bool initializeData, float val);
48 void SetSize(int sizeX, int sizeY, int sizeZ);
49
50 //Member variables
51 public:
52 bool owns_emdata; //eman2
53 private:
54 EMData * emdata; //eman2
55
56 };
57
58
59 }
60}
61
62
63#endif
EMData stores an image's data and defines core image processing routines.
Definition: emdata.h:82
void InitializeVolumeData(int sizeX, int sizeY, int sizeZ, float spacingX, float spacingY, float spacingZ, float originX, float originY, float originZ, bool initializeData, float val)
Definition: volume_data.cpp:49
void SetOrigin(float originX, float originY, float originZ)
void SetSpacing(float spacingX, float spacingY, float spacingZ)
void Pad(int padBy, double padValue)
void SetDataAt(int x, int y, int z, float value)
void SetSize(int sizeX, int sizeY, int sizeZ)
float GetDataAt(int x, int y, int z)
int GetIndex(int x, int y, int z)
E2Exception class.
Definition: aligner.h:40
#define y(i, j)
Definition: projector.cpp:1516
#define x(i)
Definition: projector.cpp:1517