You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

78 lines
11 KiB
C++

#pragma once
// STL
#include <string>
#include <variant>
//
#include "DllDefines.h"
// ISGManager.h : header file
//
/////////////////////////////////////////////////////////////////////////////
// CSGManager document
/*************************************************************************************/
class ISGManagerObserver;
class SECSGEM_DLL ISGManager
{
public:
virtual ~ISGManager()
{
}
virtual bool AcknowledgeRemoteCommand(const std::string& sRmtCmd, int iReturnVal) = 0;
virtual bool AddRecipe(const std::string& strName, bool bRefreshRecipe = false) = 0;
virtual bool ClearAllAlarms() = 0;
virtual bool CloseSecsGemApplication() = 0;
virtual bool DeleteAllRecipe(bool bRefreshRecipe = false) = 0;
virtual bool DeleteRecipe(const std::string& strName) = 0;
virtual bool ConnectSocketSecsGem(bool bUpdateParameter = true) = 0;
virtual void DisableEventForAllMode() = 0;
virtual bool DisconnectSocketSecsGem() = 0;
virtual bool DisplayTerminalMsgDialog() = 0;
virtual bool DownloadData(const std::string& strName) = 0;
virtual bool DownloadRecipe(const std::string& strName) = 0;
virtual bool DownloadStripMap(const std::string& strName) = 0;
virtual bool DownloadWaferMap(const std::string& sWMapID, int nType = 2, int nFormat = 1, int nFNLoc = 0, int nRotAngle = 0, int nOrgLoc = 0, const std::string& strBinCodeEq = "", const std::string& strNullBinCodeEq = "") = 0;
virtual bool EditRecipe(const std::string& strName) = 0;
virtual void EnableEventForAllMode() = 0;
virtual std::string GetLinkState() = 0;
virtual bool GoLocal() = 0;
virtual bool GoOffline() = 0;
virtual bool GoOnLine() = 0;
virtual bool GoRemote() = 0;
virtual bool IsConnectWithSecsGem() = 0;
virtual bool IsEnableCommunicating() = 0;
virtual bool IsOnlineLocal() = 0;
virtual bool IsOnlineRemote() = 0;
virtual bool IsSpoolActive() = 0;
virtual bool ResetData() = 0;
virtual bool SecsGemDisableLink() = 0;
virtual bool SecsGemEnableLink() = 0;
virtual bool SendAlarmOff(UINT iAlarmID, const std::string& sAlarmText) = 0;
virtual bool SendAlarmOn(UINT iAlarmID, const std::string& sAlarmText) = 0;
virtual void SetEnableLogFile(bool bEnable = true) = 0;
virtual bool SendEPTData(int nModuleID, const std::string& strTaskName, int nTaskType, int nEPTState, int nBlockedReson, const std::string& strBlockedReasonText) = 0;
virtual bool SendEvent(const std::string& strEventName) = 0;
virtual bool SendRecipeVerification(const std::string& strResultData) = 0;
virtual void SetLogLevel(const std::string& level) = 0;
virtual bool SetMainMode(const std::string& sMode) = 0;
virtual bool SetProcessState(const std::string& sProcessState) = 0;
virtual void SetSecsGemDataFileFolder(const std::string& strSGDataFileFolder) = 0;
virtual bool SetSecsGemIpAddressAndPort(ISGManagerObserver* pObserver, int iPort, const std::string& strIpAddress, bool bConnect = false, bool bUpdateParameter = true) = 0;
virtual bool SetUserLevel(const std::string& sUserLevel) = 0;
virtual bool SetVariableValue(const std::string& strVariableName, const std::variant<int, long, double, std::string>& value) = 0;
virtual bool StartSecsGemApplication() = 0;
virtual bool UpdateRecipeList() = 0;
virtual bool UploadData(const std::string& strName) = 0;
virtual bool UploadRecipe(const std::string& strName) = 0;
virtual bool UploadWaferMap(const std::string& strName) = 0;
virtual bool SendMsgToSecsGem(const std::string& strStr) = 0;
virtual void SetWinHandler(HWND hHandler) = 0;
virtual void NotifyHandlerToConnect() = 0;
};