From 5d08737eb1964d4bf56a3069def659a08d621ac5 Mon Sep 17 00:00:00 2001 From: babaq Date: Mon, 2 Nov 2009 17:20:43 +0800 Subject: [PATCH] ExService and Client Update --- ExClient/ExClient.csproj | 66 +- ExClient/ExClient.suo | Bin 16896 -> 23040 bytes ExClient/MainForm.Designer.cs | 121 +- ExClient/MainForm.cs | 358 +- .../Service References/ExConsole/Arrays.xsd | 21 + .../ExClient.ExConsole.BarPara.datasource | 10 + .../ExClient.ExConsole.ExDesign.datasource | 10 + .../ExClient.ExConsole.GratingPara.datasource | 10 + ...xClient.ExConsole.PrimitivePara.datasource | 10 + .../Microsoft.Xna.Framework.Graphics.xsd | 75 + .../ExConsole/Microsoft.Xna.Framework.xsd | 17 + .../Service References/ExConsole/Reference.cs | 1798 ++ .../ExConsole/Reference.svcmap | 36 + .../ExConsole/StiLib.Core.xsd | 109 + .../ExConsole/StiLib.Vision.xsd | 152 + .../ExConsole/configuration.svcinfo | 10 + .../ExConsole/configuration91.svcinfo | 189 + .../Service References/ExConsole/service.wsdl | 457 + .../Service References/ExConsole/service.xsd | 312 + .../Service References/ExConsole/service1.xsd | 42 + .../Service References/ExService/Arrays.xsd | 12 + .../ExClient.ExService.BarPara.datasource | 10 + .../ExClient.ExService.ExDesign.datasource | 10 + .../ExClient.ExService.GratingPara.datasource | 10 + ...xClient.ExService.PrimitivePara.datasource | 10 + .../Microsoft.Xna.Framework.Graphics.xsd | 75 + .../ExService/Microsoft.Xna.Framework.xsd | 17 + .../Service References/ExService/Reference.cs | 1697 +- .../ExService/Reference.svcmap | 16 +- .../ExService/StiLib.Core.xsd | 109 + .../ExService/StiLib.Vision.xsd | 152 + .../ExService/configuration.svcinfo | 4 +- .../ExService/configuration91.svcinfo | 14 +- .../Service References/ExService/service.wsdl | 278 +- .../Service References/ExService/service.xsd | 201 + ExClient/app.config | 21 +- ExServer/Content/Arial.spritefont | 22 - ExServer/Content/Content.contentproj | 5 +- ExServer/ExServer.csproj | 22 +- ExServer/ExServer.sln | 22 - ExServer/ExServer.suo | Bin 15360 -> 0 bytes ExServer/Main.cs | 6 +- ExServer/Program.cs | 2 +- ExServer/Properties/AssemblyInfo.cs | 4 +- Release/BasicServer.fsx | 4 +- Release/CenterSurround_2(Server).fsx | 22 +- Release/ExClient.exe | Bin 16384 -> 60416 bytes Release/ExClient.exe.config | 21 +- Release/ExServer.exe | Bin 10752 -> 10752 bytes Release/StiLib.dll | Bin 147968 -> 149504 bytes Release/StiLib.dll.config | 2 + StiLib.sln | 64 +- StiLib.suo | Bin 59920 -> 78848 bytes StiLib/Core/SLNet.cs | 281 +- StiLib/StiLib.csproj | 3 + StiLib/app.config | 2 +- StiLibTest_01/Content/Arial.spritefont | 22 - StiLibTest_01/Content/Content.contentproj | 68 +- StiLibTest_01/Content/Grating.fx | 166 - StiLibTest_01/Content/HardwareInstancing.fx | 61 - StiLibTest_01/Content/StiLib_Logo.png | Bin 34855 -> 0 bytes StiLibTest_01/Content/Turtle.jpg | Bin 60716 -> 0 bytes StiLibTest_01/Content/teapot.x | Bin 109937 -> 0 bytes StiLibTest_02/Content/Arial.spritefont | 22 - StiLibTest_02/Content/Content.contentproj | 34 +- StiLibTest_02/Content/Grating.fx | 166 - StiLibTest_02/Content/earth.x | 16415 ---------------- StiLibTest_02/Content/earth/earth.bmp | Bin 393270 -> 0 bytes StiLibTest_02/Content/earth/earthbump.bmp | Bin 393270 -> 0 bytes StiLibTest_02/Content/earth/earthenvmap.bmp | Bin 196662 -> 0 bytes StiLibTest_02/Content/teapot.x | Bin 109937 -> 0 bytes 71 files changed, 6816 insertions(+), 17059 deletions(-) create mode 100644 ExClient/Service References/ExConsole/Arrays.xsd create mode 100644 ExClient/Service References/ExConsole/ExClient.ExConsole.BarPara.datasource create mode 100644 ExClient/Service References/ExConsole/ExClient.ExConsole.ExDesign.datasource create mode 100644 ExClient/Service References/ExConsole/ExClient.ExConsole.GratingPara.datasource create mode 100644 ExClient/Service References/ExConsole/ExClient.ExConsole.PrimitivePara.datasource create mode 100644 ExClient/Service References/ExConsole/Microsoft.Xna.Framework.Graphics.xsd create mode 100644 ExClient/Service References/ExConsole/Microsoft.Xna.Framework.xsd create mode 100644 ExClient/Service References/ExConsole/Reference.cs create mode 100644 ExClient/Service References/ExConsole/Reference.svcmap create mode 100644 ExClient/Service References/ExConsole/StiLib.Core.xsd create mode 100644 ExClient/Service References/ExConsole/StiLib.Vision.xsd create mode 100644 ExClient/Service References/ExConsole/configuration.svcinfo create mode 100644 ExClient/Service References/ExConsole/configuration91.svcinfo create mode 100644 ExClient/Service References/ExConsole/service.wsdl create mode 100644 ExClient/Service References/ExConsole/service.xsd create mode 100644 ExClient/Service References/ExConsole/service1.xsd create mode 100644 ExClient/Service References/ExService/ExClient.ExService.BarPara.datasource create mode 100644 ExClient/Service References/ExService/ExClient.ExService.ExDesign.datasource create mode 100644 ExClient/Service References/ExService/ExClient.ExService.GratingPara.datasource create mode 100644 ExClient/Service References/ExService/ExClient.ExService.PrimitivePara.datasource create mode 100644 ExClient/Service References/ExService/Microsoft.Xna.Framework.Graphics.xsd create mode 100644 ExClient/Service References/ExService/Microsoft.Xna.Framework.xsd create mode 100644 ExClient/Service References/ExService/StiLib.Core.xsd create mode 100644 ExClient/Service References/ExService/StiLib.Vision.xsd delete mode 100644 ExServer/Content/Arial.spritefont delete mode 100644 ExServer/ExServer.sln delete mode 100644 ExServer/ExServer.suo delete mode 100644 StiLibTest_01/Content/Arial.spritefont delete mode 100644 StiLibTest_01/Content/Grating.fx delete mode 100644 StiLibTest_01/Content/HardwareInstancing.fx delete mode 100644 StiLibTest_01/Content/StiLib_Logo.png delete mode 100644 StiLibTest_01/Content/Turtle.jpg delete mode 100644 StiLibTest_01/Content/teapot.x delete mode 100644 StiLibTest_02/Content/Arial.spritefont delete mode 100644 StiLibTest_02/Content/Grating.fx delete mode 100644 StiLibTest_02/Content/earth.x delete mode 100644 StiLibTest_02/Content/earth/earth.bmp delete mode 100644 StiLibTest_02/Content/earth/earthbump.bmp delete mode 100644 StiLibTest_02/Content/earth/earthenvmap.bmp delete mode 100644 StiLibTest_02/Content/teapot.x diff --git a/ExClient/ExClient.csproj b/ExClient/ExClient.csproj index 6303f79..24fc390 100644 --- a/ExClient/ExClient.csproj +++ b/ExClient/ExClient.csproj @@ -74,19 +74,20 @@ True Resources.resx - SettingsSingleFileGenerator Settings.Designer.cs - - - True Settings.settings True + + True + True + Reference.svcmap + True True @@ -97,8 +98,52 @@ + + + + + + + + + + + + + + + + + + + + + Reference.svcmap + + + Reference.svcmap + + + Reference.svcmap + + + Reference.svcmap + + + WCF Proxy Generator + Reference.cs + + + + + + + + + + @@ -106,7 +151,18 @@ - + + Reference.svcmap + + + Reference.svcmap + + + Reference.svcmap + + + Reference.svcmap + WCF Proxy Generator Reference.cs diff --git a/ExClient/ExClient.suo b/ExClient/ExClient.suo index 834364b7ac96831510ad60c9848699eb06e49a4b..72f6b31e360a0693aacaba7d05540ac9549a234b 100644 GIT binary patch delta 3423 zcmb_eZ%kX)6~EU!69_gCobV^u*nkZb90&6!ArLU&B$NaaBGRNOkj0os<6vz1Y(mJA zLff=mwk~CyE$XDEO{Pp!wMJS-HK~&}v2I$oNNZJX{nUNghe_2wbn283QM88r&f__A z5KHr6*ZTRMcka38o_p>&=id2?a{fKJ&?!x~x;~UjjSzw?rm^-45H7$8lmi~161cyz zvf@TxWzf~=pD^fJ^mR<%Iy@*Bl|JdDa>bduP=0>q&7s>e14GLmI;ZqfFvm~zib8jl zK1)8>B>)t!&?kzUma`N(Ywn{xIrX$`g^+nc;brNy%;DV!SU*16(RTm=pc6O;bOSE{ zdjXbV^niX6I1Z3|gLm#J5J!P$fTsZ#I*EP=2m_9|63~&~h1zrNa37iKm0M7$+!2PAKHtaL$?n-Vv zWR)iHu)f~dS4(#`ew<;|55sB<=`OsJJ7CEHqcEMB%!3BY8Vz&o{?Ax1TBeW^-RFE# zqDXwCTrzFs1zSvl`P^DYeA%lM;$v8+AADoJN&NHv7c06JNMW+x{`AwP0_O9_2A}{i zcuR@=Pi0p6p3Ivt>Y~|#{q$SKPj?CiEG(ZcLP^_zg(J^q46ORXmTRIbTWYrSiQGSK zjs82k^3cM{t9L*C;06Z-1qzSxzUYUA)iRfUQ+PqXMIl!g%@^I3&(Lh~eyijlXBl2= zRb{bR%1pXf(reZCq@)c}a_e6nGMtj77fs$mx>vg2ycvSy^p>NwIv9^7;!$tQ>P+fy5ZR&2YJSp)QrJoq%Sh+I~qwu;xYQMr&+Sb zZs%iY%4pczx>y#p3K#6ieaPstLsor%d=9C7W^x8wv*}*h!8JQ_9^&A$bYc7hfE!(N zRMMQoK`(YRBCryNqX+C5j=ZXd6w`jSd$5bn6U{fFU26ocTLL0qZ*+d_99w|95_FsoJbU#!}k zosR_S=^hL=lfSN?PFIy>9(m=&={JX#E?50Xp{m-mYqsTB^48VoFYXRnr2~5?15!Sw z505x7$g%=%`b6W8F9Ngmm6OT%%(#kL2edFPoP_^0&U-WwF{#&gn&@r9N#e#FApML!P(EYQS`xhw-ss zL`9<>70bmC~n_c)xWnDe)*dF)kOd3 zxRO@+hDo|T$Jy=|VKeua(Z3A50=x=*3%CS)8~6_J8t`3!WnV|X0DKQv1PJ&(@B`oq zfVbOEB;|J26t7<1lX$O0fdnEmfdq{RvS$`s`A*3L@&OwiHrcYFTW^B$I;)MzQRH)~ zoEGU&7a;##Aj5_U(!2jF2{a zvSDb*5FAWuk=V0d*JL6b*P@Y8uj{C)@vYh3;H&4K*A<+OCZ{#EJ*H02CACo0>l&CI zjYh%;)Y&8P2{qO}x^ri!Io!O%zpJrHt#8>i;!SB!H{;1r;#4v;8dV>6v31s(TW7Hm zes*jytj-F?C#OQ1s%7zVgOPJ8UL{$Jk8+FQp1sdahoX_>Y)ZjN|2jUJdmJaNWA}Py zbGa1RM$!p|iLbSD4(Iq-hW;PzWHb3e%#CW4T>6{CNx$~kWg{mfYWDN^zGQF9T#Ze- jjoWcGZ;Mi_tDbf}{kw}Ek@obiqY)1Wg&z(m12z8vyz>F9 delta 1285 zcma)*?@wD*7{|}KJ-1wH+d&KM%1Y^ISF=IbKrkv$ZYe)DEc6n?W(*n~V`hW_LN%LF z*Tlv6Vwu=)VxmT)#JHFxGh6ouuwi0i{Iz7pHzsEB&0e`B@&b9m^?3@F`p)O(oBN#4 zdCoo0bIx<~H)Z~!TsEb=p88g*E!(!?)=qiYVKoUMwyuxAEek3mUD&UhycYBuTVvlz z2TiTk<8^fmYrb|IQ3@L>K)JHN&Pm}sdM@fUEa@=r*k9bvUHBTI8`2P5n8%A35NZz`U2)|1yn;)6|lJO_iDIZmxLKO?l>u?@nPUmY2a4iO{_%wkq>Uj z+c>{>1Zi(?A@sL&U^8^gQ>u)U-TipOU4vU=7wo&JzgtfP@0n?sVWm51a2WT(2V5^L zEVNC{&z(N=G9H}B;Il>p7qY!F$&)xc;K%sUpzJ7(V$nuTjFS7*PFNM*IT0#E(%YBn z`_Gn<>^5~*Q0GA!Jf~qZGG>G;IC4!{P1bP>xKqSGBC+9KV;K2o<9M+zfX%22zUFIq zxL@IomR3AWE~7Q*#bt8_CsQvVI-qp!907UIkJaX3twX}9&0r$-mOO>e2kY@`%%Z~E zJ09yqZS%A~({=7IH@=Eb;abX9T7NZa6i(QylJp zCf$YhmQlOTD+WCQN_D0tu?UP4E#J~pk|12uWN{LN^G3lY4NIN?{ z333mx@!j&L3=+3C2eSz=E#^c{Oo}D)7R77gjF=)XO8zvZ#*8CiCi92>_unJ1Vts&o zUsT;MzA}O@`hLTu*vIkhWA1vKidm#`+GwXG%B5^`Vo1#6)7X={{~kU`#rP7Wj<1a% M9kw=Gk6Po exData = new List(); public MainForm() { InitializeComponent(); - try + proxyExC = new ExClient.ExConsole.ExServiceClient(new InstanceContext(this)); + proxyExS = new ExClient.ExService.ExServiceClient(new InstanceContext(this)); + + exdataGrid.CellValueChanged += new DataGridViewCellEventHandler(exdataGrid_CellValueChanged); + } + + + void exdataGrid_CellValueChanged(object sender, DataGridViewCellEventArgs e) + { + isExdataChanged = true; + } + + private string TryGetExConsole() + { + if(!isproxyExC_OK) { - proxy = new ExClient.ExService.ExServiceClient(new InstanceContext(this)); - proxy.Subscribe(true); - exlist.Items.AddRange(proxy.GetEx()); + try + { + if (proxyExC.State == CommunicationState.Faulted) + { + proxyExC.Abort(); + proxyExC = new ExClient.ExConsole.ExServiceClient(new InstanceContext(this)); + } + proxyExC.Subscribe(true); + exlist.Items.AddRange(proxyExC.GetEx()); + isproxyExC_OK = true; + return null; + } + catch (Exception e) + { + return e.Message; + } } - catch (Exception e) + return null; + } + + private string TryGetExService() + { + if (!isproxyExS_OK) { - MessageBox.Show(e.Message); + try + { + if (proxyExS.State == CommunicationState.Faulted) + { + proxyExS.Abort(); + proxyExS = new ExClient.ExService.ExServiceClient(new InstanceContext(this)); + } + proxyExS.Subscribe(true); + isproxyExS_OK = true; + return null; + } + catch (Exception e) + { + return e.Message; + } } + return null; + } + private void SearchService() + { + string hr_exc = ""; + string hr_exs = ""; + if (!isproxyExC_OK) + { + hr_exc = TryGetExConsole(); + } + if (isproxyExC_OK) + { + excstate.Text = "ExConsole Online"; + excstate.ForeColor = System.Drawing.Color.Green; + } + else + { + excstate.Text = "ExConsole Offline"; + excstate.ForeColor = System.Drawing.Color.Red; + } + + if (!isproxyExS_OK) + { + hr_exs = TryGetExService(); + } + if (isproxyExS_OK) + { + exsstate.Text = "ExService Online"; + exsstate.ForeColor = System.Drawing.Color.Green; + InitExServiceUI(); + } + else + { + exsstate.Text = "ExService Offline"; + exsstate.ForeColor = System.Drawing.Color.Red; + } + + info.Text = hr_exc + hr_exs; } - public string OnRunStop(bool runstop) + void InitExServiceUI() + { + ExS_Type = proxyExS.GetExType(); + if(!string.IsNullOrEmpty(ExS_Type)) + { + switch (ExS_Type) + { + case "CenterSurround_2": + GratingPara cgrating= proxyExS.GetGrating(0); + exData.Add(cgrating); + + exdataGrid.ColumnCount = 2; + exdataGrid.RowCount = 2; + exdataGrid[0, 0].Value = "cgrating.contrast"; + exdataGrid[1, 0].Value = cgrating.contrast; + break; + } + } + } + + void SetExServiceUI() + { + if (!string.IsNullOrEmpty(ExS_Type) && isExdataChanged) + { + switch (ExS_Type) + { + case "CenterSurround_2": + proxyExS.SetGrating(0, (GratingPara)exData[0]); + break; + } + } + } + + void ClearExServiceUI() + { + exdataGrid.Columns.Clear(); + exdataGrid.Rows.Clear(); + + isExdataChanged = false; + exData.Clear(); + ExS_Type = null; + } + + private string OnRunStop(bool runstop) { try { @@ -45,14 +177,14 @@ public string OnRunStop(bool runstop) { this.Invoke((MethodInvoker) delegate { - this.info.Text = "Server has changed its Run/Stop state to " + + this.info.Text = "Experiment has changed its Run/Stop state to " + runstop.ToString(); hr = this.Text + " has Done."; }); } else { - this.info.Text = "Server has changed its Run/Stop state to " + runstop.ToString(); + this.info.Text = "Experiment has changed its Run/Stop state to " + runstop.ToString(); hr = this.Text + " has Done."; } return hr; @@ -86,7 +218,7 @@ private void openToolStripMenuItem_Click(object sender, EventArgs e) StreamReader reader = new StreamReader(openfileDialog.FileName); string ex = openfileDialog.FileName.Substring(openfileDialog.FileName.LastIndexOf("\\") + 1); - string hresult = proxy.InvokeScript(ex, reader.ReadToEnd()); + string hresult = proxyExC.InvokeScript(ex, reader.ReadToEnd()); if (hresult != null) { MessageBox.Show(hresult); @@ -97,67 +229,217 @@ private void openToolStripMenuItem_Click(object sender, EventArgs e) private void invoke_Click(object sender, EventArgs e) { - try + if (isproxyExC_OK) { - string hresult = proxy.Invoke(exlist.SelectedItem.ToString()); - if(string.IsNullOrEmpty(hresult)) + try { - this.info.Text = exlist.SelectedItem.ToString() + " has invoked in server."; + string hresult = proxyExC.Invoke(exlist.SelectedItem.ToString()); + if (string.IsNullOrEmpty(hresult)) + { + this.info.Text = exlist.SelectedItem.ToString() + " has invoked in server."; + } + else + { + this.info.Text = hresult; + } } - else + catch (Exception ex) { - this.info.Text = hresult; + ExC_OnServiceDispose(); + this.info.Text = ex.Message; } } - catch (Exception ex) + else { - this.info.Text = ex.Message; + info.Text = "No ExConsole Online Now."; } } private void terminate_Click(object sender, EventArgs e) { - try + if (isproxyExC_OK) { - string hr = proxy.Terminate(exlist.SelectedItem.ToString()); - if (string.IsNullOrEmpty(hr)) + try { - this.info.Text = exlist.SelectedItem.ToString() + " has terminated in server."; + string hr = proxyExC.Terminate(exlist.SelectedItem.ToString()); + if (string.IsNullOrEmpty(hr)) + { + this.info.Text = exlist.SelectedItem.ToString() + " has terminated in server."; + } + else + { + this.info.Text = hr; + } } - else + catch (Exception ex) { - this.info.Text = hr; + ExC_OnServiceDispose(); + this.info.Text = ex.Message; } } - catch (Exception ex) + else { - this.info.Text = ex.Message; + info.Text = "No ExConsole Online Now."; } } private void run_Click(object sender, EventArgs e) { - if(!proxy.get_RunStop()) + if (isproxyExS_OK) + { + try + { + if (!proxyExS.get_RunStop()) + { + SetExServiceUI(); + proxyExS.set_RunStop(true); + refresh_Click(sender, e); + } + } + catch (CommunicationException ex) + { + ExS_OnServiceDispose(); + this.info.Text = ex.Message; + } + } + else { - proxy.set_RunStop(true); - refresh_Click(sender,e); + this.info.Text = "No ExService Online Now."; } } private void stop_Click(object sender, EventArgs e) { - if(proxy.get_RunStop()) + if (isproxyExS_OK) { - proxy.set_RunStop(false); - refresh_Click(sender, e); + try + { + if (proxyExS.get_RunStop()) + { + proxyExS.set_RunStop(false); + refresh_Click(sender, e); + } + } + catch (CommunicationException ex) + { + ExS_OnServiceDispose(); + this.info.Text = ex.Message; + } + } + else + { + this.info.Text = "No ExService Online Now."; } } private void refresh_Click(object sender, EventArgs e) { - string hr = proxy.get_RunStop().ToString(); - this.info.Text = "Server Run/Stop State is " + hr; + if (isproxyExS_OK) + { + try + { + string hr = proxyExS.get_RunStop().ToString(); + this.info.Text = "Experiment Run/Stop State is " + hr; + } + catch (CommunicationException ex) + { + ExC_OnServiceDispose(); + this.info.Text = ex.Message; + } + } + else + { + this.info.Text = "No ExService Online Now."; + } + } + + #region ExConsole IExServiceCallback Members + + string ExConsole.IExServiceCallback.OnRunStop(bool runstop) + { + return OnRunStop(runstop); + } + + void ExConsole.IExServiceCallback.OnServiceDispose() + { + ExC_OnServiceDispose(); + } + + #endregion + + #region ExService IExServiceCallback Members + + string ExService.IExServiceCallback.OnRunStop(bool runstop) + { + return OnRunStop(runstop); + } + + void ExService.IExServiceCallback.OnServiceDispose() + { + ExS_OnServiceDispose(); + } + + #endregion + + void ExC_OnServiceDispose() + { + try + { + if (this.InvokeRequired) + { + this.Invoke((MethodInvoker)delegate + { + isproxyExC_OK = false; + excstate.Text = "ExConsole Offline"; + excstate.ForeColor = System.Drawing.Color.Red; + }); + } + else + { + isproxyExC_OK = false; + excstate.Text = "ExConsole Offline"; + excstate.ForeColor = System.Drawing.Color.Red; + } + } + catch (Exception e) + { + MessageBox.Show(e.Message); + } } + void ExS_OnServiceDispose() + { + try + { + if (this.InvokeRequired) + { + this.Invoke((MethodInvoker)delegate + { + isproxyExS_OK = false; + exsstate.Text = "ExService Offline"; + exsstate.ForeColor = System.Drawing.Color.Red; + ClearExServiceUI(); + }); + } + else + { + isproxyExS_OK = false; + exsstate.Text = "ExService Offline"; + exsstate.ForeColor = System.Drawing.Color.Red; + ClearExServiceUI(); + } + } + catch (Exception e) + { + MessageBox.Show(e.Message); + } + } + + private void searchServerToolStripMenuItem_Click(object sender, EventArgs e) + { + SearchService(); + } + + } } diff --git a/ExClient/Service References/ExConsole/Arrays.xsd b/ExClient/Service References/ExConsole/Arrays.xsd new file mode 100644 index 0000000..548054e --- /dev/null +++ b/ExClient/Service References/ExConsole/Arrays.xsd @@ -0,0 +1,21 @@ + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/ExClient.ExConsole.BarPara.datasource b/ExClient/Service References/ExConsole/ExClient.ExConsole.BarPara.datasource new file mode 100644 index 0000000..083ec11 --- /dev/null +++ b/ExClient/Service References/ExConsole/ExClient.ExConsole.BarPara.datasource @@ -0,0 +1,10 @@ + + + + ExClient.ExConsole.BarPara, Service References.ExConsole.Reference.cs, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/ExClient.ExConsole.ExDesign.datasource b/ExClient/Service References/ExConsole/ExClient.ExConsole.ExDesign.datasource new file mode 100644 index 0000000..932c28a --- /dev/null +++ b/ExClient/Service References/ExConsole/ExClient.ExConsole.ExDesign.datasource @@ -0,0 +1,10 @@ + + + + ExClient.ExConsole.ExDesign, Service References.ExConsole.Reference.cs, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/ExClient.ExConsole.GratingPara.datasource b/ExClient/Service References/ExConsole/ExClient.ExConsole.GratingPara.datasource new file mode 100644 index 0000000..b0d363c --- /dev/null +++ b/ExClient/Service References/ExConsole/ExClient.ExConsole.GratingPara.datasource @@ -0,0 +1,10 @@ + + + + ExClient.ExConsole.GratingPara, Service References.ExConsole.Reference.cs, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/ExClient.ExConsole.PrimitivePara.datasource b/ExClient/Service References/ExConsole/ExClient.ExConsole.PrimitivePara.datasource new file mode 100644 index 0000000..70ceeda --- /dev/null +++ b/ExClient/Service References/ExConsole/ExClient.ExConsole.PrimitivePara.datasource @@ -0,0 +1,10 @@ + + + + ExClient.ExConsole.PrimitivePara, Service References.ExConsole.Reference.cs, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/Microsoft.Xna.Framework.Graphics.xsd b/ExClient/Service References/ExConsole/Microsoft.Xna.Framework.Graphics.xsd new file mode 100644 index 0000000..0267afb --- /dev/null +++ b/ExClient/Service References/ExConsole/Microsoft.Xna.Framework.Graphics.xsd @@ -0,0 +1,75 @@ + + + + + + + + true + + + + + + + + + + + + + 1 + + + + + + + 2 + + + + + + + 3 + + + + + + + 4 + + + + + + + 6 + + + + + + + + + + + + + + + + + true + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/Microsoft.Xna.Framework.xsd b/ExClient/Service References/ExConsole/Microsoft.Xna.Framework.xsd new file mode 100644 index 0000000..2c863ad --- /dev/null +++ b/ExClient/Service References/ExConsole/Microsoft.Xna.Framework.xsd @@ -0,0 +1,17 @@ + + + + + + + true + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/Reference.cs b/ExClient/Service References/ExConsole/Reference.cs new file mode 100644 index 0000000..ed33969 --- /dev/null +++ b/ExClient/Service References/ExConsole/Reference.cs @@ -0,0 +1,1798 @@ +//------------------------------------------------------------------------------ +// +// This code was generated by a tool. +// Runtime Version:2.0.50727.3603 +// +// Changes to this file may cause incorrect behavior and will be lost if +// the code is regenerated. +// +//------------------------------------------------------------------------------ + +namespace ExClient.ExConsole { + using System.Runtime.Serialization; + using System; + + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="ExDesign", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Core")] + [System.SerializableAttribute()] + public partial struct ExDesign : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.Color bgcolorField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int blockField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float brestTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.SLInterpolation[] conditionField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float durTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.ExPara[] exParaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.ExType[] exTypeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float posTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float preTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float srestTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int[] stimuliField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float trestTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int trialField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.Color bgcolor { + get { + return this.bgcolorField; + } + set { + if ((this.bgcolorField.Equals(value) != true)) { + this.bgcolorField = value; + this.RaisePropertyChanged("bgcolor"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int block { + get { + return this.blockField; + } + set { + if ((this.blockField.Equals(value) != true)) { + this.blockField = value; + this.RaisePropertyChanged("block"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float brestT { + get { + return this.brestTField; + } + set { + if ((this.brestTField.Equals(value) != true)) { + this.brestTField = value; + this.RaisePropertyChanged("brestT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.SLInterpolation[] condition { + get { + return this.conditionField; + } + set { + if ((object.ReferenceEquals(this.conditionField, value) != true)) { + this.conditionField = value; + this.RaisePropertyChanged("condition"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float durT { + get { + return this.durTField; + } + set { + if ((this.durTField.Equals(value) != true)) { + this.durTField = value; + this.RaisePropertyChanged("durT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.ExPara[] exPara { + get { + return this.exParaField; + } + set { + if ((object.ReferenceEquals(this.exParaField, value) != true)) { + this.exParaField = value; + this.RaisePropertyChanged("exPara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.ExType[] exType { + get { + return this.exTypeField; + } + set { + if ((object.ReferenceEquals(this.exTypeField, value) != true)) { + this.exTypeField = value; + this.RaisePropertyChanged("exType"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float posT { + get { + return this.posTField; + } + set { + if ((this.posTField.Equals(value) != true)) { + this.posTField = value; + this.RaisePropertyChanged("posT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float preT { + get { + return this.preTField; + } + set { + if ((this.preTField.Equals(value) != true)) { + this.preTField = value; + this.RaisePropertyChanged("preT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float srestT { + get { + return this.srestTField; + } + set { + if ((this.srestTField.Equals(value) != true)) { + this.srestTField = value; + this.RaisePropertyChanged("srestT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int[] stimuli { + get { + return this.stimuliField; + } + set { + if ((object.ReferenceEquals(this.stimuliField, value) != true)) { + this.stimuliField = value; + this.RaisePropertyChanged("stimuli"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float trestT { + get { + return this.trestTField; + } + set { + if ((this.trestTField.Equals(value) != true)) { + this.trestTField = value; + this.RaisePropertyChanged("trestT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int trial { + get { + return this.trialField; + } + set { + if ((this.trialField.Equals(value) != true)) { + this.trialField = value; + this.RaisePropertyChanged("trial"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="Color", Namespace="http://schemas.datacontract.org/2004/07/Microsoft.Xna.Framework.Graphics")] + [System.SerializableAttribute()] + public partial struct Color : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + private uint packedValueField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public uint packedValue { + get { + return this.packedValueField; + } + set { + if ((this.packedValueField.Equals(value) != true)) { + this.packedValueField = value; + this.RaisePropertyChanged("packedValue"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="SLInterpolation", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Core")] + [System.SerializableAttribute()] + public partial struct SLInterpolation : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float EndValueField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.Interpolation MethodField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float StartValueField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int ValueNField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float EndValue { + get { + return this.EndValueField; + } + set { + if ((this.EndValueField.Equals(value) != true)) { + this.EndValueField = value; + this.RaisePropertyChanged("EndValue"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.Interpolation Method { + get { + return this.MethodField; + } + set { + if ((this.MethodField.Equals(value) != true)) { + this.MethodField = value; + this.RaisePropertyChanged("Method"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float StartValue { + get { + return this.StartValueField; + } + set { + if ((this.StartValueField.Equals(value) != true)) { + this.StartValueField = value; + this.RaisePropertyChanged("StartValue"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int ValueN { + get { + return this.ValueNField; + } + set { + if ((this.ValueNField.Equals(value) != true)) { + this.ValueNField = value; + this.RaisePropertyChanged("ValueN"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="ExPara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Core")] + public enum ExPara : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + None = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Orientation = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Direction = 2, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Speed = 3, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Luminance = 4, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Contrast = 5, + + [System.Runtime.Serialization.EnumMemberAttribute()] + SpatialFreq = 6, + + [System.Runtime.Serialization.EnumMemberAttribute()] + SpatialPhase = 7, + + [System.Runtime.Serialization.EnumMemberAttribute()] + TemporalFreq = 8, + + [System.Runtime.Serialization.EnumMemberAttribute()] + TemporalPhase = 9, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Color = 10, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Disparity = 11, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Size = 12, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Location = 13, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="ExType", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Core")] + public enum ExType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + None = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + dBar = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + RF_dBar = 2, + + [System.Runtime.Serialization.EnumMemberAttribute()] + fBar = 3, + + [System.Runtime.Serialization.EnumMemberAttribute()] + RF_fBar = 4, + + [System.Runtime.Serialization.EnumMemberAttribute()] + dGrating = 5, + + [System.Runtime.Serialization.EnumMemberAttribute()] + fGrating = 6, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Plaid = 7, + + [System.Runtime.Serialization.EnumMemberAttribute()] + RandomLine = 8, + + [System.Runtime.Serialization.EnumMemberAttribute()] + OpticFlow = 9, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Two_dBar = 10, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Two_dGrating = 11, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Two_fBar = 12, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Two_fGrating = 13, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Context = 14, + + [System.Runtime.Serialization.EnumMemberAttribute()] + RF = 15, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="Interpolation", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Core")] + public enum Interpolation : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + Linear = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Log2 = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Log10 = 2, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="PrimitiveType", Namespace="http://schemas.datacontract.org/2004/07/Microsoft.Xna.Framework.Graphics")] + public enum PrimitiveType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + PointList = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + LineList = 2, + + [System.Runtime.Serialization.EnumMemberAttribute()] + LineStrip = 3, + + [System.Runtime.Serialization.EnumMemberAttribute()] + TriangleList = 4, + + [System.Runtime.Serialization.EnumMemberAttribute()] + TriangleFan = 6, + + [System.Runtime.Serialization.EnumMemberAttribute()] + TriangleStrip = 5, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="VertexPositionColor", Namespace="http://schemas.datacontract.org/2004/07/Microsoft.Xna.Framework.Graphics")] + [System.SerializableAttribute()] + public partial struct VertexPositionColor : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + private ExClient.ExConsole.Color ColorField; + + private ExClient.ExConsole.Vector3 PositionField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public ExClient.ExConsole.Color Color { + get { + return this.ColorField; + } + set { + if ((this.ColorField.Equals(value) != true)) { + this.ColorField = value; + this.RaisePropertyChanged("Color"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public ExClient.ExConsole.Vector3 Position { + get { + return this.PositionField; + } + set { + if ((this.PositionField.Equals(value) != true)) { + this.PositionField = value; + this.RaisePropertyChanged("Position"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="Vector3", Namespace="http://schemas.datacontract.org/2004/07/Microsoft.Xna.Framework")] + [System.SerializableAttribute()] + public partial struct Vector3 : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + private float XField; + + private float YField; + + private float ZField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public float X { + get { + return this.XField; + } + set { + if ((this.XField.Equals(value) != true)) { + this.XField = value; + this.RaisePropertyChanged("X"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public float Y { + get { + return this.YField; + } + set { + if ((this.YField.Equals(value) != true)) { + this.YField = value; + this.RaisePropertyChanged("Y"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public float Z { + get { + return this.ZField; + } + set { + if ((this.ZField.Equals(value) != true)) { + this.ZField = value; + this.RaisePropertyChanged("Z"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="BarPara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + [System.SerializableAttribute()] + public partial struct BarPara : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.vsBasePara BaseParaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float heightField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float widthField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.vsBasePara BasePara { + get { + return this.BaseParaField; + } + set { + if ((this.BaseParaField.Equals(value) != true)) { + this.BaseParaField = value; + this.RaisePropertyChanged("BasePara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float height { + get { + return this.heightField; + } + set { + if ((this.heightField.Equals(value) != true)) { + this.heightField = value; + this.RaisePropertyChanged("height"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float width { + get { + return this.widthField; + } + set { + if ((this.widthField.Equals(value) != true)) { + this.widthField = value; + this.RaisePropertyChanged("width"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="vsBasePara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + [System.SerializableAttribute()] + public partial struct vsBasePara : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.Vector3 centerField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.Color colorField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private string contentnameField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float diameterField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float directionField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private double lifetimeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float orientationField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.Vector3 orientation3DField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.PrimitiveType primitivetypeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float rotationspeedField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.Vector3 rotationspeed3DField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float spaceField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float speedField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.Vector3 speed3DField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private bool visibleField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.VSType vstypeField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.Vector3 center { + get { + return this.centerField; + } + set { + if ((this.centerField.Equals(value) != true)) { + this.centerField = value; + this.RaisePropertyChanged("center"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.Color color { + get { + return this.colorField; + } + set { + if ((this.colorField.Equals(value) != true)) { + this.colorField = value; + this.RaisePropertyChanged("color"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public string contentname { + get { + return this.contentnameField; + } + set { + if ((object.ReferenceEquals(this.contentnameField, value) != true)) { + this.contentnameField = value; + this.RaisePropertyChanged("contentname"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float diameter { + get { + return this.diameterField; + } + set { + if ((this.diameterField.Equals(value) != true)) { + this.diameterField = value; + this.RaisePropertyChanged("diameter"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float direction { + get { + return this.directionField; + } + set { + if ((this.directionField.Equals(value) != true)) { + this.directionField = value; + this.RaisePropertyChanged("direction"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public double lifetime { + get { + return this.lifetimeField; + } + set { + if ((this.lifetimeField.Equals(value) != true)) { + this.lifetimeField = value; + this.RaisePropertyChanged("lifetime"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float orientation { + get { + return this.orientationField; + } + set { + if ((this.orientationField.Equals(value) != true)) { + this.orientationField = value; + this.RaisePropertyChanged("orientation"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.Vector3 orientation3D { + get { + return this.orientation3DField; + } + set { + if ((this.orientation3DField.Equals(value) != true)) { + this.orientation3DField = value; + this.RaisePropertyChanged("orientation3D"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.PrimitiveType primitivetype { + get { + return this.primitivetypeField; + } + set { + if ((this.primitivetypeField.Equals(value) != true)) { + this.primitivetypeField = value; + this.RaisePropertyChanged("primitivetype"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float rotationspeed { + get { + return this.rotationspeedField; + } + set { + if ((this.rotationspeedField.Equals(value) != true)) { + this.rotationspeedField = value; + this.RaisePropertyChanged("rotationspeed"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.Vector3 rotationspeed3D { + get { + return this.rotationspeed3DField; + } + set { + if ((this.rotationspeed3DField.Equals(value) != true)) { + this.rotationspeed3DField = value; + this.RaisePropertyChanged("rotationspeed3D"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float space { + get { + return this.spaceField; + } + set { + if ((this.spaceField.Equals(value) != true)) { + this.spaceField = value; + this.RaisePropertyChanged("space"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float speed { + get { + return this.speedField; + } + set { + if ((this.speedField.Equals(value) != true)) { + this.speedField = value; + this.RaisePropertyChanged("speed"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.Vector3 speed3D { + get { + return this.speed3DField; + } + set { + if ((this.speed3DField.Equals(value) != true)) { + this.speed3DField = value; + this.RaisePropertyChanged("speed3D"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public bool visible { + get { + return this.visibleField; + } + set { + if ((this.visibleField.Equals(value) != true)) { + this.visibleField = value; + this.RaisePropertyChanged("visible"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.VSType vstype { + get { + return this.vstypeField; + } + set { + if ((this.vstypeField.Equals(value) != true)) { + this.vstypeField = value; + this.RaisePropertyChanged("vstype"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="VSType", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + public enum VSType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + None = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Bar = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Grating = 2, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Image = 3, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Primitive = 4, + + [System.Runtime.Serialization.EnumMemberAttribute()] + SLModel = 5, + + [System.Runtime.Serialization.EnumMemberAttribute()] + SLQuad = 6, + + [System.Runtime.Serialization.EnumMemberAttribute()] + SLVideo = 7, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Text = 8, + + [System.Runtime.Serialization.EnumMemberAttribute()] + VSCollection = 9, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Mask = 10, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="GratingPara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + [System.SerializableAttribute()] + public partial struct GratingPara : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.vsBasePara BaseParaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float contrastField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.GratingType gratingtypeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.Color lhcolorField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float luminanceField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.MaskPara maskparaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.MoveType movetypeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int resolutionField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.Color rlcolorField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float sfField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.Shape shapeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float sphaseField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float tfField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.vsBasePara BasePara { + get { + return this.BaseParaField; + } + set { + if ((this.BaseParaField.Equals(value) != true)) { + this.BaseParaField = value; + this.RaisePropertyChanged("BasePara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float contrast { + get { + return this.contrastField; + } + set { + if ((this.contrastField.Equals(value) != true)) { + this.contrastField = value; + this.RaisePropertyChanged("contrast"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.GratingType gratingtype { + get { + return this.gratingtypeField; + } + set { + if ((this.gratingtypeField.Equals(value) != true)) { + this.gratingtypeField = value; + this.RaisePropertyChanged("gratingtype"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.Color lhcolor { + get { + return this.lhcolorField; + } + set { + if ((this.lhcolorField.Equals(value) != true)) { + this.lhcolorField = value; + this.RaisePropertyChanged("lhcolor"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float luminance { + get { + return this.luminanceField; + } + set { + if ((this.luminanceField.Equals(value) != true)) { + this.luminanceField = value; + this.RaisePropertyChanged("luminance"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.MaskPara maskpara { + get { + return this.maskparaField; + } + set { + if ((this.maskparaField.Equals(value) != true)) { + this.maskparaField = value; + this.RaisePropertyChanged("maskpara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.MoveType movetype { + get { + return this.movetypeField; + } + set { + if ((this.movetypeField.Equals(value) != true)) { + this.movetypeField = value; + this.RaisePropertyChanged("movetype"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int resolution { + get { + return this.resolutionField; + } + set { + if ((this.resolutionField.Equals(value) != true)) { + this.resolutionField = value; + this.RaisePropertyChanged("resolution"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.Color rlcolor { + get { + return this.rlcolorField; + } + set { + if ((this.rlcolorField.Equals(value) != true)) { + this.rlcolorField = value; + this.RaisePropertyChanged("rlcolor"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float sf { + get { + return this.sfField; + } + set { + if ((this.sfField.Equals(value) != true)) { + this.sfField = value; + this.RaisePropertyChanged("sf"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.Shape shape { + get { + return this.shapeField; + } + set { + if ((this.shapeField.Equals(value) != true)) { + this.shapeField = value; + this.RaisePropertyChanged("shape"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float sphase { + get { + return this.sphaseField; + } + set { + if ((this.sphaseField.Equals(value) != true)) { + this.sphaseField = value; + this.RaisePropertyChanged("sphase"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float tf { + get { + return this.tfField; + } + set { + if ((this.tfField.Equals(value) != true)) { + this.tfField = value; + this.RaisePropertyChanged("tf"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="MaskPara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + [System.SerializableAttribute()] + public partial struct MaskPara : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.vsBasePara BaseParaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.MaskType masktypeField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.vsBasePara BasePara { + get { + return this.BaseParaField; + } + set { + if ((this.BaseParaField.Equals(value) != true)) { + this.BaseParaField = value; + this.RaisePropertyChanged("BasePara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.MaskType masktype { + get { + return this.masktypeField; + } + set { + if ((this.masktypeField.Equals(value) != true)) { + this.masktypeField = value; + this.RaisePropertyChanged("masktype"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="GratingType", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + public enum GratingType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + Sinusoidal = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Linear = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Square = 2, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="MoveType", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + public enum MoveType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + Drifting = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Standing = 1, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="Shape", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + public enum Shape : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + Custom = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Point = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Line = 2, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Curve = 3, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Triangle = 4, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Rectangle = 5, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Quadrate = 6, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Cuboid = 7, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Cube = 8, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Ellipse = 9, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Circle = 10, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Ellipsoid = 11, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Sphere = 12, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Cone = 13, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Cylinder = 14, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="MaskType", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + public enum MaskType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + None = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Gaussian = 1, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="PrimitivePara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + [System.SerializableAttribute()] + public partial struct PrimitivePara : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.vsBasePara BaseParaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int[] indicesField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExConsole.VertexPositionColor[] verticesField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.vsBasePara BasePara { + get { + return this.BaseParaField; + } + set { + if ((this.BaseParaField.Equals(value) != true)) { + this.BaseParaField = value; + this.RaisePropertyChanged("BasePara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int[] indices { + get { + return this.indicesField; + } + set { + if ((object.ReferenceEquals(this.indicesField, value) != true)) { + this.indicesField = value; + this.RaisePropertyChanged("indices"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExConsole.VertexPositionColor[] vertices { + get { + return this.verticesField; + } + set { + if ((object.ReferenceEquals(this.verticesField, value) != true)) { + this.verticesField = value; + this.RaisePropertyChanged("vertices"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] + [System.ServiceModel.ServiceContractAttribute(ConfigurationName="ExConsole.IExService", CallbackContract=typeof(ExClient.ExConsole.IExServiceCallback))] + public interface IExService { + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/Invoke", ReplyAction="http://tempuri.org/IExService/InvokeResponse")] + string Invoke(string ex); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/InvokeScript", ReplyAction="http://tempuri.org/IExService/InvokeScriptResponse")] + string InvokeScript(string ex, string script); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetEx", ReplyAction="http://tempuri.org/IExService/GetExResponse")] + string[] GetEx(); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/Terminate", ReplyAction="http://tempuri.org/IExService/TerminateResponse")] + string Terminate(string ex); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/get_RunStop", ReplyAction="http://tempuri.org/IExService/get_RunStopResponse")] + bool get_RunStop(); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/set_RunStop", ReplyAction="http://tempuri.org/IExService/set_RunStopResponse")] + void set_RunStop(bool value); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/Subscribe", ReplyAction="http://tempuri.org/IExService/SubscribeResponse")] + string Subscribe(bool sub_unsub); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetExType", ReplyAction="http://tempuri.org/IExService/GetExTypeResponse")] + string GetExType(); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/Set", ReplyAction="http://tempuri.org/IExService/SetResponse")] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(string[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(object[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(int[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExDesign))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.SLInterpolation[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.SLInterpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Interpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExPara[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExType[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Color))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.PrimitiveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VertexPositionColor[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VertexPositionColor))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.BarPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.vsBasePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.GratingPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.GratingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MaskPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MaskType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MoveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Shape))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.PrimitivePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Vector3))] + string Set(string target, string property, object value); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/SetMany", ReplyAction="http://tempuri.org/IExService/SetManyResponse")] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(string[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(object[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(int[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExDesign))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.SLInterpolation[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.SLInterpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Interpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExPara[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExType[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Color))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.PrimitiveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VertexPositionColor[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VertexPositionColor))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.BarPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.vsBasePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.GratingPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.GratingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MaskPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MaskType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MoveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Shape))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.PrimitivePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Vector3))] + string SetMany(string target, object[] propertyvaluepairs); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/Get", ReplyAction="http://tempuri.org/IExService/GetResponse")] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(string[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(object[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(int[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExDesign))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.SLInterpolation[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.SLInterpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Interpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExPara[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExType[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Color))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.PrimitiveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VertexPositionColor[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VertexPositionColor))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.BarPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.vsBasePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.GratingPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.GratingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MaskPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MaskType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MoveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Shape))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.PrimitivePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Vector3))] + object Get(string target, string property); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetMany", ReplyAction="http://tempuri.org/IExService/GetManyResponse")] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(string[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(object[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(int[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExDesign))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.SLInterpolation[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.SLInterpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Interpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExPara[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExType[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.ExType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Color))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.PrimitiveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VertexPositionColor[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VertexPositionColor))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.BarPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.vsBasePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.VSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.GratingPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.GratingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MaskPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MaskType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.MoveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Shape))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.PrimitivePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExConsole.Vector3))] + object[] GetMany(string target, string[] properties); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/SetExDesign", ReplyAction="http://tempuri.org/IExService/SetExDesignResponse")] + string SetExDesign(int index, ExClient.ExConsole.ExDesign exdesign); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetExDesign", ReplyAction="http://tempuri.org/IExService/GetExDesignResponse")] + ExClient.ExConsole.ExDesign GetExDesign(int index); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/SetBar", ReplyAction="http://tempuri.org/IExService/SetBarResponse")] + string SetBar(int index, ExClient.ExConsole.BarPara barpara); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetBar", ReplyAction="http://tempuri.org/IExService/GetBarResponse")] + ExClient.ExConsole.BarPara GetBar(int index); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/SetGrating", ReplyAction="http://tempuri.org/IExService/SetGratingResponse")] + string SetGrating(int index, ExClient.ExConsole.GratingPara gratingpara); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetGrating", ReplyAction="http://tempuri.org/IExService/GetGratingResponse")] + ExClient.ExConsole.GratingPara GetGrating(int index); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/SetPrimitive", ReplyAction="http://tempuri.org/IExService/SetPrimitiveResponse")] + string SetPrimitive(int index, ExClient.ExConsole.PrimitivePara primitivepara); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetPrimitive", ReplyAction="http://tempuri.org/IExService/GetPrimitiveResponse")] + ExClient.ExConsole.PrimitivePara GetPrimitive(int index); + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] + public interface IExServiceCallback { + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/OnRunStop", ReplyAction="http://tempuri.org/IExService/OnRunStopResponse")] + string OnRunStop(bool runstop); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/OnServiceDispose", ReplyAction="http://tempuri.org/IExService/OnServiceDisposeResponse")] + void OnServiceDispose(); + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] + public interface IExServiceChannel : ExClient.ExConsole.IExService, System.ServiceModel.IClientChannel { + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] + public partial class ExServiceClient : System.ServiceModel.DuplexClientBase, ExClient.ExConsole.IExService { + + public ExServiceClient(System.ServiceModel.InstanceContext callbackInstance) : + base(callbackInstance) { + } + + public ExServiceClient(System.ServiceModel.InstanceContext callbackInstance, string endpointConfigurationName) : + base(callbackInstance, endpointConfigurationName) { + } + + public ExServiceClient(System.ServiceModel.InstanceContext callbackInstance, string endpointConfigurationName, string remoteAddress) : + base(callbackInstance, endpointConfigurationName, remoteAddress) { + } + + public ExServiceClient(System.ServiceModel.InstanceContext callbackInstance, string endpointConfigurationName, System.ServiceModel.EndpointAddress remoteAddress) : + base(callbackInstance, endpointConfigurationName, remoteAddress) { + } + + public ExServiceClient(System.ServiceModel.InstanceContext callbackInstance, System.ServiceModel.Channels.Binding binding, System.ServiceModel.EndpointAddress remoteAddress) : + base(callbackInstance, binding, remoteAddress) { + } + + public string Invoke(string ex) { + return base.Channel.Invoke(ex); + } + + public string InvokeScript(string ex, string script) { + return base.Channel.InvokeScript(ex, script); + } + + public string[] GetEx() { + return base.Channel.GetEx(); + } + + public string Terminate(string ex) { + return base.Channel.Terminate(ex); + } + + public bool get_RunStop() { + return base.Channel.get_RunStop(); + } + + public void set_RunStop(bool value) { + base.Channel.set_RunStop(value); + } + + public string Subscribe(bool sub_unsub) { + return base.Channel.Subscribe(sub_unsub); + } + + public string GetExType() { + return base.Channel.GetExType(); + } + + public string Set(string target, string property, object value) { + return base.Channel.Set(target, property, value); + } + + public string SetMany(string target, object[] propertyvaluepairs) { + return base.Channel.SetMany(target, propertyvaluepairs); + } + + public object Get(string target, string property) { + return base.Channel.Get(target, property); + } + + public object[] GetMany(string target, string[] properties) { + return base.Channel.GetMany(target, properties); + } + + public string SetExDesign(int index, ExClient.ExConsole.ExDesign exdesign) { + return base.Channel.SetExDesign(index, exdesign); + } + + public ExClient.ExConsole.ExDesign GetExDesign(int index) { + return base.Channel.GetExDesign(index); + } + + public string SetBar(int index, ExClient.ExConsole.BarPara barpara) { + return base.Channel.SetBar(index, barpara); + } + + public ExClient.ExConsole.BarPara GetBar(int index) { + return base.Channel.GetBar(index); + } + + public string SetGrating(int index, ExClient.ExConsole.GratingPara gratingpara) { + return base.Channel.SetGrating(index, gratingpara); + } + + public ExClient.ExConsole.GratingPara GetGrating(int index) { + return base.Channel.GetGrating(index); + } + + public string SetPrimitive(int index, ExClient.ExConsole.PrimitivePara primitivepara) { + return base.Channel.SetPrimitive(index, primitivepara); + } + + public ExClient.ExConsole.PrimitivePara GetPrimitive(int index) { + return base.Channel.GetPrimitive(index); + } + } +} diff --git a/ExClient/Service References/ExConsole/Reference.svcmap b/ExClient/Service References/ExConsole/Reference.svcmap new file mode 100644 index 0000000..54f77d3 --- /dev/null +++ b/ExClient/Service References/ExConsole/Reference.svcmap @@ -0,0 +1,36 @@ + + + + false + true + + false + false + false + + + true + Auto + true + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/StiLib.Core.xsd b/ExClient/Service References/ExConsole/StiLib.Core.xsd new file mode 100644 index 0000000..0027730 --- /dev/null +++ b/ExClient/Service References/ExConsole/StiLib.Core.xsd @@ -0,0 +1,109 @@ + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/StiLib.Vision.xsd b/ExClient/Service References/ExConsole/StiLib.Vision.xsd new file mode 100644 index 0000000..810e038 --- /dev/null +++ b/ExClient/Service References/ExConsole/StiLib.Vision.xsd @@ -0,0 +1,152 @@ + + + + + + + + + + true + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/configuration.svcinfo b/ExClient/Service References/ExConsole/configuration.svcinfo new file mode 100644 index 0000000..da583b9 --- /dev/null +++ b/ExClient/Service References/ExConsole/configuration.svcinfo @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/configuration91.svcinfo b/ExClient/Service References/ExConsole/configuration91.svcinfo new file mode 100644 index 0000000..a68a618 --- /dev/null +++ b/ExClient/Service References/ExConsole/configuration91.svcinfo @@ -0,0 +1,189 @@ + + + + + + + NetTcpBinding_IExService + + + 00:01:00 + + + 00:01:00 + + + 00:10:00 + + + 00:01:00 + + + False + + + Buffered + + + System.ServiceModel.OleTransactionsProtocol + + + StrongWildcard + + + 10 + + + 524288 + + + 65536 + + + 10 + + + 65536 + + + False + + + System.ServiceModel.Configuration.XmlDictionaryReaderQuotasElement + + + 32 + + + 8192 + + + 16384 + + + 4096 + + + 16384 + + + System.ServiceModel.Configuration.StandardBindingOptionalReliableSessionElement + + + True + + + 00:10:00 + + + False + + + System.ServiceModel.Configuration.NetTcpSecurityElement + + + None + + + System.ServiceModel.Configuration.TcpTransportSecurityElement + + + Windows + + + EncryptAndSign + + + System.ServiceModel.Configuration.MessageSecurityOverTcpElement + + + Windows + + + Basic256 + + + + + + + + + net.tcp://zhangli:8080/ExServer + + + + + + netTcpBinding + + + NetTcpBinding_IExService + + + ExConsole.IExService + + + System.ServiceModel.Configuration.AddressHeaderCollectionElement + + + <Header /> + + + System.ServiceModel.Configuration.IdentityElement + + + System.ServiceModel.Configuration.UserPrincipalNameElement + + + + + + System.ServiceModel.Configuration.ServicePrincipalNameElement + + + + + + System.ServiceModel.Configuration.DnsElement + + + + + + System.ServiceModel.Configuration.RsaElement + + + + + + System.ServiceModel.Configuration.CertificateElement + + + + + + System.ServiceModel.Configuration.CertificateReferenceElement + + + My + + + LocalMachine + + + FindBySubjectDistinguishedName + + + + + + False + + + NetTcpBinding_IExService + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/service.wsdl b/ExClient/Service References/ExConsole/service.wsdl new file mode 100644 index 0000000..915c626 --- /dev/null +++ b/ExClient/Service References/ExConsole/service.wsdl @@ -0,0 +1,457 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + net.tcp://zhangli:8080/ExServer + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/service.xsd b/ExClient/Service References/ExConsole/service.xsd new file mode 100644 index 0000000..d6f5ef5 --- /dev/null +++ b/ExClient/Service References/ExConsole/service.xsd @@ -0,0 +1,312 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExConsole/service1.xsd b/ExClient/Service References/ExConsole/service1.xsd new file mode 100644 index 0000000..b4d5ff0 --- /dev/null +++ b/ExClient/Service References/ExConsole/service1.xsd @@ -0,0 +1,42 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExService/Arrays.xsd b/ExClient/Service References/ExService/Arrays.xsd index c7a5d70..548054e 100644 --- a/ExClient/Service References/ExService/Arrays.xsd +++ b/ExClient/Service References/ExService/Arrays.xsd @@ -6,4 +6,16 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExService/ExClient.ExService.BarPara.datasource b/ExClient/Service References/ExService/ExClient.ExService.BarPara.datasource new file mode 100644 index 0000000..60ae059 --- /dev/null +++ b/ExClient/Service References/ExService/ExClient.ExService.BarPara.datasource @@ -0,0 +1,10 @@ + + + + ExClient.ExService.BarPara, Service References.ExService.Reference.cs, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + \ No newline at end of file diff --git a/ExClient/Service References/ExService/ExClient.ExService.ExDesign.datasource b/ExClient/Service References/ExService/ExClient.ExService.ExDesign.datasource new file mode 100644 index 0000000..2e85521 --- /dev/null +++ b/ExClient/Service References/ExService/ExClient.ExService.ExDesign.datasource @@ -0,0 +1,10 @@ + + + + ExClient.ExService.ExDesign, Service References.ExService.Reference.cs, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + \ No newline at end of file diff --git a/ExClient/Service References/ExService/ExClient.ExService.GratingPara.datasource b/ExClient/Service References/ExService/ExClient.ExService.GratingPara.datasource new file mode 100644 index 0000000..a56009c --- /dev/null +++ b/ExClient/Service References/ExService/ExClient.ExService.GratingPara.datasource @@ -0,0 +1,10 @@ + + + + ExClient.ExService.GratingPara, Service References.ExService.Reference.cs, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + \ No newline at end of file diff --git a/ExClient/Service References/ExService/ExClient.ExService.PrimitivePara.datasource b/ExClient/Service References/ExService/ExClient.ExService.PrimitivePara.datasource new file mode 100644 index 0000000..265ae18 --- /dev/null +++ b/ExClient/Service References/ExService/ExClient.ExService.PrimitivePara.datasource @@ -0,0 +1,10 @@ + + + + ExClient.ExService.PrimitivePara, Service References.ExService.Reference.cs, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null + \ No newline at end of file diff --git a/ExClient/Service References/ExService/Microsoft.Xna.Framework.Graphics.xsd b/ExClient/Service References/ExService/Microsoft.Xna.Framework.Graphics.xsd new file mode 100644 index 0000000..0267afb --- /dev/null +++ b/ExClient/Service References/ExService/Microsoft.Xna.Framework.Graphics.xsd @@ -0,0 +1,75 @@ + + + + + + + + true + + + + + + + + + + + + + 1 + + + + + + + 2 + + + + + + + 3 + + + + + + + 4 + + + + + + + 6 + + + + + + + + + + + + + + + + + true + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExService/Microsoft.Xna.Framework.xsd b/ExClient/Service References/ExService/Microsoft.Xna.Framework.xsd new file mode 100644 index 0000000..2c863ad --- /dev/null +++ b/ExClient/Service References/ExService/Microsoft.Xna.Framework.xsd @@ -0,0 +1,17 @@ + + + + + + + true + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExService/Reference.cs b/ExClient/Service References/ExService/Reference.cs index dfb0674..e322c3e 100644 --- a/ExClient/Service References/ExService/Reference.cs +++ b/ExClient/Service References/ExService/Reference.cs @@ -1,7 +1,7 @@ //------------------------------------------------------------------------------ // // This code was generated by a tool. -// Runtime Version:2.0.50727.3074 +// Runtime Version:2.0.50727.3603 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -9,8 +9,1505 @@ //------------------------------------------------------------------------------ namespace ExClient.ExService { + using System.Runtime.Serialization; + using System; + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="ExDesign", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Core")] + [System.SerializableAttribute()] + public partial struct ExDesign : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.Color bgcolorField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int blockField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float brestTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.SLInterpolation[] conditionField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float durTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.ExPara[] exParaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.ExType[] exTypeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float posTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float preTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float srestTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int[] stimuliField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float trestTField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int trialField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.Color bgcolor { + get { + return this.bgcolorField; + } + set { + if ((this.bgcolorField.Equals(value) != true)) { + this.bgcolorField = value; + this.RaisePropertyChanged("bgcolor"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int block { + get { + return this.blockField; + } + set { + if ((this.blockField.Equals(value) != true)) { + this.blockField = value; + this.RaisePropertyChanged("block"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float brestT { + get { + return this.brestTField; + } + set { + if ((this.brestTField.Equals(value) != true)) { + this.brestTField = value; + this.RaisePropertyChanged("brestT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.SLInterpolation[] condition { + get { + return this.conditionField; + } + set { + if ((object.ReferenceEquals(this.conditionField, value) != true)) { + this.conditionField = value; + this.RaisePropertyChanged("condition"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float durT { + get { + return this.durTField; + } + set { + if ((this.durTField.Equals(value) != true)) { + this.durTField = value; + this.RaisePropertyChanged("durT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.ExPara[] exPara { + get { + return this.exParaField; + } + set { + if ((object.ReferenceEquals(this.exParaField, value) != true)) { + this.exParaField = value; + this.RaisePropertyChanged("exPara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.ExType[] exType { + get { + return this.exTypeField; + } + set { + if ((object.ReferenceEquals(this.exTypeField, value) != true)) { + this.exTypeField = value; + this.RaisePropertyChanged("exType"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float posT { + get { + return this.posTField; + } + set { + if ((this.posTField.Equals(value) != true)) { + this.posTField = value; + this.RaisePropertyChanged("posT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float preT { + get { + return this.preTField; + } + set { + if ((this.preTField.Equals(value) != true)) { + this.preTField = value; + this.RaisePropertyChanged("preT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float srestT { + get { + return this.srestTField; + } + set { + if ((this.srestTField.Equals(value) != true)) { + this.srestTField = value; + this.RaisePropertyChanged("srestT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int[] stimuli { + get { + return this.stimuliField; + } + set { + if ((object.ReferenceEquals(this.stimuliField, value) != true)) { + this.stimuliField = value; + this.RaisePropertyChanged("stimuli"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float trestT { + get { + return this.trestTField; + } + set { + if ((this.trestTField.Equals(value) != true)) { + this.trestTField = value; + this.RaisePropertyChanged("trestT"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int trial { + get { + return this.trialField; + } + set { + if ((this.trialField.Equals(value) != true)) { + this.trialField = value; + this.RaisePropertyChanged("trial"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="Color", Namespace="http://schemas.datacontract.org/2004/07/Microsoft.Xna.Framework.Graphics")] + [System.SerializableAttribute()] + public partial struct Color : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + private uint packedValueField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public uint packedValue { + get { + return this.packedValueField; + } + set { + if ((this.packedValueField.Equals(value) != true)) { + this.packedValueField = value; + this.RaisePropertyChanged("packedValue"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="SLInterpolation", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Core")] + [System.SerializableAttribute()] + public partial struct SLInterpolation : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float EndValueField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.Interpolation MethodField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float StartValueField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int ValueNField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float EndValue { + get { + return this.EndValueField; + } + set { + if ((this.EndValueField.Equals(value) != true)) { + this.EndValueField = value; + this.RaisePropertyChanged("EndValue"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.Interpolation Method { + get { + return this.MethodField; + } + set { + if ((this.MethodField.Equals(value) != true)) { + this.MethodField = value; + this.RaisePropertyChanged("Method"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float StartValue { + get { + return this.StartValueField; + } + set { + if ((this.StartValueField.Equals(value) != true)) { + this.StartValueField = value; + this.RaisePropertyChanged("StartValue"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int ValueN { + get { + return this.ValueNField; + } + set { + if ((this.ValueNField.Equals(value) != true)) { + this.ValueNField = value; + this.RaisePropertyChanged("ValueN"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="ExPara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Core")] + public enum ExPara : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + None = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Orientation = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Direction = 2, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Speed = 3, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Luminance = 4, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Contrast = 5, + + [System.Runtime.Serialization.EnumMemberAttribute()] + SpatialFreq = 6, + + [System.Runtime.Serialization.EnumMemberAttribute()] + SpatialPhase = 7, + + [System.Runtime.Serialization.EnumMemberAttribute()] + TemporalFreq = 8, + + [System.Runtime.Serialization.EnumMemberAttribute()] + TemporalPhase = 9, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Color = 10, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Disparity = 11, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Size = 12, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Location = 13, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="ExType", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Core")] + public enum ExType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + None = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + dBar = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + RF_dBar = 2, + + [System.Runtime.Serialization.EnumMemberAttribute()] + fBar = 3, + + [System.Runtime.Serialization.EnumMemberAttribute()] + RF_fBar = 4, + + [System.Runtime.Serialization.EnumMemberAttribute()] + dGrating = 5, + + [System.Runtime.Serialization.EnumMemberAttribute()] + fGrating = 6, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Plaid = 7, + + [System.Runtime.Serialization.EnumMemberAttribute()] + RandomLine = 8, + + [System.Runtime.Serialization.EnumMemberAttribute()] + OpticFlow = 9, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Two_dBar = 10, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Two_dGrating = 11, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Two_fBar = 12, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Two_fGrating = 13, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Context = 14, + + [System.Runtime.Serialization.EnumMemberAttribute()] + RF = 15, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="Interpolation", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Core")] + public enum Interpolation : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + Linear = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Log2 = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Log10 = 2, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="PrimitiveType", Namespace="http://schemas.datacontract.org/2004/07/Microsoft.Xna.Framework.Graphics")] + public enum PrimitiveType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + PointList = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + LineList = 2, + + [System.Runtime.Serialization.EnumMemberAttribute()] + LineStrip = 3, + + [System.Runtime.Serialization.EnumMemberAttribute()] + TriangleList = 4, + + [System.Runtime.Serialization.EnumMemberAttribute()] + TriangleFan = 6, + + [System.Runtime.Serialization.EnumMemberAttribute()] + TriangleStrip = 5, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="VertexPositionColor", Namespace="http://schemas.datacontract.org/2004/07/Microsoft.Xna.Framework.Graphics")] + [System.SerializableAttribute()] + public partial struct VertexPositionColor : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + private ExClient.ExService.Color ColorField; + + private ExClient.ExService.Vector3 PositionField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public ExClient.ExService.Color Color { + get { + return this.ColorField; + } + set { + if ((this.ColorField.Equals(value) != true)) { + this.ColorField = value; + this.RaisePropertyChanged("Color"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public ExClient.ExService.Vector3 Position { + get { + return this.PositionField; + } + set { + if ((this.PositionField.Equals(value) != true)) { + this.PositionField = value; + this.RaisePropertyChanged("Position"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="Vector3", Namespace="http://schemas.datacontract.org/2004/07/Microsoft.Xna.Framework")] + [System.SerializableAttribute()] + public partial struct Vector3 : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + private float XField; + + private float YField; + + private float ZField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public float X { + get { + return this.XField; + } + set { + if ((this.XField.Equals(value) != true)) { + this.XField = value; + this.RaisePropertyChanged("X"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public float Y { + get { + return this.YField; + } + set { + if ((this.YField.Equals(value) != true)) { + this.YField = value; + this.RaisePropertyChanged("Y"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute(IsRequired=true)] + public float Z { + get { + return this.ZField; + } + set { + if ((this.ZField.Equals(value) != true)) { + this.ZField = value; + this.RaisePropertyChanged("Z"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="BarPara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + [System.SerializableAttribute()] + public partial struct BarPara : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.vsBasePara BaseParaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float heightField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float widthField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.vsBasePara BasePara { + get { + return this.BaseParaField; + } + set { + if ((this.BaseParaField.Equals(value) != true)) { + this.BaseParaField = value; + this.RaisePropertyChanged("BasePara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float height { + get { + return this.heightField; + } + set { + if ((this.heightField.Equals(value) != true)) { + this.heightField = value; + this.RaisePropertyChanged("height"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float width { + get { + return this.widthField; + } + set { + if ((this.widthField.Equals(value) != true)) { + this.widthField = value; + this.RaisePropertyChanged("width"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="vsBasePara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + [System.SerializableAttribute()] + public partial struct vsBasePara : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.Vector3 centerField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.Color colorField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private string contentnameField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float diameterField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float directionField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private double lifetimeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float orientationField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.Vector3 orientation3DField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.PrimitiveType primitivetypeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float rotationspeedField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.Vector3 rotationspeed3DField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float spaceField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float speedField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.Vector3 speed3DField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private bool visibleField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.VSType vstypeField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.Vector3 center { + get { + return this.centerField; + } + set { + if ((this.centerField.Equals(value) != true)) { + this.centerField = value; + this.RaisePropertyChanged("center"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.Color color { + get { + return this.colorField; + } + set { + if ((this.colorField.Equals(value) != true)) { + this.colorField = value; + this.RaisePropertyChanged("color"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public string contentname { + get { + return this.contentnameField; + } + set { + if ((object.ReferenceEquals(this.contentnameField, value) != true)) { + this.contentnameField = value; + this.RaisePropertyChanged("contentname"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float diameter { + get { + return this.diameterField; + } + set { + if ((this.diameterField.Equals(value) != true)) { + this.diameterField = value; + this.RaisePropertyChanged("diameter"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float direction { + get { + return this.directionField; + } + set { + if ((this.directionField.Equals(value) != true)) { + this.directionField = value; + this.RaisePropertyChanged("direction"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public double lifetime { + get { + return this.lifetimeField; + } + set { + if ((this.lifetimeField.Equals(value) != true)) { + this.lifetimeField = value; + this.RaisePropertyChanged("lifetime"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float orientation { + get { + return this.orientationField; + } + set { + if ((this.orientationField.Equals(value) != true)) { + this.orientationField = value; + this.RaisePropertyChanged("orientation"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.Vector3 orientation3D { + get { + return this.orientation3DField; + } + set { + if ((this.orientation3DField.Equals(value) != true)) { + this.orientation3DField = value; + this.RaisePropertyChanged("orientation3D"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.PrimitiveType primitivetype { + get { + return this.primitivetypeField; + } + set { + if ((this.primitivetypeField.Equals(value) != true)) { + this.primitivetypeField = value; + this.RaisePropertyChanged("primitivetype"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float rotationspeed { + get { + return this.rotationspeedField; + } + set { + if ((this.rotationspeedField.Equals(value) != true)) { + this.rotationspeedField = value; + this.RaisePropertyChanged("rotationspeed"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.Vector3 rotationspeed3D { + get { + return this.rotationspeed3DField; + } + set { + if ((this.rotationspeed3DField.Equals(value) != true)) { + this.rotationspeed3DField = value; + this.RaisePropertyChanged("rotationspeed3D"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float space { + get { + return this.spaceField; + } + set { + if ((this.spaceField.Equals(value) != true)) { + this.spaceField = value; + this.RaisePropertyChanged("space"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float speed { + get { + return this.speedField; + } + set { + if ((this.speedField.Equals(value) != true)) { + this.speedField = value; + this.RaisePropertyChanged("speed"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.Vector3 speed3D { + get { + return this.speed3DField; + } + set { + if ((this.speed3DField.Equals(value) != true)) { + this.speed3DField = value; + this.RaisePropertyChanged("speed3D"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public bool visible { + get { + return this.visibleField; + } + set { + if ((this.visibleField.Equals(value) != true)) { + this.visibleField = value; + this.RaisePropertyChanged("visible"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.VSType vstype { + get { + return this.vstypeField; + } + set { + if ((this.vstypeField.Equals(value) != true)) { + this.vstypeField = value; + this.RaisePropertyChanged("vstype"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="VSType", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + public enum VSType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + None = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Bar = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Grating = 2, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Image = 3, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Primitive = 4, + + [System.Runtime.Serialization.EnumMemberAttribute()] + SLModel = 5, + + [System.Runtime.Serialization.EnumMemberAttribute()] + SLQuad = 6, + + [System.Runtime.Serialization.EnumMemberAttribute()] + SLVideo = 7, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Text = 8, + + [System.Runtime.Serialization.EnumMemberAttribute()] + VSCollection = 9, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Mask = 10, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="GratingPara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + [System.SerializableAttribute()] + public partial struct GratingPara : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.vsBasePara BaseParaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float contrastField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.GratingType gratingtypeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.Color lhcolorField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float luminanceField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.MaskPara maskparaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.MoveType movetypeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int resolutionField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.Color rlcolorField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float sfField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.Shape shapeField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float sphaseField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private float tfField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.vsBasePara BasePara { + get { + return this.BaseParaField; + } + set { + if ((this.BaseParaField.Equals(value) != true)) { + this.BaseParaField = value; + this.RaisePropertyChanged("BasePara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float contrast { + get { + return this.contrastField; + } + set { + if ((this.contrastField.Equals(value) != true)) { + this.contrastField = value; + this.RaisePropertyChanged("contrast"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.GratingType gratingtype { + get { + return this.gratingtypeField; + } + set { + if ((this.gratingtypeField.Equals(value) != true)) { + this.gratingtypeField = value; + this.RaisePropertyChanged("gratingtype"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.Color lhcolor { + get { + return this.lhcolorField; + } + set { + if ((this.lhcolorField.Equals(value) != true)) { + this.lhcolorField = value; + this.RaisePropertyChanged("lhcolor"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float luminance { + get { + return this.luminanceField; + } + set { + if ((this.luminanceField.Equals(value) != true)) { + this.luminanceField = value; + this.RaisePropertyChanged("luminance"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.MaskPara maskpara { + get { + return this.maskparaField; + } + set { + if ((this.maskparaField.Equals(value) != true)) { + this.maskparaField = value; + this.RaisePropertyChanged("maskpara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.MoveType movetype { + get { + return this.movetypeField; + } + set { + if ((this.movetypeField.Equals(value) != true)) { + this.movetypeField = value; + this.RaisePropertyChanged("movetype"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int resolution { + get { + return this.resolutionField; + } + set { + if ((this.resolutionField.Equals(value) != true)) { + this.resolutionField = value; + this.RaisePropertyChanged("resolution"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.Color rlcolor { + get { + return this.rlcolorField; + } + set { + if ((this.rlcolorField.Equals(value) != true)) { + this.rlcolorField = value; + this.RaisePropertyChanged("rlcolor"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float sf { + get { + return this.sfField; + } + set { + if ((this.sfField.Equals(value) != true)) { + this.sfField = value; + this.RaisePropertyChanged("sf"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.Shape shape { + get { + return this.shapeField; + } + set { + if ((this.shapeField.Equals(value) != true)) { + this.shapeField = value; + this.RaisePropertyChanged("shape"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float sphase { + get { + return this.sphaseField; + } + set { + if ((this.sphaseField.Equals(value) != true)) { + this.sphaseField = value; + this.RaisePropertyChanged("sphase"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public float tf { + get { + return this.tfField; + } + set { + if ((this.tfField.Equals(value) != true)) { + this.tfField = value; + this.RaisePropertyChanged("tf"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="MaskPara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + [System.SerializableAttribute()] + public partial struct MaskPara : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.vsBasePara BaseParaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.MaskType masktypeField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.vsBasePara BasePara { + get { + return this.BaseParaField; + } + set { + if ((this.BaseParaField.Equals(value) != true)) { + this.BaseParaField = value; + this.RaisePropertyChanged("BasePara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.MaskType masktype { + get { + return this.masktypeField; + } + set { + if ((this.masktypeField.Equals(value) != true)) { + this.masktypeField = value; + this.RaisePropertyChanged("masktype"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="GratingType", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + public enum GratingType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + Sinusoidal = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Linear = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Square = 2, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="MoveType", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + public enum MoveType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + Drifting = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Standing = 1, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="Shape", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + public enum Shape : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + Custom = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Point = 1, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Line = 2, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Curve = 3, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Triangle = 4, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Rectangle = 5, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Quadrate = 6, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Cuboid = 7, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Cube = 8, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Ellipse = 9, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Circle = 10, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Ellipsoid = 11, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Sphere = 12, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Cone = 13, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Cylinder = 14, + } + + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="MaskType", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + public enum MaskType : int { + + [System.Runtime.Serialization.EnumMemberAttribute()] + None = 0, + + [System.Runtime.Serialization.EnumMemberAttribute()] + Gaussian = 1, + } + + [System.Diagnostics.DebuggerStepThroughAttribute()] + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.Runtime.Serialization", "3.0.0.0")] + [System.Runtime.Serialization.DataContractAttribute(Name="PrimitivePara", Namespace="http://schemas.datacontract.org/2004/07/StiLib.Vision")] + [System.SerializableAttribute()] + public partial struct PrimitivePara : System.Runtime.Serialization.IExtensibleDataObject, System.ComponentModel.INotifyPropertyChanged { + + [System.NonSerializedAttribute()] + private System.Runtime.Serialization.ExtensionDataObject extensionDataField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.vsBasePara BaseParaField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private int[] indicesField; + + [System.Runtime.Serialization.OptionalFieldAttribute()] + private ExClient.ExService.VertexPositionColor[] verticesField; + + public System.Runtime.Serialization.ExtensionDataObject ExtensionData { + get { + return this.extensionDataField; + } + set { + this.extensionDataField = value; + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.vsBasePara BasePara { + get { + return this.BaseParaField; + } + set { + if ((this.BaseParaField.Equals(value) != true)) { + this.BaseParaField = value; + this.RaisePropertyChanged("BasePara"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public int[] indices { + get { + return this.indicesField; + } + set { + if ((object.ReferenceEquals(this.indicesField, value) != true)) { + this.indicesField = value; + this.RaisePropertyChanged("indices"); + } + } + } + + [System.Runtime.Serialization.DataMemberAttribute()] + public ExClient.ExService.VertexPositionColor[] vertices { + get { + return this.verticesField; + } + set { + if ((object.ReferenceEquals(this.verticesField, value) != true)) { + this.verticesField = value; + this.RaisePropertyChanged("vertices"); + } + } + } + + public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged; + + void RaisePropertyChanged(string propertyName) { + System.ComponentModel.PropertyChangedEventHandler propertyChanged = this.PropertyChanged; + if ((propertyChanged != null)) { + propertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(propertyName)); + } + } + } + [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] [System.ServiceModel.ServiceContractAttribute(ConfigurationName="ExService.IExService", CallbackContract=typeof(ExClient.ExService.IExServiceCallback))] public interface IExService { @@ -35,6 +1532,149 @@ public interface IExService { [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/Subscribe", ReplyAction="http://tempuri.org/IExService/SubscribeResponse")] string Subscribe(bool sub_unsub); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetExType", ReplyAction="http://tempuri.org/IExService/GetExTypeResponse")] + string GetExType(); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/Set", ReplyAction="http://tempuri.org/IExService/SetResponse")] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(string[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(object[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(int[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExDesign))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.SLInterpolation[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.SLInterpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Interpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExPara[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExType[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Color))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.PrimitiveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VertexPositionColor[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VertexPositionColor))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.BarPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.vsBasePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.GratingPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.GratingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MaskPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MaskType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MoveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Shape))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.PrimitivePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Vector3))] + string Set(string target, string property, object value); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/SetMany", ReplyAction="http://tempuri.org/IExService/SetManyResponse")] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(string[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(object[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(int[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExDesign))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.SLInterpolation[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.SLInterpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Interpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExPara[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExType[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Color))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.PrimitiveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VertexPositionColor[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VertexPositionColor))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.BarPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.vsBasePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.GratingPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.GratingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MaskPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MaskType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MoveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Shape))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.PrimitivePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Vector3))] + string SetMany(string target, object[] propertyvaluepairs); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/Get", ReplyAction="http://tempuri.org/IExService/GetResponse")] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(string[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(object[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(int[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExDesign))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.SLInterpolation[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.SLInterpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Interpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExPara[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExType[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Color))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.PrimitiveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VertexPositionColor[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VertexPositionColor))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.BarPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.vsBasePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.GratingPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.GratingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MaskPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MaskType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MoveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Shape))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.PrimitivePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Vector3))] + object Get(string target, string property); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetMany", ReplyAction="http://tempuri.org/IExService/GetManyResponse")] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(string[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(object[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(int[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExDesign))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.SLInterpolation[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.SLInterpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Interpolation))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExPara[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExType[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.ExType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Color))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.PrimitiveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VertexPositionColor[]))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VertexPositionColor))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.BarPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.vsBasePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.VSType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.GratingPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.GratingType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MaskPara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MaskType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.MoveType))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Shape))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.PrimitivePara))] + [System.ServiceModel.ServiceKnownTypeAttribute(typeof(ExClient.ExService.Vector3))] + object[] GetMany(string target, string[] properties); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/SetExDesign", ReplyAction="http://tempuri.org/IExService/SetExDesignResponse")] + string SetExDesign(int index, ExClient.ExService.ExDesign exdesign); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetExDesign", ReplyAction="http://tempuri.org/IExService/GetExDesignResponse")] + ExClient.ExService.ExDesign GetExDesign(int index); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/SetBar", ReplyAction="http://tempuri.org/IExService/SetBarResponse")] + string SetBar(int index, ExClient.ExService.BarPara barpara); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetBar", ReplyAction="http://tempuri.org/IExService/GetBarResponse")] + ExClient.ExService.BarPara GetBar(int index); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/SetGrating", ReplyAction="http://tempuri.org/IExService/SetGratingResponse")] + string SetGrating(int index, ExClient.ExService.GratingPara gratingpara); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetGrating", ReplyAction="http://tempuri.org/IExService/GetGratingResponse")] + ExClient.ExService.GratingPara GetGrating(int index); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/SetPrimitive", ReplyAction="http://tempuri.org/IExService/SetPrimitiveResponse")] + string SetPrimitive(int index, ExClient.ExService.PrimitivePara primitivepara); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/GetPrimitive", ReplyAction="http://tempuri.org/IExService/GetPrimitiveResponse")] + ExClient.ExService.PrimitivePara GetPrimitive(int index); } [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] @@ -42,6 +1682,9 @@ public interface IExServiceCallback { [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/OnRunStop", ReplyAction="http://tempuri.org/IExService/OnRunStopResponse")] string OnRunStop(bool runstop); + + [System.ServiceModel.OperationContractAttribute(Action="http://tempuri.org/IExService/OnServiceDispose", ReplyAction="http://tempuri.org/IExService/OnServiceDisposeResponse")] + void OnServiceDispose(); } [System.CodeDom.Compiler.GeneratedCodeAttribute("System.ServiceModel", "3.0.0.0")] @@ -99,5 +1742,57 @@ public void set_RunStop(bool value) { public string Subscribe(bool sub_unsub) { return base.Channel.Subscribe(sub_unsub); } + + public string GetExType() { + return base.Channel.GetExType(); + } + + public string Set(string target, string property, object value) { + return base.Channel.Set(target, property, value); + } + + public string SetMany(string target, object[] propertyvaluepairs) { + return base.Channel.SetMany(target, propertyvaluepairs); + } + + public object Get(string target, string property) { + return base.Channel.Get(target, property); + } + + public object[] GetMany(string target, string[] properties) { + return base.Channel.GetMany(target, properties); + } + + public string SetExDesign(int index, ExClient.ExService.ExDesign exdesign) { + return base.Channel.SetExDesign(index, exdesign); + } + + public ExClient.ExService.ExDesign GetExDesign(int index) { + return base.Channel.GetExDesign(index); + } + + public string SetBar(int index, ExClient.ExService.BarPara barpara) { + return base.Channel.SetBar(index, barpara); + } + + public ExClient.ExService.BarPara GetBar(int index) { + return base.Channel.GetBar(index); + } + + public string SetGrating(int index, ExClient.ExService.GratingPara gratingpara) { + return base.Channel.SetGrating(index, gratingpara); + } + + public ExClient.ExService.GratingPara GetGrating(int index) { + return base.Channel.GetGrating(index); + } + + public string SetPrimitive(int index, ExClient.ExService.PrimitivePara primitivepara) { + return base.Channel.SetPrimitive(index, primitivepara); + } + + public ExClient.ExService.PrimitivePara GetPrimitive(int index) { + return base.Channel.GetPrimitive(index); + } } } diff --git a/ExClient/Service References/ExService/Reference.svcmap b/ExClient/Service References/ExService/Reference.svcmap index 513597f..ce0a47a 100644 --- a/ExClient/Service References/ExService/Reference.svcmap +++ b/ExClient/Service References/ExService/Reference.svcmap @@ -1,5 +1,5 @@ - + false true @@ -17,13 +17,17 @@ - + - - - - + + + + + + + + diff --git a/ExClient/Service References/ExService/StiLib.Core.xsd b/ExClient/Service References/ExService/StiLib.Core.xsd new file mode 100644 index 0000000..0027730 --- /dev/null +++ b/ExClient/Service References/ExService/StiLib.Core.xsd @@ -0,0 +1,109 @@ + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExService/StiLib.Vision.xsd b/ExClient/Service References/ExService/StiLib.Vision.xsd new file mode 100644 index 0000000..810e038 --- /dev/null +++ b/ExClient/Service References/ExService/StiLib.Vision.xsd @@ -0,0 +1,152 @@ + + + + + + + + + + true + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + true + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/Service References/ExService/configuration.svcinfo b/ExClient/Service References/ExService/configuration.svcinfo index d46d96e..2e40f67 100644 --- a/ExClient/Service References/ExService/configuration.svcinfo +++ b/ExClient/Service References/ExService/configuration.svcinfo @@ -2,9 +2,9 @@ - + - + \ No newline at end of file diff --git a/ExClient/Service References/ExService/configuration91.svcinfo b/ExClient/Service References/ExService/configuration91.svcinfo index 81aead8..4f495a6 100644 --- a/ExClient/Service References/ExService/configuration91.svcinfo +++ b/ExClient/Service References/ExService/configuration91.svcinfo @@ -1,10 +1,10 @@ - + - + - NetTcpBinding_IExService + NetTcpBinding_IExService1 00:01:00 @@ -106,10 +106,10 @@ - + - net.tcp://zhangli:8080/ExServer + net.tcp://zhangli:8081/ExServer @@ -118,7 +118,7 @@ netTcpBinding - NetTcpBinding_IExService + NetTcpBinding_IExService1 ExService.IExService @@ -181,7 +181,7 @@ False - NetTcpBinding_IExService + NetTcpBinding_IExService1 diff --git a/ExClient/Service References/ExService/service.wsdl b/ExClient/Service References/ExService/service.wsdl index de901e4..700bbaf 100644 --- a/ExClient/Service References/ExService/service.wsdl +++ b/ExClient/Service References/ExService/service.wsdl @@ -1,5 +1,5 @@  - + @@ -15,6 +15,10 @@ + + + + @@ -59,12 +63,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -94,10 +182,66 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -166,6 +310,123 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -175,12 +436,21 @@ + + + + + + + + + - + - + - net.tcp://zhangli:8080/ExServer + net.tcp://zhangli:8081/ExServer diff --git a/ExClient/Service References/ExService/service.xsd b/ExClient/Service References/ExService/service.xsd index 7287c4d..d6f5ef5 100644 --- a/ExClient/Service References/ExService/service.xsd +++ b/ExClient/Service References/ExService/service.xsd @@ -1,6 +1,8 @@  + + @@ -94,6 +96,195 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -108,4 +299,14 @@ + + + + + + + + + + \ No newline at end of file diff --git a/ExClient/app.config b/ExClient/app.config index 89e18bd..e426fcc 100644 --- a/ExClient/app.config +++ b/ExClient/app.config @@ -1,7 +1,6 @@  - + + + + + + + + + \ No newline at end of file diff --git a/ExServer/Content/Arial.spritefont b/ExServer/Content/Arial.spritefont deleted file mode 100644 index 04185ca..0000000 --- a/ExServer/Content/Arial.spritefont +++ /dev/null @@ -1,22 +0,0 @@ - - - - Arial - 14 - 0 - true - - - - - -  - - - - Ͱ - Ͽ - - - - \ No newline at end of file diff --git a/ExServer/Content/Content.contentproj b/ExServer/Content/Content.contentproj index a8cb189..0dc1c0c 100644 --- a/ExServer/Content/Content.contentproj +++ b/ExServer/Content/Content.contentproj @@ -1,6 +1,6 @@  - 5c042d84-7dfd-4499-adac-5288a4b42f2a + 336c44a3-c669-41da-9075-cd0a1d8a921b {96E2B04D-8817-42c6-938A-82C39BA4D311};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} Debug x86 @@ -38,7 +38,8 @@ - + + Arial.spritefont Arial FontDescriptionImporter FontDescriptionProcessor diff --git a/ExServer/ExServer.csproj b/ExServer/ExServer.csproj index 80b995c..2178f09 100644 --- a/ExServer/ExServer.csproj +++ b/ExServer/ExServer.csproj @@ -1,6 +1,6 @@  - {96007656-20A9-4D74-B573-65CC8FCC3B96} + {70647B03-7BFD-4FD1-B95B-4705AF5918DF} {6D335F3A-9D43-41b4-9D22-F6F17C4BE596};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC} Debug x86 @@ -11,7 +11,7 @@ v3.5 v3.1 Windows - c20c8402-988a-42b2-967d-97d3afdaabae + a00aa1a8-26b3-40ec-9cec-766c6f04cc71 Game.ico GameThumbnail.png publish\ @@ -67,10 +67,6 @@ False - - False - ..\StiLib\bin\x86\Release\StiLib.dll - False @@ -91,11 +87,11 @@ + + Form - - @@ -103,7 +99,7 @@ - 5c042d84-7dfd-4499-adac-5288a4b42f2a + 336c44a3-c669-41da-9075-cd0a1d8a921b False @@ -145,7 +141,13 @@ - + + {C54D9FC8-0FCE-48C4-976B-0DD2B646DE71} + StiLib + + + + diff --git a/ExServer/ExServer.sln b/ExServer/ExServer.sln deleted file mode 100644 index 970fb27..0000000 --- a/ExServer/ExServer.sln +++ /dev/null @@ -1,22 +0,0 @@ - -Microsoft Visual Studio Solution File, Format Version 10.00 -# Visual Studio 2008 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ExServer", "ExServer.csproj", "{96007656-20A9-4D74-B573-65CC8FCC3B96}" -EndProject -Global - GlobalSection(SolutionConfigurationPlatforms) = preSolution - Debug|x86 = Debug|x86 - Release|x86 = Release|x86 - EndGlobalSection - GlobalSection(ProjectConfigurationPlatforms) = postSolution - {96007656-20A9-4D74-B573-65CC8FCC3B96}.Debug|x86.ActiveCfg = Debug|x86 - {96007656-20A9-4D74-B573-65CC8FCC3B96}.Debug|x86.Build.0 = Debug|x86 - {96007656-20A9-4D74-B573-65CC8FCC3B96}.Release|x86.ActiveCfg = Release|x86 - {96007656-20A9-4D74-B573-65CC8FCC3B96}.Release|x86.Build.0 = Release|x86 - {5C042D84-7DFD-4499-ADAC-5288A4B42F2A}.Debug|x86.ActiveCfg = Debug|x86 - {5C042D84-7DFD-4499-ADAC-5288A4B42F2A}.Release|x86.ActiveCfg = Release|x86 - EndGlobalSection - GlobalSection(SolutionProperties) = preSolution - HideSolutionNode = FALSE - EndGlobalSection -EndGlobal diff --git a/ExServer/ExServer.suo b/ExServer/ExServer.suo deleted file mode 100644 index 4b99c76cdb5b00795788333a166da2e661a22b37..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 15360 zcmeHNUu;`f89#2fuH9gN+EUW4E2iyWql=e6u9GHfnd3NFHoGZxmQ<4wIEiiCIJU8! zG}SU`AOyT1c$h||Y0{9k3C5T-38ujVf<7Q^47vvpf+zOI69a?pyw-|zdrbNud=yZ-#W*AKiWYRW0GU97F|5<5)yJ-8;xa;Fg6 zaKYbe>+9?4rVzNiQLdvI_yDrrWUS%MsJY&^fOdj*fj$Dd6?7ZucF;#bcYv_`;vncQ z5Z8YX>b;w``=urw9u?a>9Ez5qNpty_m`VF$nFhZpxdvG=i+V-GB>!c|Gl#2Y zJqHR*w!~lJ*F+kftv4Hl^=fnWk!$$4K{)rd&fDVB^0rG-A2|5fq z0%CvnqW+X|eIM%kjq78m9{_cO`i*;RAHa2=@!OC3xarxTaXn z62_3gNW5}fOK3d`jG4vVG(MDn2G7eto-g57Gwh=f-Zt=;_|I5@rI!B)WJp4W1yO+H z8R?T6$#Ea}GhWfgD?4rS#ko3Xw5jFK^(5{V=y^%B5citp z)H8J}3u{V&N40(v%?p?Y#`1MXVi>k@lCx z?@}c)O=3;UunS@VTk^Y#2}9sdzRY*r^0$sZkN%f1X4SKK%xA!}1bOIz>LF1N_%kkJ zjOLa<YJGkGwo0l$`1v&=hAiGVueVixBVY8W9`KmC zA93wBKlJZ@f9*vC`Ay?JPtmG7iPe=}D` zyVf>ZHl-bGyHm!kos?}@Mys9d(I?JA$bdXi!l%TizebS^ZC)?62-;)DJ%zo+i8 zIJK$0$2C7_+@zmlWTkan*;xu2pO*fQoR#+1_M(2n{wuuQ^52bDpD+TiNnqT0Xdq+0 zS{t8+zBDVyzdY=ZV{*&?DB6D2=s1MYb1h2ny&0^?1)CH`!#Wl7Puj*FkX!y{{8_;m z1F(V=EP`{*$ZrHP(c@RGj#*x3^{|Tjt3Y5kGAPRjWWetIu=i2CML-$A)fk8%(pb%E32eZ!)5!fyE(z6An56*~XSV#!EnwHwRQ|?MS z&*!kC2HWQ^CXU|rLGakOe)-7je|qK0o|k6sh=_N8_V;t&Jp9w}t3$t^yY#OWZdo8l zEWY(<@cv8ZAN&3vUiiw{wKrekU3!JV)ZWW$mk&i=e1875?;d*pL~HL0;g(lK-2T>q z?03&fF#AqG<^u3caaDdq?RGI&?^KRI4y0l3e|o0_1a z9j;pALjOZw&e+eb|M@i9{@m#Ham3T)nt;6~L0TRaS5@O|qq(i({wMkBVr$@V!|eYa zfhEjK-Z_jp3u(q64gDWyVe|P<%GihYn3I$?&HO0t6dmL@-@^R2JpRw1gJ%pQtkpiZ z>#k)ui1lYz45zpT`hKI@hlkwTWzqZWdjCC!_=7sgNQ6;gvlVD({11Y!-hUaBo{AAg z7@mdRtY6yPSjC(5i!W5Pate}h7qBd4=NI!oo{hDuf35MiuMYTEc)Oi{#;ecp3uU9& zySb=(%a6N`F!!oIyY+Tqqd*ke6g>fTh%xd;$4W%dep2C--YM2xj9nWZXsrT3T)5EY zeSYn|d)DYBO>?k{kTi&}JtPJ;I;KYW)7bMsBoyrbdiJ8`$ldB6`z?T2ta#6ulsg`2 ztQ=>ic_DxD)mqa04Ry|>+ns~o%|eO<^kf0w+yz(pfBiid{Vr?zzb@1~1#vt66KFdD zVrex0eX2>rZ#{knsc!lApshwQv;H~9PS5TBdQ$JMX%5wxgV;}cFgz4LQ_QD}iN#Vp zR?aLgWtZedBr_Wiuf&qYo9Y{9mn%G~7U21fmWn_*uSs8)d+72AeW^25#tWfB#Z*GzJmK5@&7 zX>9<{nPLTSpNTG=*Ku42WJ>lFX0W%f-+w$%cmCUnS>0mpNl)w&cM7RBEY!M;JZX16 zIjhC&=ZF6JE1qqrw`FY6`T19CY6bGnuR>i_=H6{(zqD?v`VY+Z>+F*p{D-N#kx=Z+ z^s;#N2i|h@C#B>&-+pKK*%ibF<0G*U&(b@WGc`7;vHu)<y3oVvyw?X=m|+vULo&=UpIZ?2?B|3&%t#pVejEU%&eyry$yk2@_m%-& zK0sGoW?m_PqB;}s8RPB;yb&syC8Z#_j={%AA`|>iNau9MibCxF;g0sNth9hJFw5bd zFXt-esLDpIdHCL%jVWjlFU?QWGhyW|01x?nf`Z-`afF~YstNp zEaut1nv9G)g(uBd)6ReVs`9sLtWWMd6`}DZ$GJ&YWNWmpc3bn}zb>a?nQ^1`R#3e9 zFCgYR8iRXrMgM2DZDN#F-l~S$dHTSM=jj|%E!I1&JO5+Q9C7S?uD!8UJ)~W`nA2>g zc2jfcm5Z=0#^_En&1j_gOxxFgv#?zwD);|#;>$LfwNLu6X+QT2?E2iuZt#LE^m-p& zdto%&+PwHGcxFrxa+k=&R@oY(+gl~=?C>5onWY>Ds$GprMS?IXX zJil8JL8w`+#))QmuD586d%4zGt{1&qSHq*0NC9=jLPH_`YBi+7Z9>-Q@6Wk%N z%B*~&S-$JVd*4}SEIzsWM?bGeMgLx0~?2n{})G{tp{1%ZLB~ diff --git a/ExServer/Main.cs b/ExServer/Main.cs index f384564..153e3c9 100644 --- a/ExServer/Main.cs +++ b/ExServer/Main.cs @@ -6,11 +6,11 @@ namespace ExServer { - [ServiceBehavior(InstanceContextMode=InstanceContextMode.Single,ConcurrencyMode = ConcurrencyMode.Reentrant)] + [ServiceBehavior(InstanceContextMode = InstanceContextMode.Single, ConcurrencyMode = ConcurrencyMode.Reentrant)] public class Server : ExService { private Text text; - private string hr=""; + private string hr = ""; public Server() @@ -21,7 +21,7 @@ public Server() } - public override string Invoke(string ex) + public override string Invoke(string ex) { var h = base.Invoke(ex); if (string.IsNullOrEmpty(h)) diff --git a/ExServer/Program.cs b/ExServer/Program.cs index 87a9f55..839846e 100644 --- a/ExServer/Program.cs +++ b/ExServer/Program.cs @@ -11,7 +11,7 @@ static class Program static void Main(string[] args) { var service = new Server(); - + ServiceHost host = new ServiceHost(service); host.Open(); diff --git a/ExServer/Properties/AssemblyInfo.cs b/ExServer/Properties/AssemblyInfo.cs index c88de56..c55ffbe 100644 --- a/ExServer/Properties/AssemblyInfo.cs +++ b/ExServer/Properties/AssemblyInfo.cs @@ -20,7 +20,7 @@ [assembly: ComVisible(false)] // The following GUID is for the ID of the typelib if this project is exposed to COM -[assembly: Guid("44473abf-f5dd-4d30-85c0-574b02bbe559")] +[assembly: Guid("3f82080c-6079-4209-b41e-906e055a6b13")] // Version information for an assembly consists of the following four values: @@ -31,4 +31,4 @@ // Revision // [assembly: AssemblyVersion("1.0.8.0")] -[assembly: AssemblyFileVersionAttribute("1.0.8")] +[assembly: AssemblyFileVersionAttribute("1.0.8.0")] diff --git a/Release/BasicServer.fsx b/Release/BasicServer.fsx index 75db784..1f98e99 100644 --- a/Release/BasicServer.fsx +++ b/Release/BasicServer.fsx @@ -1,6 +1,6 @@ // F# Script File : BasicServer.fsx // -// StiLib Basic Server In F# Scripting +// StiLib Basic Experiment Server In F# Scripting // // Copyright (c) 2009-10-17 Zhang Li @@ -41,7 +41,7 @@ end let MyExperiment = new MyEx(Text = "BasicServer In F# Scripting") // Server Hosting -let Host = new ServiceHost(MyExperiment, new Uri("net.tcp://zhangli:8080/ExServer")) +let Host = new ServiceHost(MyExperiment, new Uri("net.tcp://" + MyExperiment.SLConfig.["localhost"] + ":8080/ExServer")) Host.AddServiceEndpoint(typeof, new NetTcpBinding(SecurityMode.None), "") let mutable metabehavior = new ServiceMetadataBehavior() diff --git a/Release/CenterSurround_2(Server).fsx b/Release/CenterSurround_2(Server).fsx index 72f367b..6af103d 100644 --- a/Release/CenterSurround_2(Server).fsx +++ b/Release/CenterSurround_2(Server).fsx @@ -45,18 +45,27 @@ type MyEx = class let mutable gpara = GratingPara.Default gpara.tf <- 0.0f gpara.sf <- 0.8f - gpara.sphase <- 0.25f + gpara.sphase <- 0.0f gpara.BasePara.diameter <- 2.0f // Center Size - gpara.BasePara.center <- new Vector3(0.0f, 0.0f, 0.0f) // Center Center + gpara.BasePara.center <- new Vector3(0.0f, 0.5f, 0.0f) // Center Center this.cgrating <- new Grating(this.GraphicsDevice, this.Services, this.SLConfig.["content"], gpara) this.cmask <- new Primitive(this.GraphicsDevice, PrimitivePara.Circle(gpara.BasePara.diameter, this.ex.Exdesign.bgcolor, gpara.BasePara.center, this.ex.Exdesign.bgcolor, 100, true)) this.cmask.Visible <- false gpara.BasePara.diameter <- 5.0f // Surround Size - gpara.BasePara.center <- new Vector3(0.0f, 0.0f, 0.0f) // Surround Center + gpara.BasePara.center <- new Vector3(0.0f, 0.5f, 0.0f) // Surround Center this.sgrating <- new Grating(this.GraphicsDevice, this.Services, this.SLConfig.["content"], gpara) + override this.GetExType() = + "CenterSurround_2" + + override this.GetGrating(index) = + if index=0 then + this.cgrating.Para + else + this.sgrating.Para + override this.SetFlow() = this.ex.Flow.TrialCount <- 0 this.ex.Flow.StiCount <- 0 @@ -109,7 +118,10 @@ type MyEx = class this.ex.Flow.IsStiOff <- false if this.ex.Flow.TrialCount - this.ex.Exdesign.trial = -1 && this.ex.Flow.StiCount - this.ex.Exdesign.stimuli.[0] = -1 then this.GO_OVER <- false - // Notify Service Client that one experiment block has stoped. + // Delayed Notification of Service Client that one experiment block has stoped. + this.Draw() + this.GraphicsDevice.Present() + this.ex.PPort.Timer.Rest(1.0) this.OnRunStop(this.GO_OVER) () if this.ex.PPort.Timer.ElapsedSeconds < float this.ex.Exdesign.durT then @@ -175,7 +187,7 @@ end let MyExperiment = new MyEx(Text = "F# Scripting CenterSurround_2(Server)") // Server Hosting -let Host = new ServiceHost(MyExperiment, new Uri("net.tcp://zhangli:8080/ExServer")) +let Host = new ServiceHost(MyExperiment, new Uri("net.tcp://" + MyExperiment.SLConfig.["localhost"] + ":8081/ExServer")) Host.AddServiceEndpoint(typeof, new NetTcpBinding(SecurityMode.None), "") let mutable metabehavior = new ServiceMetadataBehavior() diff --git a/Release/ExClient.exe b/Release/ExClient.exe index dce69475839ee0ff2b3c79689782d4253363d46d..43d5a34efdcfb0a1fa551621f9030c4976f45a28 100644 GIT binary patch literal 60416 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