private void OnEnable() { trackRecord = new TrackRecord(); setTrackingPos(); pharus.EventProcessor.PharusListener.EventQueue.Enqueue(new UnityPharusListener.PharusEvent(ETrackState.TS_NEW, trackRecord)); //tuio.EventProcessor.TuioListener.EventQueue.Enqueue(new UnityTuioListener.TuioEvent(UnityTuioListener.ETuioEventType.ADD_OBJECT, tuioObj)); }
public void OnTrackLost(TrackRecord track) { eventCounter++; lock (m_lockObj) { m_eventQueue.Enqueue(new PharusEvent(track.state, track)); } }
private static TrackRecord MapTrackRecordViewModelToTrackRecord(TrackRecordViewModel viewModel) { var pattern = new TrackRecord { IsWorking = viewModel.IsWorking, IsCancelled = viewModel.IsCancelled, PatternValue = viewModel.Domain, StartDate = viewModel.StartTime, }; return(pattern); }
void RefreshRecord() { TrackRecord tr = TrackRecord.Load(trackName, 1); if (tr != null && tr.time < float.PositiveInfinity) { m_RecordText.gameObject.SetActive(true); m_RecordText.text = string.Format(m_RecordText.text, tr.time); } else { m_RecordText.gameObject.SetActive(false); } }
private static TrackRecordViewModel MapTrackRecordToTrackRecordViewModel(TrackRecord entity) { var pattern = new TrackRecordViewModel { Id = entity.Id, CreateDate = entity.CreateDate, UpdateDate = entity.UpdateDate, IsCancelled = entity.IsCancelled, IsWorking = entity.IsWorking, Domain = entity.PatternValue, StartTime = entity.StartDate, EndTime = entity.EndDate }; return(pattern); }
private string UpdateTrackRecord(SFITrackNum track, TrackRecord record) { DynamicParameters p = new DynamicParameters(); p.Add("@MappingID", track.int_Mappingid, DbType.Int32); p.Add("@AGid", track.int_AGid, DbType.Int32); p.Add("@SFInumber", track.vchar_SFInum, DbType.String); p.Add("@AGnumber", track.vchar_AGnum, DbType.String); p.Add("@dttm", record.dttm_Record_Dttm, DbType.DateTime); p.Add("@Description", record.nvchar_Description, DbType.String); p.Add("@DescriptionLocal", record.nvchar_Description_Local, DbType.String); p.Add("@city", record.nvchar_City, DbType.String); p.Add("@code", $"{record.dttm_Record_Dttm.ToString("yyyyMMddhhmmss")}_{track.int_Mappingid}", DbType.String); p.Add("@message", null, DbType.String, ParameterDirection.ReturnValue); return(SQLHelper.ExecuteStoredProcedure <string>(Constants.sp_RecordUpdate, p, "@message")); }
private int AddNewTrack(string tag) { Debug.Log("Adding new track"); Debug.Log("trackRecords pituus " + trackRecords.Length); TrackRecord[] tr = new TrackRecord[trackRecords.Length + 1]; for (int i = 0; i < trackRecords.Length; i++) { tr[i] = trackRecords[i]; } tr[tr.Length - 1] = new TrackRecord(tag); indices.Add(tag, tr.Length - 1); Debug.Log("tr pituus " + tr.Length); trackRecords = tr; return(tr.Length - 1); }
private void InitializeCurrentSets(SimulatorDataSet dataSet) { _currentSessionType = dataSet.SessionInfo.SessionType; if (dataSet.SessionInfo.SessionType == SessionType.Na || string.IsNullOrEmpty(dataSet.Source) || dataSet.PlayerInfo == null) { _initialized = false; return; } _currentSimulatorRecords = _simulatorsRecords.GetOrCreateSimulatorRecords(dataSet.Source); _currentTrackRecords = _currentSimulatorRecords.GetOrCreateTrackRecord(dataSet.SessionInfo.TrackInfo.TrackFullName); _currentVehicleRecordSet = _currentTrackRecords.GetOrCreateVehicleRecord(dataSet.PlayerInfo.CarName); _currentClassRecordSet = _currentTrackRecords.GetOrCreateClassRecord(dataSet.PlayerInfo.CarClassName); RefreshViewModel(); TrackRecordsViewModel.TrackRecord.IsHighlighted = false; TrackRecordsViewModel.ClassRecord.IsHighlighted = false; TrackRecordsViewModel.VehicleRecord.IsHighlighted = false; }
public Guid Create(TrackRecord entity, int userId) { var existingIdentity = this._identityRepository.Query(identity => identity.Id == userId).FirstOrDefault(); var existingPattern = this._patternRepository.Query(pattern => pattern.Value == entity.PatternValue.ToLower()).FirstOrDefault(); if (existingIdentity == null) { throw new ApplicationException("Parent Identity no found"); } if (existingPattern == null) { throw new ApplicationException("Parent Pattern not found"); } entity.Id = Guid.NewGuid(); entity.CreateDate = DateTime.Now; entity.LoginId = existingIdentity.Id; entity.PatternId = existingPattern.Id; return(this._repository.Create(entity)); }
public void RegisterDisconnectFromPage() { if (CurrentUser == null) { return; } var url = CurrentUser.CurrentPageUrl; var dateTimeNow = DateTime.Now; var timeSpanDiff = (dateTimeNow - CurrentUser.InitialAccessTime); var passedSeconds = timeSpanDiff.TotalSeconds; var entitySplit = url.Split('/').Where(a => a != "").ToList(); var entityName = entitySplit.FirstOrDefault() ?? ""; if (!string.IsNullOrWhiteSpace(entityName) && entityName.Contains("?")) { entityName = entityName.Split('?').FirstOrDefault(a => a != ""); } // you can add a rule for accepting only 1sec or more of access time var trackRecord = new TrackRecord() { Id = ++_id, UserId = CurrentUser.Id, RelativeUrl = url, EntityName = entityName, PassedSeconds = passedSeconds, BeginAccessDateTime = CurrentUser.InitialAccessTime, EndAccessDateTime = dateTimeNow }; MockDB.TrackRecords.Add(trackRecord); ConnectedUsers.TryRemove(Context.ConnectionId, out UserTrackInfo discard); }
public async ValueTask <MuzlanResponse <IList <TrackRecord> > > GetTracks(string artist, string album, CancellationToken token = default) { var pageUri = new Uri($"https://{_baseUri.DnsSafeHost}/artist/{Uri.EscapeDataString(artist)}/album/{Uri.EscapeDataString(album)}"); try { var content = await _client.TryGetStringAsync(pageUri, token).ConfigureAwait(false); using var document = await _parser.ParseDocumentAsync(content, token).ConfigureAwait(false); var tracks = new List <TrackRecord>(); foreach (var item in document.QuerySelectorAll <IHtmlDivElement>("div.page-content div.row-col div.row.item-list div.item.track")) { var trackItem = item.QuerySelector <IHtmlAnchorElement>("div.item-info div.item-title a"); var authorItem = item.QuerySelector <IHtmlAnchorElement>("div.item-info div.item-author a"); var trackName = trackItem.Text.Trim(); var trackUri = new Uri($"https://{_baseUri.DnsSafeHost}{trackItem.PathName}"); var trackDownload = new Uri($"https://{_baseUri.DnsSafeHost}{item.Dataset["src"]}"); var artistName = authorItem.Text.Trim(); var track = new TrackRecord(trackName, artistName, trackUri, trackDownload); tracks.Add(track); } return(MuzlanResponse <IList <TrackRecord> > .FromResult(tracks, pageUri)); } catch (Exception ex) { return(MuzlanResponse <IList <TrackRecord> > .FromException(ex, pageUri)); } }
public PharusEventTrackArgs(TrackRecord thetrackRecord) { trackRecord = thetrackRecord; }
public PharusEvent(ETrackState eventType, TrackRecord track) { m_pharusEventType = eventType; m_trackRecord = track; }
internal Track(TrackDatabase db, TrackRecord record) { this.db = db; this.record = record; }
public virtual void AddTrackRecord() { DateTime strDate; string strDes = null; string strDesLoc = null; string strCity = null; TrackRecord record; string tmpStr; int intNew = 0; int intError = 0; string strRes; try { intNew = 0; intError = 0; foreach (string s in RecordStr.Split((char)(10))) { tmpStr = s.Trim(); if (!string.IsNullOrWhiteSpace(tmpStr)) { if (tmpStr.Substring(0, 2) == "20") { strDate = Convert.ToDateTime(tmpStr.Split(new char[] { ' ' })[0] + " " + tmpStr.Split(new char[] { ' ' })[1]); strDes = GetDesc(tmpStr.Replace(strDate.ToString(), ""))[1]; strDesLoc = GetDesc(tmpStr.Replace(strDate.ToString(), ""))[0]; switch (tmpStr.IndexOf(" - ")) { case 0: strCity = "China"; break; default: strCity = tmpStr.Split(new string[] { " - " }, StringSplitOptions.RemoveEmptyEntries)[tmpStr.Split(new string[] { " - " }, StringSplitOptions.RemoveEmptyEntries).Length - 1]; break; } record = new TrackRecord(); record.dttm_Record_Dttm = strDate; record.nvchar_Description = strDes; record.nvchar_Description_Local = strDesLoc; record.nvchar_City = strCity; record.int_MappingId = SFITrackNum.int_Mappingid; record.int_AGid = SFITrackNum.int_AGid; record.vchar_SFInum = SFITrackNum.vchar_SFInum; record.vchar_AGnum = SFITrackNum.vchar_AGnum; strRes = UpdateTrackRecord(SFITrackNum, record); if (strRes == "N") { intNew += 1; } else if (strRes == "F") { intError += 1; } trackRecords.Add(record); } } } } catch (Exception ex) { WriteServerLog(SFITrackNum, "0|0|0|", ex.Message); } WriteServerLog(SFITrackNum, $"{intError + intNew}|{intNew}|{intError}", null); XtraMessageBox.Show("导入数据完成,导入结果请查看日志", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information); }
internal Track(TrackDatabase db, TrackRecord record) { this.db = db; this.record = record; }
public void CalculateMonth(TrackRecord trackRecord) { }
public async ValueTask <MuzlanResponse <DownloadRecord> > DownloadTrack(TrackRecord track, AuthRecord auth, CancellationToken cancellationToken = default) { var sourceUri = new Uri(track.DownloadUri, $"?key={auth.MediaToken}"); var fileExtension = NormalizeFileExtension(Path.GetExtension(sourceUri.LocalPath)); var fileName = track.Name; try { using var response = await _client.GetAsync(sourceUri, HttpCompletionOption.ResponseHeadersRead, cancellationToken).ConfigureAwait(false); response.EnsureSuccessStatusCode(); var contentLength = response.Content.Headers.GetValues("Content-Length").First(); var fileSize = int.Parse(contentLength); var fileOffset = 0; var bytesRead = 0; var fileData = new byte[fileSize]; await OnDownloadProgressChanged(fileOffset, fileSize).ConfigureAwait(false); using var stream = await response.Content.ReadAsStreamAsync(cancellationToken).ConfigureAwait(false); bool hasCompletedEvent = false; do { if (fileOffset >= fileSize) { break; } bytesRead = await stream.ReadAsync( ConvertToMemory(fileData, fileOffset, 8192), cancellationToken).ConfigureAwait(false); fileOffset += bytesRead; if (fileOffset == fileSize) { hasCompletedEvent = true; } await OnDownloadProgressChanged(fileOffset, fileSize).ConfigureAwait(false); } while (bytesRead > 0); if (!hasCompletedEvent) { await OnDownloadProgressChanged(fileSize, fileSize).ConfigureAwait(false); } var file = new DownloadRecord(fileName + fileExtension, fileData, sourceUri); return(MuzlanResponse <DownloadRecord> .FromResult(file, sourceUri)); } catch (Exception ex) { return(MuzlanResponse <DownloadRecord> .FromException(ex, sourceUri)); } }
public async Task <IActionResult> UpdateWithTracking(int id, Student student) { var existingStudent = await _context.Students.FindAsync(id); if (id != student.StudentId) { return(BadRequest()); } var existingStudentData = new Student() { FirstName = existingStudent.FirstName, LastName = existingStudent.LastName, StudentAge = existingStudent.StudentAge, DOB = existingStudent.DOB }; var trackRecordData = new TrackRecord() { UpdatedColumn = "", OldValue = "", UpdatedValue = "", UpdatedTime = new TimeSpan() }; if (existingStudentData.FirstName != student.FirstName) { student.IsUpdated = true; trackRecordData.UpdatedColumn = "FirstName"; trackRecordData.OldValue = existingStudentData.FirstName; trackRecordData.UpdatedValue = student.FirstName; trackRecordData.UpdatedTime = DateTime.Now.TimeOfDay; } else if (existingStudentData.LastName != student.LastName) { student.IsUpdated = true; trackRecordData.UpdatedColumn = "LastName"; trackRecordData.OldValue = existingStudentData.LastName; trackRecordData.UpdatedValue = student.LastName; trackRecordData.UpdatedTime = DateTime.Now.TimeOfDay; } else if (existingStudentData.StudentAge != student.StudentAge) { student.IsUpdated = true; trackRecordData.UpdatedColumn = "StudentAge"; trackRecordData.OldValue = Convert.ToString(existingStudentData.StudentAge); trackRecordData.UpdatedValue = Convert.ToString(student.StudentAge); trackRecordData.UpdatedTime = DateTime.Now.TimeOfDay; } else if (existingStudentData.DOB != student.DOB) { student.IsUpdated = true; trackRecordData.UpdatedColumn = "DOB"; trackRecordData.OldValue = Convert.ToString(existingStudentData.DOB); trackRecordData.UpdatedValue = Convert.ToString(student.DOB); trackRecordData.UpdatedTime = DateTime.Now.TimeOfDay; } _context.TrackRecords.Add(trackRecordData); _context.Entry(existingStudent).State = EntityState.Detached; _context.Entry(student).State = EntityState.Modified; _context.SaveChanges(); try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!StudentExists(id)) { return(NotFound()); } else { throw; } } return(Ok()); }
void Start() { // we are only interested in this particular track, the time of one lap bestTime.text = "Best time: " + TrackRecord.Load("ArtTest", 1).time.ToString(".##") + " s"; mostCoins.text = "Total coins: " + CoinManager.GetCoinsNumber().ToString(); }