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.

35 lines
1.7 KiB
C++

#pragma once
#include <string>
#include <vector>
#include "DllDefines.h"
class IODLLCLASS CHardwareConfiguration
{
public:
// !!! MUST declare destructor. Else factory design will cause memory leak
virtual ~CHardwareConfiguration() {}
virtual bool GetChannelConfig(int nCardType, int nCardNo, int nNoOfChannel, std::vector<int>& vecChannelArray, int nWhatCard) = 0;
virtual int GetSharing(int nCardType, int nCardNo, int nWhatCard) = 0;
virtual int GetNoOfDifferentCardType(int nWhatCard) = 0;
virtual std::string GetCardName(int nCardTypeNo, int nWhatCard) = 0;
// get the no of card of different card category
virtual int GetNoOfCard(int nCardTypeNo, int nWhatCard) = 0;
// Distributed Motion
virtual int GetNoOfModels(int nCardTypeNo, int nWhatCard) = 0;
virtual std::string GetModelName(int nCardTypeNo, int nModelNo, int nWhatCard) = 0;
virtual int GetModelNoOfCards(int nCardTypeNo, int nModelNo, int nWhatCard) = 0;
virtual int GetAddress(int nCardTypeNo, int nModelNo, int nCardNo, int nWhatCard) = 0;
virtual int GetSpeed(int nCardTypeNo, int nModelNo, int nCardNo, int nWhatCard) = 0;
virtual int GetHSLSpeed(int nCardTypeNo, int nModelNo, int nCardNo, int nWhatCard) = 0;
virtual int GetHSLHubNumber(int nCardTypeNo, int nModelNo, int nCardNo, int nWhatCard) = 0;
// custom
virtual int GetGalilTriggerPulseWidth() = 0;
virtual bool GetGalilNewHomeBySensor() = 0;
};