// Using WorkflowInvoker and WorkflowApplication // WorkflowInvoker Overview static void Snippet1() { //<snippet1> Activity wf = new WriteLine { Text = "Hello World." }; WorkflowInvoker.Invoke(wf); //</snippet1> }
//Refactor this to a separate class Command??? //Also the attribute can be moved in some other class may be, but I will leave them here for now //The Attributes part was added latter from different exercise and was not implemented in the best possible way private void ProcessTheCommand(string input) { var inputSplit = input.Split(';'); string command = inputSplit[0]; string name = String.Empty; int index = 0; // can think of making enum if (command != "Author" && command != "Revision" && command != "Description" && command != "Reviewers") { name = inputSplit[1]; } var attributes = typeof(Weapon).GetCustomAttributes(); CustomAttribute typeAttribute = attributes.ToArray()[0] as CustomAttribute; switch (command) { case "Create": Repository.Repository.AddWeapon(WeaponFactory.CreateWeapon(input)); break; case "Add": index = int.Parse(inputSplit[2]); string gem = inputSplit[3]; Repository.Repository.Weapons[name].AddGemInSocket(index, GemFactory.CreateGem(gem)); break; case "Remove": index = int.Parse(inputSplit[2]); Repository.Repository.Weapons[name].RemoveGemFromSocket(index); break; case "Print": WriteLine.Write(Repository.Repository.Weapons[name].ToString()); break; case "Author": WriteLine.Write($"Author: {typeAttribute.Author}"); break; case "Revision": WriteLine.Write($"Revision: {typeAttribute.Revision}"); break; case "Description": WriteLine.Write($"Class description: {typeAttribute.Description}"); break; case "Reviewers": WriteLine.Write($"Reviewers: {typeAttribute.Reviewers}"); break; } }
public void CanProcess_WithConstructor_MustPassActivityToCanProcessDelegate() { Activity activity = null; var writeLine = new WriteLine(); var testee = CreateTestee((a, r) => { activity = a; return(false); }, (a, r) => { }); testee.CanProcess(writeLine, new Sequence()); activity.Should().BeSameAs(writeLine); }
public override AstNode VisitWriteLine(WriteLine ast) { Visit(ast.Value); if (ast.Value.ExpressionType != PrimaryType.Int) { AddError(c_SE_WriteLineStmtTypeInvalid, ast.WriteLineSpan); } return(ast); }
// Using WorkflowInvoker and WorkflowApplication static void Snippet3() { //<snippet3> Activity wf = new WriteLine(); Dictionary <string, object> inputs = new Dictionary <string, object>(); inputs.Add("Text", "Hello World."); WorkflowInvoker.Invoke(wf, inputs); //</snippet3> }
private void HandleBaseOptions(BaseOptions baseOptions, WriteLine writer, IModeParser specifiedMode = null) { if (baseOptions.ShowHelp) { ShowHelp(writer, specifiedMode); } if (baseOptions.ShowVersion) { ShowVersion(writer); } }
bool OpenBurn(int inEndp, int outEndp) { if (inEndp != 0x81 || outEndp != 0x02) { WriteLine?.Invoke("Device not in burn mode"); return(false); } OpenEndpoints(inEndp, outEndp); return(true); }
private async void SendDeviceToCloud(WriteLine writeLine) { GetStateMessage(out var messageString); var message = new Message(Encoding.ASCII.GetBytes(messageString)); // Add references to what method this is message.Properties.Add("Method", $"{_currentDevice.Hub.Name}.{_currentDevice.Name}.GetSelectedObject"); // Send the telemetry message await _sDeviceClient.SendEventAsync(message); writeLine($"{DateTime.Now} > Sending message: {messageString}"); }
static void Snippet2() { //<snippet2> Activity wf = new WriteLine { Text = "Hello World." }; WorkflowInvoker invoker = new WorkflowInvoker(wf); invoker.Invoke(); //</snippet2> }
public void ShowHelp(WriteLine writeLine) { var stringWriter = new StringWriter(); GetOptionSet().WriteOptionDescriptions(stringWriter); stringWriter.ToString().Split(stringWriter.NewLine).ForEach(message => { if (message == "") { message = " "; } writeLine(message); }); }
private static ActivityView BuildWriteLineView(WriteLine source) { string activityId = ObjectIdManager.GetId(source); string text = ExpressionConvert.ToString(source.Text); var view = new WriteLineView(activityId) { ActivityName = source.DisplayName, Text = text, }; return(view); }
private int ReadFromUSB(byte[] buffer, int offset, int length) { int l; var result = epReader.Read(buffer, offset, length, ReadTimeout, out l); if (result != ErrorCode.Ok) { throw new Exception("USB read error: " + result.ToString()); } #if VERY_DEBUG WriteLine?.Invoke("<-[FEL] " + BitConverter.ToString(buffer)); #endif WriteLine?.Invoke(string.Format("<- {0} bytes", length)); return(l); }
static void Main(string[] args) { var obj1 = new Operation(Method); var obj2 = new Operation(Method); var obj3 = new Operation(Method); Console.WriteLine(obj1(2, 7)); Console.WriteLine(obj2(3, 7)); Console.WriteLine(obj3(4, 7)); Add1 += USA; Add1 += India; Add1 += England; Add1.Invoke(); var func = StringJoinExpr.Compile(); var result = func("Smith", "Jones"); var ee = new Father("Hosien"); ee.Create(); var ff = new Child("Amin"); ff.Create(); IWriteLine line = new WriteLine(); line.WriteLine(); Console.WriteLine(line.Tree("OH")); int?nullableString = null; Console.WriteLine((int?)null); Index i1 = 3; // number 3 from beginning Index i2 = ^ 4; // number 4 from end int[] a = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 }; Console.WriteLine($"{a[i1]}, {a[i2]}"); // "3, 6" var slice = a[i1..i2];
public override IProgramPart VisitFunctionCall(FSQLParser.FunctionCallContext context) { var isInternal = context.fnInt != null && context.fnUsr == null; var name = isInternal ? context.fnInt.GetText() : context.IDENT().GetText(); var args = Visit(context.args) as IEnumerable <IExpression>; if (isInternal) { IProgramPart results; var token = context.fnInt.GetChild(0).Payload as IToken; var type = token?.Type ?? -1; switch (type) { case FSQLLexer.WRITELINE: results = new WriteLine(args); break; case FSQLLexer.WRITE: results = new Write(args); break; case FSQLLexer.COREDUMP: results = new SystemFn("CoreDump", (ctx, prms) => ctx.Dump(Priority.Verbose)); break; case FSQLLexer.READLINE: results = new SystemFn("ReadLine", (ctx, prms) => Console.ReadLine()); break; case FSQLLexer.READ: results = new SystemFn("Read", (ctx, prms) => Console.Read()); break; //case FSQLLexer.EXISTS: // results = new Exists(args); // break; default: results = new Unimplemented(name); break; } return(results); } return(new FunctionCall(name, args)); }
bool OpenFel(int inEndp, int outEndp) { if (inEndp != 0x82 || outEndp != 0x01) { WriteLine?.Invoke("Uncorrect FEL device/mode"); return(false); } OpenEndpoints(inEndp, outEndp); WriteLine?.Invoke("Trying to verify device"); if (VerifyDevice().Board != 0x00166700) { WriteLine?.Invoke("Invalid board ID: " + VerifyDevice().Board); return(false); } return(true); }
public static IList<IExample> GetExamples(WriteLine logger) { List<IExample> examples = new List<IExample>(); examples.Add(new SimpleExample() { Log=logger}); examples.Add(new POCOExample() { Log = logger }); examples.Add(new UsingAttributesExample() { Log = logger }); examples.Add(new JoinExample() { Log = logger }); examples.Add(new InheritanceExample() { Log = logger }); examples.Add(new IndexExample() { Log = logger }); examples.Add(new EncryptionExample() { Log = logger }); examples.Add(new AllTypesOfFieldsSupportedExample() { Log = logger }); examples.Add(new UpdateObjectByExample() { Log = logger }); examples.Add(new DynamicLINQExample() { Log = logger }); examples.Add(new CustomDatabaseFileNameExample() { Log = logger }); examples.Add(new LINQ_OptimizedExamples() { Log = logger }); examples.Add(new LINQ_CrashExamples() { Log = logger }); examples.Add(new ListsArraysExample() { Log = logger }); return examples; }
void Start() { run = true; while (run) { var ii = get_next_item(); if (ii == null) { return; } ii.Queue.ProcessItem(ii); if (ii.Queue == queues[0]) { List <string> vs = new List <string>(); string url = null; for (; ii != null; ii = ii.ParentItem) { vs.InsertRange(0, ii.OutputValues); if (ii is Queue.InputItem.Url && (url == null || ii.OutputValues.Count > 0) ) { url = ii.Value; } if (ii.ParentItem == null) { break; } if (queues.IndexOf(ii.Queue) >= queues.IndexOf(ii.ParentItem.Queue)) { break; } } vs.Insert(0, url); tw.WriteLine(FieldPreparation.GetCsvLine(vs, FieldPreparation.FieldSeparator.COMMA, true)); tw.Flush(); WriteLine?.Invoke(headers, vs); } } }
private void WriteToUSB(byte[] buffer) { #if VERY_DEBUG WriteLine?.Invoke("->[FEL] " + BitConverter.ToString(buffer)); #endif WriteLine?.Invoke(string.Format("-> {0} bytes", buffer.Length)); int pos = 0; int l; while (pos < buffer.Length) { epWriter.Write(buffer, pos, buffer.Length - pos, WriteTimeout, out l); if (l > 0) { pos += l; } else { throw new Exception("Can't write to USB"); } } }
private int Parse(string[] args, WriteLine standardWriter, WriteLine errorWriter) { var mode = GetMode(args); if (AnyBaseOptions(args, out BaseOptions baseOptions)) { HandleBaseOptions(baseOptions, standardWriter, mode); return(0); } var result = GetParseResults(args); if (!result.Validate(out IParsingResult <IModeLauncher> failedResult)) { errorWriter(failedResult.ErrorMessage); errorWriter(" "); ShowHelp(errorWriter, mode); return(-1); } throw new IlluminaException("This method should only be called when we fail to parse common options"); }
public static Device Run(string selectedName, WriteLine writeLine) { Device selectedDevice; while (true) { // Chose configuration writeLine(string.Empty); var configurationManager = new ConfigurationManager(); var hubs = configurationManager.GetHubs(); var allDevices = new List <Device>(); foreach (var hub in hubs) { var devices = configurationManager.GetDevices(hub.Name); foreach (var device in devices) { allDevices.Add(device); } } // Get selected device var selected = string.IsNullOrEmpty(selectedName) ? -1 : allDevices.IndexOf(allDevices.FirstOrDefault(p => p.Name == selectedName)); var intSelected = selected; writeLine("Please chose the IoT Device Configuration: " + intSelected); if (intSelected < 0 || intSelected > allDevices.Count - 1) { continue; } selectedDevice = allDevices[intSelected]; writeLine($"Selected device: {selectedDevice.Name}"); break; } return(selectedDevice); }
private static void CreateStateMachineUpdateMap() { ActivityBuilder wf = StartUpdate("StateMachineNumberGuessWorkflow.xaml"); // Get a reference to the root StateMachine activity. StateMachine sm = wf.Implementation as StateMachine; // Update the Text of the two WriteLine activities that write the // results of the user's guess. They are contained in the workflow as the // Then and Else action of the If activity in sm.States[1].Transitions[1].Action. If guessLow = sm.States[1].Transitions[1].Action as If; // Update the "too low" message. WriteLine tooLow = guessLow.Then as WriteLine; tooLow.Text = new CSharpValue <string>("Guess.ToString() + \" is too low.\""); // Update the "too high" message. WriteLine tooHigh = guessLow.Else as WriteLine; tooHigh.Text = new CSharpValue <string>("Guess.ToString() + \" is too high.\""); // Create the new WriteLine that displays the closing message. WriteLine wl = new WriteLine { Text = new CSharpValue <string>("Guess.ToString() + \" is correct. You guessed it in \" + Turns.ToString() + \" turns.\"") }; // Add it as the Action for the Guess Correct transition. The Guess Correct // transition is the first transition of States[1]. The transitions are listed // at the bottom of the State activity designer. sm.States[1].Transitions[0].Action = wl; // Create the update map. CreateUpdateMaps(wf, "StateMachineNumberGuessWorkflow.map"); // Save the updated workflow definition. SaveUpdatedDefinition(wf, "StateMachineNumberGuessWorkflow_du.xaml"); }
public static void PrintBuiltins(bool inclNoisyTag, WriteLine writeLine) { writeLine("\nBuilt-in functions:\n"); SortedDictionary <string, TokenDeclInline> bifs = new SortedDictionary <string, TokenDeclInline> (); foreach (TokenDeclVar bif in TokenDeclInline.inlineFunctions) { bifs.Add(bif.fullName, (TokenDeclInline)bif); } foreach (TokenDeclInline bif in bifs.Values) { char noisy = (!inclNoisyTag || !IsTaggedNoisy(bif.GetMethodInfo())) ? ' ' : (bif.retType is TokenTypeVoid) ? 'N' : 'R'; writeLine(noisy + " " + bif.retType.ToString().PadLeft(8) + " " + bif.fullName); } if (inclNoisyTag) { writeLine("\nN - stub that writes name and arguments to stdout"); writeLine("R - stub that writes name and arguments to stdout then reads return value from stdin"); writeLine(" format is: function_name : return_value"); writeLine(" example: llKey2Name:\"Kunta Kinte\""); } writeLine("\nBuilt-in constants:\n"); SortedDictionary <string, ScriptConst> scs = new SortedDictionary <string, ScriptConst> (); int widest = 0; foreach (ScriptConst sc in ScriptConst.scriptConstants.Values) { if (widest < sc.name.Length) { widest = sc.name.Length; } scs.Add(sc.name, sc); } foreach (ScriptConst sc in scs.Values) { writeLine(" " + sc.rVal.type.ToString().PadLeft(8) + " " + sc.name.PadRight(widest) + " = " + BuiltInConstVal(sc.rVal)); } }
private static void CreateSequentialUpdateMap() { ActivityBuilder wf = StartUpdate("SequentialNumberGuessWorkflow.xaml"); // Get a reference to the root activity in the workflow. Sequence rootSequence = wf.Implementation as Sequence; // Update the Text of the two WriteLine activities that write the // results of the user's guess. They are contained in the workflow as the // Then and Else action of the "Guess < Target" If activity. // Sequence[1]->DoWhile->Body->Sequence[2]->If->Then->If DoWhile gameLoop = rootSequence.Activities[1] as DoWhile; Sequence gameBody = gameLoop.Body as Sequence; If guessCorrect = gameBody.Activities[2] as If; If guessLow = guessCorrect.Then as If; WriteLine tooLow = guessLow.Then as WriteLine; tooLow.Text = new CSharpValue <string>("Guess.ToString() + \" is too low.\""); WriteLine tooHigh = guessLow.Else as WriteLine; tooHigh.Text = new CSharpValue <string>("Guess.ToString() + \" is too high.\""); // Add the new WriteLine that displays the closing message. WriteLine wl = new WriteLine { Text = new CSharpValue <string>("Guess.ToString() + \" is correct. You guessed it in \" + Turns.ToString() + \" turns.\"") }; // Insert it as the third activity in the root sequence rootSequence.Activities.Insert(2, wl); // Create the update map. CreateUpdateMaps(wf, "SequentialNumberGuessWorkflow.map"); // Save the updated workflow definition. SaveUpdatedDefinition(wf, "SequentialNumberGuessWorkflow_du.xaml"); }
public void ShowHelp(WriteLine writeLine, IModeParser specifiedMode = null) { writeLine($"Canvas {GetVersion()} {GetCopyright()}"); writeLine(" "); string modeName = specifiedMode?.Name ?? "[MODE]"; if (specifiedMode != null) { writeLine($"{specifiedMode.Name} - {specifiedMode.Description}"); writeLine(" "); } writeLine($"Usage: Canvas.exe {modeName} [OPTIONS]+"); writeLine(" "); if (specifiedMode == null) { writeLine("Available modes:"); foreach (var mode in _modeParsers.Values) { writeLine($"\t{mode.Name} - {mode.Description}"); } writeLine(" "); writeLine("Options:"); BaseOptionsParser.ShowHelp(writeLine); } else { writeLine("Mode-specific options:"); specifiedMode.ShowHelp(writeLine); writeLine(" "); writeLine("Common options:"); CommonOptionsParser.ShowHelp(writeLine); writeLine(" "); writeLine("Other options:"); BaseOptionsParser.ShowHelp(writeLine); } }
public static void Main(string[] args) { WriteLine objTest = new WriteLine(); AppDomain.CurrentDomain.UnhandledException += new UnhandledExceptionEventHandler(objTest.AppDomainUnhandledException_EventHandler); Console.WriteLine(s_strTFPath + " " + s_strTFName + " , for " + s_strClassMethod + " , Source ver : " + s_strDtTmVer); try { objTest.RunTest(); } catch (Exception e) { Console.WriteLine(s_strTFAbbrev + " : FAIL The following exception was thrown in RunTest(): \n" + e.ToString()); objTest._numErrors++; objTest._exitValue = TCSupport.FailExitCode; } //// Finish Diagnostics if (objTest._numErrors == 0) { Console.WriteLine("PASS. "+ s_strTFPath + " " + s_strTFName + " ,numTestcases==" + objTest._numTestcases); } else { Console.WriteLine("FAIL! "+ s_strTFPath + " " + s_strTFName + " ,numErrors==" + objTest._numErrors); if (TCSupport.PassExitCode == objTest._exitValue) { objTest._exitValue = TCSupport.FailExitCode; } } Environment.ExitCode = objTest._exitValue; }
public override AstNode VisitWriteLine(WriteLine ast) { //push argument to e-stack Visit(ast.Value); m_ilgen.EmitCall(OpCodes.Call, m_WriteLine, null); return ast; }
public ConsolePrinter(WriteLine printer) { this.printer = printer; }
/// <summary> /// Displays the symbol server and cache configuration /// </summary> private void DisplaySymbolStore(IntPtr self, WriteLine writeLine) { writeLine(_symbolService.ToString()); }
public static IList <IExample> GetExamples(WriteLine logger) { List <IExample> examples = new List <IExample>(); examples.Add(new SimpleExample() { Log = logger }); examples.Add(new POCOExample() { Log = logger }); examples.Add(new UsingAttributesExample() { Log = logger }); examples.Add(new InheritanceExample() { Log = logger }); examples.Add(new IndexExample() { Log = logger }); examples.Add(new EncryptionExample() { Log = logger }); examples.Add(new AllTypesOfFieldsSupportedExample() { Log = logger }); examples.Add(new UpdateObjectByExample() { Log = logger }); examples.Add(new TransactionExample() { Log = logger }); examples.Add(new DynamicLINQExample() { Log = logger }); examples.Add(new CustomDatabaseFileNameExample() { Log = logger }); examples.Add(new LINQ_OptimizedExamples() { Log = logger }); examples.Add(new LINQ_UnoptimizedExamples() { Log = logger }); examples.Add(new ListsArraysExample() { Log = logger }); examples.Add(new NestedObjectsExample() { Log = logger }); return(examples); }
public bool Open(UInt16 vid = 0x1F3A, UInt16 pid = 0xEFE8, bool isFel = true) { try { this.vid = vid; this.pid = pid; Close(); UsbDeviceFinder MyUsbFinder = new UsbDeviceFinder(vid, pid); //WriteLine?.Invoke("Trying to open device..."); device = UsbDevice.OpenUsbDevice(MyUsbFinder); // If the device is open and ready if (device == null) { #if VERY_DEBUG WriteLine?.Invoke("Device with such VID and PID not found"); #endif return(false); } // If this is a "whole" usb device (libusb-win32, linux libusb) // it will have an IUsbDevice interface. If not (WinUSB) the // variable will be null indicating this is an interface of a // device. IUsbDevice wholeUsbDevice = device as IUsbDevice; if (!ReferenceEquals(wholeUsbDevice, null)) { // This is a "whole" USB device. Before it can be used, // the desired configuration and interface must be selected. // Select config #1 wholeUsbDevice.SetConfiguration(1); // Claim interface #0. wholeUsbDevice.ClaimInterface(0); } int inEndp = -1; int outEndp = -1; int inMax = 0; int outMax = 0; WriteLine?.Invoke("Checking USB endpoints..."); foreach (var config in device.Configs) { foreach (var @interface in config.InterfaceInfoList) { foreach (var endp in @interface.EndpointInfoList) { if ((endp.Descriptor.EndpointID & 0x80) != 0) { inEndp = endp.Descriptor.EndpointID; inMax = endp.Descriptor.MaxPacketSize; WriteLine?.Invoke("IN endpoint found: " + inEndp); WriteLine?.Invoke("IN endpoint maxsize: " + inMax); } else { outEndp = endp.Descriptor.EndpointID; outMax = endp.Descriptor.MaxPacketSize; WriteLine?.Invoke("OUT endpoint found: " + outEndp); WriteLine?.Invoke("OUT endpoint maxsize: " + outMax); } } } } this.isFel = isFel; return(isFel ? OpenFel(inEndp, outEndp) : OpenBurn(inEndp, outEndp)); } catch (Exception ex) { WriteLine?.Invoke("Error: " + ex.Message + ex.StackTrace); return(false); } }
private void WriteToOutput(string line) { WriteLine.Invoke(line); }
public override AstNode VisitWriteLine(WriteLine ast) { Visit(ast.Value); if (ast.Value.ExpressionType != PrimaryType.Int) { m_errorManager.AddError(c_SE_WriteLineStmtTypeInvalid, ast.WriteLineSpan); } return ast; }
public static string[] SplitedString; // The Splited String public static void ReadAsync(string Command) { SplitedString = Command.Split(' '); // The Splited String // Format the current Taiyou Line for (int i = 0; i < SplitedString.Length; i++) { // FORMATATION SplitedString[i] = SplitedString[i].Replace("%N", Environment.NewLine); // New Line for (int i2 = 0; i2 < GlobalVars_String_Names.Count; i2++) { SplitedString[i] = SplitedString[i].Replace("$STRING_" + GlobalVars_String_Names[i2] + "$", GlobalVars_String_Content[i2].Replace(" ", "")); } for (int i2 = 0; i2 < GlobalVars_Bool_Names.Count; i2++) { SplitedString[i] = SplitedString[i].Replace("$BOOL_" + GlobalVars_Bool_Names[i2] + "$", Convert.ToString(GlobalVars_Bool_Content[i2])); } for (int i2 = 0; i2 < GlobalVars_Int_Names.Count; i2++) { SplitedString[i] = SplitedString[i].Replace("$INT_" + GlobalVars_Int_Names[i2] + "$", Convert.ToString(GlobalVars_Int_Content[i2])); } for (int i2 = 0; i2 < GlobalVars_Float_Names.Count; i2++) { SplitedString[i] = SplitedString[i].Replace("$FLOAT_" + GlobalVars_Float_Names[i2] + "$", Convert.ToString(GlobalVars_Float_Content[i2])); } if (SplitedString[i].Contains("%RANDOM%")) { string[] SubSplitedString = SplitedString[i].Split('%'); string Arg1 = SubSplitedString[2]; // Number 1 string Arg2 = SubSplitedString[3]; // Number 2 Random RND = new Random(); SplitedString[i] = SplitedString[i].Replace("%RANDOM%" + Arg1 + "%" + Arg2 + "%", Convert.ToString(RND.Next(Convert.ToInt32(Arg1), Convert.ToInt32(Arg2)))); } if (SplitedString[i].Contains("%ADD%")) { string[] SubSplitedString = SplitedString[i].Split('%'); string Arg1 = SubSplitedString[2]; // Number 1 string Arg2 = SubSplitedString[3]; // Number 2 int MathResult = Convert.ToInt32(Arg1) + Convert.ToInt32(Arg2); SplitedString[i] = SplitedString[i].Replace("%ADD%" + Arg1 + "%" + Arg2 + "%", Convert.ToString(MathResult)); } if (SplitedString[i].Contains("%DECREASE%")) { string[] SubSplitedString = SplitedString[i].Split('%'); string Arg1 = SubSplitedString[2]; // Number 1 string Arg2 = SubSplitedString[3]; // Number 2 int MathResult = Convert.ToInt32(Arg1) - Convert.ToInt32(Arg2); SplitedString[i] = SplitedString[i].Replace("%DECREASE%" + Arg1 + "%" + Arg2 + "%", Convert.ToString(MathResult)); } if (SplitedString[i].Contains("%MULTIPLY%")) { string[] SubSplitedString = SplitedString[i].Split('%'); string Arg1 = SubSplitedString[2]; // Number 1 string Arg2 = SubSplitedString[3]; // MultiplyTimes int MathResult = Convert.ToInt32(Arg1) * Convert.ToInt32(Arg2); SplitedString[i] = SplitedString[i].Replace("%MULTIPLY%" + Arg1 + "%" + Arg2 + "%", Convert.ToString(MathResult)); } if (SplitedString[i].Contains("%DIVIDE%")) { string[] SubSplitedString = SplitedString[i].Split('%'); string Arg1 = SubSplitedString[2]; // Number 1 string Arg2 = SubSplitedString[3]; // Number 2 int MathResult = Convert.ToInt32(Arg1) / Convert.ToInt32(Arg2); SplitedString[i] = SplitedString[i].Replace("%DIVIDE%" + Arg1 + "%" + Arg2 + "%", Convert.ToString(MathResult)); } if (SplitedString[i].Contains("%DIFERENCE%")) { string[] SubSplitedString = SplitedString[i].Split('%'); string Arg1 = SubSplitedString[2]; // Number 1 string Arg2 = SubSplitedString[3]; // Number 2 int MathResult = Math.Abs(Convert.ToInt32(Arg1) - Convert.ToInt32(Arg2)); SplitedString[i] = SplitedString[i].Replace("%DIFERENCE%" + Arg1 + "%" + Arg2 + "%", Convert.ToString(MathResult)); } if (SplitedString[i].Contains("%PERCENTAGE%")) { string[] SubSplitedString = SplitedString[i].Split('%'); string Arg1 = SubSplitedString[2]; // Number 1 string Arg2 = SubSplitedString[3]; // Number 2 int MathResult = (int)Math.Round((double)(100 * Convert.ToInt32(Arg1)) / Convert.ToInt32(Arg2)); SplitedString[i] = SplitedString[i].Replace("%PERCENTAGE%" + Arg1 + "%" + Arg2 + "%", Convert.ToString(MathResult)); } if (SplitedString[i].Contains("%LOCATION_OF%")) { string[] SubSplitedString = SplitedString[i].Split('%'); string Arg1 = SubSplitedString[2]; // Render Type string Arg2 = SubSplitedString[3]; // Render Name string Arg3 = SubSplitedString[4]; // Value Type Rectangle RectObject = GlobalVars_Rectangle_Content[RenderQuee.Main.RenderCommand_RectangleVar.IndexOf(Arg2)]; int RenderNameIndex = -1; if (Arg1 == "SPRITE") { RenderNameIndex = RenderQuee.Main.RenderCommand_Name.IndexOf(Arg2); } ; if (Arg1 == "TEXT") { RenderNameIndex = RenderQuee.Main.TextRenderCommand_Name.IndexOf(Arg2); } ; int ValToReturn = 0; if (Arg3 == "X" && Arg1 == "SPRITE") { ValToReturn = RectObject.X; } ; if (Arg3 == "X" && Arg1 == "TEXT") { ValToReturn = RenderQuee.Main.TextRenderCommand_X[RenderNameIndex]; } if (Arg3 == "Y" && Arg1 == "SPRITE") { ValToReturn = RectObject.Y; } ; if (Arg3 == "Y" && Arg1 == "TEXT") { ValToReturn = RenderQuee.Main.TextRenderCommand_Y[RenderNameIndex]; } ; if (Arg3 == "W" && Arg1 == "SPRITE") { ValToReturn = RectObject.Width; } ; if (Arg3 == "H" && Arg1 == "SPRITE") { ValToReturn = RectObject.Height; } ; SplitedString[i] = SplitedString[i].Replace("%LOCATION_OF%" + Arg1 + "%" + Arg2 + "%" + Arg3 + "%", Convert.ToString(ValToReturn)); } if (SplitedString[i].Contains("%COLOR_VALUE%")) { string[] SubSplitedString = SplitedString[i].Split('%'); string Arg1 = SubSplitedString[2]; // ColorVarName string Arg2 = SubSplitedString[3]; // CodeName int ColorVarIndex = GlobalVars_Color_Names.IndexOf(Arg1); string ValToReturn = "0"; if (ColorVarIndex == -1) { throw new Exception("Color Variable [" + Arg1 + "] does not exist."); } if (Arg2.Equals("R")) { ValToReturn = Convert.ToString(GlobalVars_Color_Content[ColorVarIndex].R); } ; if (Arg2.Equals("G")) { ValToReturn = Convert.ToString(GlobalVars_Color_Content[ColorVarIndex].G); } ; if (Arg2.Equals("B")) { ValToReturn = Convert.ToString(GlobalVars_Color_Content[ColorVarIndex].B); } ; if (Arg2.Equals("A")) { ValToReturn = Convert.ToString(GlobalVars_Color_Content[ColorVarIndex].A); } ; if (Arg2.Equals("ALL")) { ValToReturn = GlobalVars_Color_Content[ColorVarIndex].R + "," + GlobalVars_Color_Content[ColorVarIndex].G + "," + GlobalVars_Color_Content[ColorVarIndex].B + "," + GlobalVars_Color_Content[ColorVarIndex].A; } ; SplitedString[i] = SplitedString[i].Replace("%COLOR_VALUE%" + Arg1 + "%" + Arg2 + "%", Convert.ToString(ValToReturn)); } if (SplitedString[i].Contains("%LIST_VALUE%")) { string[] SubSplitedString = SplitedString[i].Split('%'); string ValToReturn = "null_or_incorrect"; string Arg1 = SubSplitedString[2]; // ListType string Arg2 = SubSplitedString[3]; // ListName string Arg3 = SubSplitedString[4]; // Index if (Arg1.Equals("STRING")) { int ListNameIndex = GlobalVars_StringList_Names.IndexOf(Arg2); int Index = Convert.ToInt32(Arg3); ValToReturn = GlobalVars_StringList_Content[ListNameIndex][Index]; } if (Arg1.Equals("INT")) { int ListNameIndex = GlobalVars_IntList_Names.IndexOf(Arg2); int Index = Convert.ToInt32(Arg3); ValToReturn = Convert.ToString(GlobalVars_IntList_Content[ListNameIndex][Index]); } if (Arg1.Equals("COLOR")) { int ListNameIndex = GlobalVars_ColorList_Names.IndexOf(Arg2); int Index = Convert.ToInt32(Arg3); Color ColorGetted = GlobalVars_ColorList_Content[ListNameIndex][Index]; string ColorCodeToReturn = ColorGetted.R + "," + ColorGetted.G + "," + ColorGetted.B + "," + ColorGetted.A; ValToReturn = ColorCodeToReturn; } if (Arg1.Equals("FLOAT")) { int ListNameIndex = GlobalVars_FloatList_Names.IndexOf(Arg2); int Index = Convert.ToInt32(Arg3); ValToReturn = Convert.ToString(GlobalVars_FloatList_Content[ListNameIndex][Index]); } if (Arg1.Equals("RECTANGLE")) { int ListNameIndex = GlobalVars_RectangleList_Names.IndexOf(Arg2); int Index = Convert.ToInt32(Arg3); Rectangle RectGetted = GlobalVars_RectangleList_Content[ListNameIndex][Index]; string RectangleCode = RectGetted.X + "," + RectGetted.Y + "," + RectGetted.Width + "," + RectGetted.Height; ValToReturn = Convert.ToString(RectangleCode); } SplitedString[i] = SplitedString[i].Replace("%LIST_VALUE%" + Arg1 + "%" + Arg2 + "%" + Arg3 + "%", Convert.ToString(ValToReturn)); } } // Begin Command Interpretation if (SplitedString[0].Equals("0x0")) { Clear.Initialize(); } if (SplitedString[0].Equals("0x1")) { Call.Initialize(SplitedString[1]); } if (SplitedString[0].Equals("0x2")) { Write.Initialize(SplitedString[1]); } if (SplitedString[0].Equals("0x3")) { WriteLine.Initialize(SplitedString[1]); } if (SplitedString[0].Equals("0x4")) { WriteFile.Initialize(SplitedString[1], SplitedString[2]); } if (SplitedString[0].Equals("0x5")) { TaiyouIF.Initialize(SplitedString); } if (SplitedString[0].Equals("0x6")) { Abort.Initialize(); } if (SplitedString[0].Equals("0x7")) { Declare.Initialize(SplitedString); } if (SplitedString[0].Equals("0x8")) { WriteVar.Initialize(SplitedString); } if (SplitedString[0].Equals("0x9")) { MathOP.Intialize(SplitedString); } if (SplitedString[0].Equals("1x0")) { Goto.Initialize(SplitedString); } if (SplitedString[0].Equals("1x1")) { FileExists.Initialize(SplitedString); } if (SplitedString[0].Equals("1x2")) { ReadFile.Intialize(SplitedString); } if (SplitedString[0].Equals("1x3")) { DirectoryExists.Initialize(SplitedString); } if (SplitedString[0].Equals("1x4")) { DownloadServerString.Initialize(SplitedString); } if (SplitedString[0].Equals("1x5")) { CopyFile.Initialize(SplitedString); } if (SplitedString[0].Equals("1x6")) { MoveFile.Initialize(SplitedString); } if (SplitedString[0].Equals("1x7")) { DeleteFile.Initialize(SplitedString); } if (SplitedString[0].Equals("1x8")) { AddRenderQuee.Initialize(SplitedString); } if (SplitedString[0].Equals("1x9")) { AddEvent.Initialize(SplitedString); } if (SplitedString[0].Equals("2x0")) { CheckEvent.Initialize(SplitedString); } if (SplitedString[0].Equals("2x1")) { ChangeWindowPropertie.Initialize(SplitedString); } if (SplitedString[0].Equals("2x2")) { Colision.Initialize(SplitedString); } if (SplitedString[0].Equals("2x3")) { Reload.Initialize(SplitedString); } if (SplitedString[0].Equals("2x4")) { GetKeyPressed.Initialize(SplitedString); } if (SplitedString[0].Equals("2x5")) { AddRenderTextQuee.Initialize(SplitedString); } if (SplitedString[0].Equals("2x6")) { ChangeRenderProp.Initialize(SplitedString); } if (SplitedString[0].Equals("2x7")) { ChangeBackgroundColor.Initialize(SplitedString); } if (SplitedString[0].Equals("2x8")) { Undeclare.Initialize(SplitedString); } if (SplitedString[0].Equals("2x9")) { SendBGMCommand.Initialize(SplitedString); } if (SplitedString[0].Equals("3x0")) { MasterVolume.Initialize(SplitedString); } if (SplitedString[0].Equals("3x1")) { LanguageSystemManager.Initialize(SplitedString); } if (SplitedString[0].Equals("3x2")) { // FIXME Not Working //VarMath.Initialize(SplitedString); } if (Global.IsLowLevelDebugEnabled) { for (int i = 0; i < SplitedString.Length; i++) { Console.Write(SplitedString[i] + " "); } Console.Write("\n"); } }
public static bool Init(string pth, GetFogFileList getfogfiles, XElement fmts, XElement xont, string connectionstring, string graph, WriteLine logw, WriteLine logb, WriteLine logc) { path = (pth[pth.Length - 1] == '/' || pth[pth.Length - 1] == '\\') ? pth : pth + "/"; int column = connectionstring.IndexOf(':'); RelationalDb.server = connectionstring.Substring(0, column); RelationalDb.connectionstring = connectionstring.Substring(column + 1); RelationalDb.graph = graph; logwrite = logw; changelog = logc; buildlog = logb; RelationalDb.err = logw; LoadFogDocuments.log = logw; LoadFogDocuments.err = logb; getfilelist = getfogfiles; formats = fmts; xontology = xont; try { Reload(false); } catch (Exception ex) { logwrite("Err: can't reload: " + ex.Message); return false; } return true; }