public void split(string woah) { IspisUpisSG iu = IspisUpisSG.getInstance(); ListaSvegaSG db = ListaSvegaSG.getInstance(); GenBrojevaSG gb = GenBrojevaSG.getInstance(); ConcUredjajiFM cu = new ConcUredjajiFM(); try { foreach (string p in woah.Split(' ')) { lokalna.Add(p); } } catch (Exception n) { iu.print(" Došlo je do pogreške parsiranja argumenata. Obustava rada."); } bool help = false; if (lokalna.FindIndex(a => a.Equals("--help")) != -1) { iu.print("\n***--Help activated!***"); help = true; } if (help) { iu.print("\nUnesite argumente : \nlokaciju exe datoteke* \n-g broj_sjemena \n-m ime_datoteke_mjesta* \n-s ime_dat_senzora* \n-a ime_dat_aktuatora* \n-r ime_dat_rasporeda \n-tcd sekunde_trajanja_ciklusa_dretve \n-br broj_redaka_na_ekranu\n-bs broj_stupaca\n-brk broj_redaka_komandi\n-pi prosječni % ispravnosti"); } else { int index = lokalna.FindIndex(a => a.Equals("-br")); if (index == -1) { iu.print(""); iu.print("Fali broj linija redaka (24-40). Vrijednost će biti 24."); br = 24; } else { try { br = Int32.Parse(lokalna[index + 1]); if (br < 24 || br > 40) { iu.print("Br redaka nije u dobrom rasponu. bit će 24."); br = 24; } } catch (Exception) { iu.print("Broj redaka nije u odgovarajućem formatu(int). Bit će 24."); br = 24; } } index = lokalna.FindIndex(a => a.Equals("-bs")); if (index == -1) { iu.print("Fali broj linija stupaca (80-160). Vrijednost će biti 80."); bs = 80; } else { try { bs = Int32.Parse(lokalna[index + 1]); if (bs > 160 || bs < 80) { iu.print("Broj linija stupaca nije u odgovarajućem rasponu. Bit će 80."); bs = 80; } } catch (Exception) { iu.print("Bs nije predan u adekvatnom formatu (int).Bit će 80."); bs = 80; } } index = lokalna.FindIndex(a => a.Equals("-brk")); if (index == -1) { iu.print("Fali broj linija redaka komandi (2-5). Vrijednost će biti 2."); brk = 2; } else { try { brk = Int32.Parse(lokalna[index + 1]); if (brk > 5 || brk < 2) { iu.print("Broj redova komandi nije u rasponu. Bit će 2."); brk = 2; } } catch (Exception) { iu.print("Brk nije predan u adekvatnom formatu (int). Bit će 2."); brk = 2; } } index = lokalna.FindIndex(a => a.Equals("-g")); if (index != -1) { try { if (Int32.Parse(lokalna[index + 1]) > 65535 || Int32.Parse(lokalna[index + 1]) < 1) { iu.print("Sjeme nije u dobrom rangu. Bit će generirano."); gb.generirajSjeme(); gg = gb.vratiSjeme(); } else { gb.dodajSjeme(Int32.Parse(lokalna[index + 1])); gg = Int32.Parse(lokalna[index + 1]); } } catch (Exception) { iu.print("\nSjeme nije adekvatnog formata (int)."); gb.generirajSjeme(); gg = gb.vratiSjeme(); } } else { iu.print("Sjeme nije uneseno. Bit će generirano."); gb.generirajSjeme(); gg = gb.vratiSjeme(); } index = lokalna.FindIndex(a => a.Equals("-pi")); if (index == -1) { iu.print("Fali broj prosječne ispravnosti. Broj će biti slučajno generiran."); ppi = gb.dajSlucajniBroj(0, 100); db.preuzmiIspravnost(ppi); } else if (lokalna[index + 1].ToString() != "") { try { if (Int32.Parse(lokalna[index + 1]) > 100 || (Int32.Parse(lokalna[index + 1]) < 0)) { iu.print("PI% nije u rangu (0-100). Bit će generiran."); ppi = gb.dajSlucajniBroj(0, 100); db.preuzmiIspravnost(ppi); } else { ppi = Int32.Parse(lokalna[index + 1]); db.preuzmiIspravnost(Int32.Parse(lokalna[index + 1])); } } catch (Exception) { iu.print("Prosječna ispravnost nije u dobrom formatu. Bit će generirana."); db.preuzmiIspravnost(gb.dajSlucajniBroj(0, 100)); } } index = lokalna.FindIndex(a => a.Equals("-tcd")); if (index == -1) { iu.print("Fali trajanje ciklusa dretve. Bit će generiran."); tcd = gb.dajSlucajniBroj(1, 17); } else { if (lokalna[index + 1] != "") { try { tcd = Int32.Parse(lokalna[index + 1]); } catch (Exception) { iu.print("TCD nije dobrog formata."); tcd = gb.dajSlucajniBroj(1, 17); } } else { iu.print("TCD nije dobrog formata."); tcd = gb.dajSlucajniBroj(1, 17); } } iu.preuzmiBrojeve(); iu.preuzmiGPI(gg, ppi, tcd); iu.Podjela(); index = lokalna.FindIndex(a => a.Equals("-m")); if (index == -1) { iu.print("\nNazivu datoteke mjesta fali prekidač -m! Mjesta neće biti učitana."); } else { if (lokalna[index + 1].ToString() != "") { cu.stvoriObjekt(lokalna[index + 1], "m"); } } index = lokalna.FindIndex(a => a.Equals("-s")); if (index == -1) { iu.print("Nazivu datoteke senzora fali prekidač -s! Senzori neće biti učitani."); } else if (lokalna[index + 1].ToString() != "") { cu.stvoriObjekt(lokalna[index + 1], "s"); } index = lokalna.FindIndex(a => a.Equals("-a")); if (index == -1) { iu.print("Nazivu datoteke aktuatora fali prekidač -a! Aktuatori neće biti učitani."); } else if (lokalna[index + 1].ToString() != "") { cu.stvoriObjekt(lokalna[index + 1], "a"); } index = lokalna.FindIndex(a => a.Equals("-r")); if (index == -1) { iu.print("Nazivu datoteke rasporeda fali prekidač -r! Raspored neće biti učitan."); } else if (lokalna[index + 1].ToString() != "") { C_Connector cc = C_Connector.getInstance(); cc.preuzmiIme(lokalna[index + 1]); } } }