| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322 |
- using EPInterface.Data;
- using System;
- using System.Collections.Generic;
- using System.ServiceModel;
- using EPInterface.Datas;
- namespace EPInterface
- {
- // [ServiceContract]
- // [ServiceKnownType(typeof(EPDState))]
- // [ServiceKnownType(typeof(CRawDataItem))]
- // [ServiceKnownType(typeof(List<long>))]
- // public interface IEPDService
- //{
- // /// <summary>
- // /// 设置当前model
- // /// </summary>
- // /// <param name="model"></param>
- // [OperationContract]
- // void SetModel(int channel, string name, string model);
- // [OperationContract]
- // int Heartbeat(int counter);
- // [OperationContract]
- // void Online();
- // [OperationContract]
- // void Offline();
- // [OperationContract]
- // bool IsOnline();
- // [OperationContract]
- // void SetOption(string name, string value);
- // [OperationContract]
- // string GetOption(string name);
- // /// <summary>
- // ///RecipeStart
- // /// </summary>
- // /// <param name="recipe"></param>
- // [OperationContract]
- // void RecipeStart(int channel, string name);
- // /// <summary>
- // ///RecipeStart
- // /// </summary>
- // /// <param name="model"></param>
- // [OperationContract]
- // void RecipeStop(int channel);
- // /// <summary>
- // /// Online 模式,开始计算
- // /// </summary>
- // /// <param name="model"></param>
- // [OperationContract]
- // void Start(int channel, int idx, string name, string model);
- // [OperationContract]
- // void StartByConfig(int channel, int idx, string name, EPDConfig config);
- // /// <summary>
- // /// online 模式,停止计算
- // /// </summary>
- // [OperationContract]
- // void Stop(int channel);
- // /// <summary>
- // /// online模式,暂停
- // /// </summary>
- // [OperationContract]
- // void Pause(int channel);
- // [OperationContract]
- // /// <summary>
- // /// online模式,恢复计算
- // /// </summary>
- // void Resume(int channel);
- // /// <summary>
- // /// 获取硬件通道数
- // /// </summary>
- // [OperationContract]
- // int QueryChannels();
- // [OperationContract]
- // List<string> QueryChannelNames();
- // [OperationContract]
- // string QueryChannelName(int channel);
- // [OperationContract]
- // ///
- // /// 获取当前model <name,xml>
- // ///
- // Tuple<string,string> QueryModel(int channel);
- // /// <summary>
- // /// 获取 波长信息,频谱图 X 坐标
- // /// </summary>
- // /// <param name="wave"></param>
- // [OperationContract]
- // double[] QueryWave(int channel);
- // /// <summary>
- // /// 获取当前帧数据
- // /// </summary>
- // /// <param name="data"></param>
- // /// <returns>False,为无数据。
- // /// </returns>
- // [OperationContract]
- // CRawDataItem QueryData(int channel);
- // [OperationContract]
- // ///
- // /// 获取当前State
- // ///
- // EPDState QueryState(int channel);
- // [OperationContract]
- // bool QueryRecordState(int channel);
- // [OperationContract]
- // long QueryRecipeTime(int channel);
- // [OperationContract]
- // List<long> QueryStepTime(int channel);
- // [OperationContract]
- // List<string> QueryConfigList();
- // [OperationContract]
- // string QueryConfig(string name);
- // }
- [ServiceContract]
- [ServiceKnownType(typeof(EPDState))]
- [ServiceKnownType(typeof(RawDataItem))]
- [ServiceKnownType(typeof(CRawDataItem))]
- [ServiceKnownType(typeof(List<long>))]
- public interface IEPDService
- {
- // 设置当前model
- [OperationContract] void SetModel(int channel, string name, string model);
- [OperationContract] int Heartbeat(int counter);
- [OperationContract] void Online();
- [OperationContract] void Offline();
- [OperationContract] void Reset();
- [OperationContract] int IsOnline();
- [OperationContract] void SetOption(string name, string value);
- [OperationContract] string GetOption(string name);
- [OperationContract] string GetData(string name);
- [OperationContract] Dictionary<string, string> GetOptions(List<string> names);
- [OperationContract] bool SetOptions(Dictionary<string, string> dic, string cmd, int channel);
- //RecipeStart
- [OperationContract] void RecipeStart(int channel, string name);
- //RecipeStart
- [OperationContract] void RecipeStop(int channel);
- /// <summary>
- /// Online 模式,开始计算
- /// </summary>
- /// <param name="model"></param>
- [OperationContract] void Start(int channel, int idx, string name, string model);
- [OperationContract] void StartByConfig(int channel, int idx, string name, EPDConfig config);
- // online 模式,停止计算
- [OperationContract] void Stop(int channel);
- // online模式,暂停
- [OperationContract] void Pause(int channel);
- // online模式,恢复计算
- [OperationContract] void Resume(int channel);
- // 手动触发EndPoint
- [OperationContract] void ManualEPD(int channel);
- // 获取硬件通道数
- [OperationContract] int QueryChannels();
- [OperationContract] List<string> QueryChannelNames();
- [OperationContract] List<string> QueryChamberNames();
- [OperationContract] string QueryChannelName(int channel);
- // 获取当前model <name,xml>
- [OperationContract] Tuple<string, string> QueryModel(int channel);
- // 获取 波长信息,频谱图 X 坐标
- [OperationContract] double[] QueryWave(int channel);
- [OperationContract] double[] QueryWaveIEP(int channel);
- /// <summary>
- /// 获取当前帧数据
- /// </summary>
- /// <param name="data"></param>
- /// <returns>False,为无数据。
- /// </returns>
- [OperationContract] CRawDataItem QueryData(int channel);
- [OperationContract] RawDataItem QueryRawData(int channel);
- [OperationContract] List<double[]> QuerySpectrum(int channel);
- [OperationContract] List<string> QueryHistoryDataList(int channel, string date);
- [OperationContract] byte[] QueryHistoryData(int channel, string date, string name);
- // 获取当前State
- [OperationContract] EPDState QueryState(int channel);
- [OperationContract] bool QueryConnectState(int channel);
- [OperationContract] bool QueryRecordState(int channel);
- [OperationContract] long QueryRecipeTime(int channel);
- [OperationContract] List<long> QueryStepTime(int channel);
- [OperationContract] List<string> QueryConfigList();
- // 读取光谱采集器故障信息
- [OperationContract] string QuerySpectralStatus();
- [OperationContract] List<string> QuerySpectralSerials();
- [OperationContract] string QueryChannelSerial(int channel);
- [OperationContract] string QueryChannelVersion(int channel);
- [OperationContract] string QueryConfig(string name);
- [OperationContract] bool DeleteConfig(string name);
- [OperationContract] bool SaveConfig(string name, string xml);
- [OperationContract] int QueryIntrgrationTime(int channel);
- [OperationContract] void SetIntrgrationTime(int channel, int ms);
- [OperationContract] void SetFlashMode(int channel, bool model);
- [OperationContract] int QueryRunStatus();
- [OperationContract] void SetRunStatus(int runSta);
- [OperationContract] int QueryOperateMode();
- [OperationContract] void SetOperateMode(int mode);
- [OperationContract] void ClearBackground(int channel);
- [OperationContract] double QueryClearBackgroundPercent(int channel);
- [OperationContract] RawDataType QueryRawType(int channel);
- [OperationContract] int QueryWaveFactorStatus(int channel);
- //[OperationContract] AccountMgrResult CreateUser(string userName, string firstName, string lastName, string description, string password, RoleLevel roleLevel);
- //[OperationContract] AccountMgrResult DeleteUser(string userName);
- //[OperationContract] AccountMgrResult UpdateUser(string userName, string firstName, string lastName, string description, string password, RoleLevel roleLevel);
- //[OperationContract] AccountMgrResult UpdatePassword(string userName, string password);
- //[OperationContract] string GetCurrentUser();
- //[OperationContract] Datas.Account GetUserData(string userName);
- //[OperationContract] List<string> GetUserList();
- //[OperationContract] Dictionary<AuthorizationModule, AccessLevel> GetRoleAuthorizations(RoleLevel roleLevel);
- //[OperationContract] Dictionary<AuthorizationModule, AccessLevel> GetCurrentUserAuthorizations();
- //[OperationContract] AccessLevel GetCurrentUserModuleAuthorization(AuthorizationModule module);
- //[OperationContract] AccountMgrResult UpdateRoleAuthorization(RoleLevel roleLevel, Dictionary<AuthorizationModule, AccessLevel> authorizations);
- //[OperationContract] AccountMgrResult Login(string username, string password);
- //[OperationContract] AccountMgrResult Logout(string username);
- }
- public interface IRecipeService
- {
- [OperationContract]
- List<string> QueryRecipes();
- [OperationContract]
- string Load(string name);
- [OperationContract]
- void Save(string name, string recipe);
- [OperationContract]
- void Delete(string name);
- }
- }
|