/// <summary> /// returns true if sim event binding is needed /// </summary> /// <param name="sim"></param> /// <param name="ga"></param> bool prepsim_needsbind(ref HistSim sim, GauntArgs ga) { // see if filter or folder has changed string thistff = TickFileFilter.Serialize(ga.Filter) + ga.Folder; bool fullreset = lasttff != thistff; if ((sim == null) || fullreset) { if (_portfoliosim.Checked) { if (_siminmemory.Checked) { sim = new HistSimMemory(ga.Folder, ga.Filter); } else { debug("Using portfolio simulation. (realistic)"); sim = new MultiSimImpl(ga.Folder, ga.Filter); } } else { debug("Using sequential symbol simulation. (faster)"); sim = new SingleSimImpl(ga.Folder, ga.Filter); } lasttff = thistff; return(true); } else { sim.Reset(); } return(false); }
public void SerializeDeserialize() { TickFileFilter tff = new TickFileFilter(new string[] { "IBM", "MHS", "T" }); tff.DateFilter(20070000, DateMatchType.Year); tff.isDateMatchUnion = false; tff.isSymbolDateMatchUnion = false; string msg = TickFileFilter.Serialize(tff); TickFileFilter f2 = TickFileFilter.Deserialize(msg); string msg2 = TickFileFilter.Serialize(f2); Assert.AreEqual(msg, msg2); Assert.AreEqual(tff.isDateMatchUnion, f2.isDateMatchUnion); Assert.AreEqual(tff.isSymbolDateMatchUnion, f2.isDateMatchUnion); }