#pragma once #include //-------------------------------------------------------------------------------------- //@doc CDppShaping // //@module clsShaping_Ctrl Class | Pulse Shaping Control Functions // //This class has the software functionality for Pulse Shaping //control. // // Copyright (c)2004,2010 Amptek, All Rights Reserved // //@devnote The Version Selection Control Functions are for test purposes //only. // //@devnote Version: v20100813_140923 // //@iex //================================================= // //@head3 CDppShaping Members | //@index | CDppShaping // //-------------------------------------------------------------------------------------- #define MAXPEAKINGTIMES 26 #define MAXPEAKINGTIMES_20MHZ (MAXPEAKINGTIMES - 2) #define MAXPEAKINGTIMES_80MHZ MAXPEAKINGTIMES class CDppShaping { private: CComboBox *cboRise; CComboBox *cboTop; int mRise; //risetime register setting int mAvg; //holds decimation setting for pulse shaping int mFlatTop; //flatop register setting public: CDppShaping(void); ~CDppShaping(void); void Shaping_Setup(CComboBox *cboRiseObj, CComboBox *cboTopObj); CString GetRiseValueFromIndex(int RiseIndex, BOOL isRiseAveCalc); CString GetDefaultFlatTopFromRiseIndex(int RiseIndex, double dblFlatTop); double GetDblValFromComboText(CComboBox *m_ComboBoxCtrl); void SetRiseCombo(); void SetTopCombo(); double dblPeakingMult; BOOL b80MHzMode; void Set80MHzMode(BOOL is80Mhz); CString dbl_to_uS(double dblVal); };