From: wenzel@informatik.hu-berlin.de Date: Thu, 19 Nov 1998 16:08:22 +0100 Hier meine Erkenntnisse zur "motors.cpp" ist vielleicht n bissle wenig und unuebersichtlich, aber ich konnte leider SNIFF noch nicht drauf ansetzen ...Ich hoffe es hilft weiter. -- cu l8er ------- Andreas ---> VoXeL ===> (http://www.informatik.hu-berlin.de/~wenzel) (wenzel@informatik.hu-berlin.de) Wenige wissen, wieviel man wissen muss, um zu wissen, wie wenig man weiss. --------------A3F90AC2186567138FF462B4 Content-Type: text/plain; charset=us-ascii; name="motors.txt" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="motors.txt" Zeilen Modul Aufgaben 208 comhead.h - Standard - Includes glob. Returncodes / Structs / enums 173 m_motcom.h motors, - TMotor, TMList Class Definition 304 m_mothw.h motors, - Dialoge + siehe unten =========================================== =========================================== =========================================== Includes in motors.cpp: Implementation: #include "rc_def.h" - Inhalt: Defines #include "comhead.h" - Inhalt: Includes / Structs / Defines #include "m_motcom.h" "motors.cpp", Inhalt: #include "m_mothw.h" Inhalt: Hardware Ansteuerung #include "m_layer.h" "m_layer.cpp", Inhalt: #include "ieee.h" Inhalt: IEEE488 ?!? ============================================================================= Klassen der einzelnen Header: m_motcom.h Implementation: class __rtti TMotor - motors.cpp class __rtti TMList - motors.cpp m_mothw.h Implementation: class __rtti TDC_Drive : public TMotor - motors.cpp class __rtti TC_812 : public TDC_Drive - motors.cpp class __rtti TC_812ISA : public TC_812 - motors.cpp / m_layer.cpp class __rtti TC_812GPIB : public TC_812 - motors.cpp / m_layer.cpp class __rtti TC_832 : public TDC_Drive - motors.cpp / m_layer.cpp class __rtti TPiezoDrive : public TMotor - no Implementation found class __rtti TBurleigh : public TPiezoDrive - no Implementation found DialogKlassen: class TPosControl : public TModalDlg - motors.cpp class TMotorParam : public TModalDlg - motors.cpp class TCalibrate : public TModalDlg - motors.cpp class TOptimizeDC_832 : public TModalDlg - motors.cpp class TOptimizeDC_812 : public TModalDlg - motors.cpp gefundene Vererbungsstruktur innerhalb der "motors.cpp" Klassen: /****** TMotor ******/ => Implementation in "motors.cpp" class __rtti TMotor class __rtti TDC_Drive : public TMotor class __rtti TC_812 : public TDC_Drive class __rtti TC_812ISA : public TC_812 class __rtti TC_812GPIB : public TC_812 class __rtti TC_832 : public TDC_Drive class __rtti TPiezoDrive : public TMotor - unused class __rtti TBurleigh : public TPiezoDrive - unused /*----- TMotor -----*/ ################################################### ## Methoden der in "motors.cpp" benutzen Klassen ## ################################################### //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*// Methoden Implementationen in "m_layer.cpp": //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*// /****** TC_812ISA : public TC_812 ******/ void TC_812ISA::StartCheckScan(void) /*----- TC_812ISA -----*/ /****** TC_812GPIB : public TC_812 ******/ void TC_812GPIB::StartCheckScan(void) /*----- TC_812GPIB -----*/ /****** TC_832 : public TDC_Drive ******/ void TC_832::StartCheckScan(void) /*----- TC_832 -----*/ //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*// Methoden Implementationen in "motors.cpp": //*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*-*// /****** TMList ******/ TMList::TMList(int maxn,HINSTANCE inst) TMList::~TMList(void) BOOL TMList::InitializeModule(void) TAxisType TMList::ParsingAxis(LPSTR axisname) BOOL TMList::SaveModuleSettings(void) void TMList::SetAngleDefault(void) TMotor* TMList::MP(void) TMotor* TMList::MP(int n) void TMList::SetParametersDlg(void) void TMList::InquireReferencePointDlg(int task) BOOL TMList::SetAxis(int n) void TMList::PositionControlDlg(void) /*----- TMList -----*/ /****** TCalibrate : public TModalDlg ******/ TCalibrate::TCalibrate(int task) : TModalDlg("CalibrateMotors") TCalibrate::~TCalibrate(void) BOOL TCalibrate::Dlg_OnInit(HWND hwnd,HWND hwndCtl,LPARAM) void TCalibrate::Dlg_OnTimer(HWND hwnd,UINT id) void TCalibrate::Dlg_OnCommand(HWND hwnd,int id,HWND hwndCtl,UINT codeNotify) BOOL TCalibrate::CanClose(void) BOOL TCalibrate::LeaveDialog(void) /*----- TCalibrate -----*/ /****** TPosControl : public TModalDlg ******/ BOOL TPosControl::Dlg_OnInit(HWND hwnd,HWND hwndCtl,LPARAM) void TPosControl::Dlg_OnTimer(HWND hwnd,UINT id) void TPosControl::Dlg_OnCommand(HWND hwnd,int id,HWND hwndCtl,UINT codeNotify) BOOL TPosControl::HScrollBar(WPARAM wParam,LPARAM) int TPosControl::GetBarRange(const TMotor *act) int TPosControl::GetBarPos(const TMotor *act) BOOL TPosControl::LeaveDialog(void) /*----- TPosControl -----*/ /****** TMotorParam : public TModalDlg ******/ TMotorParam::TMotorParam(void) : TModalDlg("DriveSettings") void TMotorParam::Dlg_OnCommand(HWND hwnd,int id,HWND hwndCtl,UINT codeNotify) BOOL TMotorParam::LeaveDialog(void) BOOL TMotorParam::CanClose(void) /*----- TMotorParam -----*/ /****** TOptimizeDC_832 : public TModalDlg ******/ TOptimizeDC_832::TOptimizeDC_832(void) : TModalDlg("OptimizeDC_832") BOOL TOptimizeDC_832::Dlg_OnInit(HWND hwnd,HWND hwndCtl,LPARAM) void TOptimizeDC_832::Dlg_OnCommand(HWND hwnd,int id,HWND hwndCtl,UINT codeNotify) BOOL TOptimizeDC_832::CanClose(void) BOOL TOptimizeDC_832::LeaveDialog(void) /*----- TOptimizeDC_832 -----*/ /****** TC_812 : public TDC_Drive ******/ void TC_812::OptimizingDlg(void) TC_812::TC_812(void) : TDC_Drive() int TC_812::SaveSettings(BOOL bLastSave) BOOL TC_812::ActivateFilterParameters(void) BOOL TC_812::Reset(void) BOOL TC_812::SetMoment(float moment) float TC_812::GetMoment(void) BOOL TC_812::SetLine(int number,BOOL status) BOOL TC_812::IsLimitHit(void) BOOL TC_812::IsMoveFinish(void) BOOL TC_812::IsIndexArrived(void) BOOL TC_812::StartToIndex(long &oldPos) BOOL TC_812::ActivateDrive(void) BOOL TC_812::StopDrive(int bOffOn) BOOL TC_812::SetDynamicGain(WORD dygain) WORD TC_812::GetDynamicGain(void) BOOL TC_812::SetTorque(WORD torque) WORD TC_812::GetTorque(void) BOOL TC_812::SetVelocity(DWORD velocity) DWORD TC_812::GetVelocity(void) BOOL TC_812::SetAcceleration(DWORD acceleration) DWORD TC_812::GetAcceleration(void) BOOL TC_812::SetLimit(DWORD limit) BOOL TC_812::SetHome(void) WORD TC_812::GetStatus(void) BOOL TC_812::_GetPosition(long *position) BOOL TC_812::_GetFailure(long *failure) BOOL TC_812::MoveRelative(long pos) BOOL TC_812::MoveAbsolute(long pos) /*----- TC_812 -----*/ /****** TOptimizeDC_812 : public TModalDlg ******/ TOptimizeDC_812::TOptimizeDC_812(void) : TModalDlg("OptimizeDC_812") BOOL TOptimizeDC_812::Dlg_OnInit(HWND hwnd,HWND hwndCtl,LPARAM lParam) void TOptimizeDC_812::Dlg_OnCommand(HWND hwnd,int id,HWND hwndCtl,UINT codeNotify) BOOL TOptimizeDC_812::CanClose(void) BOOL TOptimizeDC_812::LeaveDialog(void) /*----- TOptimizeDC_812 -----*/ /****** TMotor ******/ TMotor::TMotor() TMotor::Initialize(void) //* Element-Funktionen *** BOOL TMotor::SetAngleRange(void) BOOL TMotor::PushSettings(void) BOOL TMotor::PopSettings(TMParameter param) void TMotor::funcd(double arg,double offset,double *f,double *df) int TMotor::rtsave(double offset,double x1,double x2,double xacc,double *ret) BOOL TMotor::Translate(long &pos,double ang) BOOL TMotor::Translate(double&ang,long pos) void TMotor::SetCorrectionState(BOOL onoff) BOOL TMotor::SetHome(void) BOOL TMotor::MoveByPosition(long pos) BOOL TMotor::MoveToPosition(long pos) BOOL TMotor::MoveToAngle(double ang) BOOL TMotor::MoveByAngle(double ang) BOOL TMotor::SetAngleWidth(double dang) BOOL TMotor::GetAngle(BOOL saveyesno) int TMotor::SaveSettings(BOOL LastSave) /*----- TMotor -----*/ /****** TDC_Drive : public TMotor ******/ TDC_Drive::TDC_Drive(void) : TMotor() int TDC_Drive::SaveSettings(BOOL onlythis) int TDC_Drive::Initialize(void) BOOL TDC_Drive::PushSettings(void) BOOL TDC_Drive::PopSettings(void) BOOL TDC_Drive::MoveToPosition(long position) BOOL TDC_Drive::MoveByPosition(long distance) BOOL TDC_Drive::SetSpeed(double speed) double TDC_Drive::GetSpeed(void) BOOL TDC_Drive::GetPosition(BOOL bSave) long TDC_Drive::GetFailure(void) /*----- TDC_Drive -----*/ //############## IEEE Interface ################################################ /****** TC_812GPIB : public TC_812 ******/ TC_812GPIB::TC_812GPIB(void) : TC_812() BOOL TC_812GPIB::CheckBoardOk(void) int TC_812GPIB::ExecuteCmd(char *pString) /*----- TC_812GPIB -----*/ //############### ISA Interface ################################################ /****** TC_812ISA : public TC_812 ******/ TC_812ISA::TC_812ISA(void) : TC_812() BOOL TC_812ISA::CheckBoardOk(void) BOOL TC_812ISA::SetHome(void) BOOL TC_812ISA::IsMoveFinish(void) BOOL TC_812ISA::_GetPosition(long *position) BOOL TC_812ISA::_GetFailure(long *failure) int TC_812ISA::PutChar(const char c) char TC_812ISA::GetChar(void) /*----- TC_812ISA -----*/ //################### Interface ################################################ /****** TC_832 : public TDC_Drive ******/ TC_832::TC_832(void) : TDC_Drive() BOOL TC_832::Reset(void) void TC_832::OptimizingDlg(void) BOOL TC_832:: ActivateFilterParameters(void) int TC_832::SaveSettings(int LastSave) BOOL TC_832::SetHome(void) BOOL TC_832::ActivateDrive(void) BOOL TC_832::StopDrive(int bOffOn) BOOL TC_832::StartLimitWatch(void) BOOL TC_832::StopLimitWatch(void) void CALLBACK TC_832::LimitWatch(UINT /*IDEvent*/,UINT,DWORD /*dwUser*/,DWORD,DWORD) BOOL TC_832::IsLimitHit(void) BOOL TC_832::IsIndexArrived(void) BOOL TC_832::StartToIndex(long &oldPos) BOOL TC_832::SetVelocity(DWORD velocity) DWORD TC_832::GetVelocity(void) BOOL TC_832::SetAcceleration(DWORD acceleration) DWORD TC_832::GetAcceleration(void) BOOL TC_832::SetLimit(DWORD limit) WORD TC_832::GetStatus(void) BOOL TC_832::_GetPosition(long *position) BOOL TC_832::_GetFailure(long *failure) BOOL TC_832::MoveRelative(long position) BOOL TC_832::MoveAbsolute(long pos) BOOL TC_832::IsMoveFinish(void) BOOL TC_832::CheckBoardOk() BOOL TC_832::ExecuteCmd(LPSTR) long TC_832::Drive628(BYTE cmd,WORD ctrl_word,long param) /*----- TC_832 -----*/ ##################################################### ## Klassen unabhaengige Funktionen in "motors.cpp" ## ##################################################### /****** Independend Functions ******/ long Drive628c(BYTE cmd,WORD ctrl_word,long param,WORD base,WORD regaddr) int GetWord(WORD base,WORD regaddr) void PutWord(int data,WORD base,WORD regaddr) void PutDWord(long data,WORD base,WORD regaddr) BOOL LM628Ready(WORD base) /*----- Independend Functions -----*/ --------------A3F90AC2186567138FF462B4--