1 #ifndef __CMARACASCONTROLLER_H_
2 #define __CMARACASCONTROLLER_H_
4 // The following ifdef block is the standard way of creating macros which make exporting
5 // from a DLL simpler. All files within this DLL are compiled with the MaracasWin32Lib_EXPORTS
6 // symbol defined on the command line. this symbol should not be defined on any project
7 // that uses this DLL. This way any other project whose source files include this file see
8 // MARACASDLL_API functions as being imported from a DLL, wheras this DLL sees symbols
9 // defined with this macro as being exported.
10 #ifdef MaracasWin32Lib_EXPORTS
11 #define MARACASDLL_API __declspec(dllexport)
13 #define MARACASDLL_API __declspec(dllimport)
16 // This class is exported from the MaracasWin32Lib.dll
17 class MARACASDLL_API CMaracasController {
19 CMaracasController(void);
21 ~CMaracasController();
25 int ShowApp(int nCmdShow);
29 void GetSnapshot( unsigned int& rWidth,
30 unsigned int& rHeight,
31 unsigned char*& rpPixels ) /*const*/ ;
33 /*! \brief Notify the snapshot bitmap has been retrieved
35 int ReleaseSnapshot();
37 /*! \brief Notify the resampled image has been retrieved
39 int OutputVolumeRetrieved();
41 void SetVolumeParams(int nX, int nY, int nSlices);
43 void SetSliceParams(float pixelSpacingColumn,
44 float pixelSpacingRow,
45 float pixelSpacingSlice,
47 float RescaleIntercept);
49 void SetSlicePixels(int numSlice,unsigned short * pixels);
52 wxMaracasApp *m_pMarApp;
53 unsigned char *_rpPixels; //Snapshot
55 unsigned short *m_pSlicesPixels;
59 float m_PixelSpacingColumn;
60 float m_PixelSpacingRow;
61 float m_PixelSpacingSlice;
63 float m_RescaleIntercept;
67 #endif // __CMARACASCONTROLLER_H_