예제 #1
0
		internal Structs.Patrol[] getPatrols(
			Structs.PatrolClass patrolClass, 
			bool alsoIncludeUnknownClass,
			bool OnlyIncludePatrolsWithSpace,
			int PatrolIdToAlwaysView)
		{
			Trace.WriteLine("CDatabase: Entering getPatrols(PatrolClass=" + 
				patrolClass.ToString() + ", alsoIncludeUnknownClass=" +
				alsoIncludeUnknownClass.ToString() + ")");

			string select = "PClass=" + ((int)patrolClass).ToString();
			if (alsoIncludeUnknownClass)
				select += " or PClass=" + 
					((int)Structs.PatrolClass.Okänd).ToString();

			ArrayList patrols = new ArrayList();
			Structs.Patrol patrol = new Structs.Patrol();
			
			Structs.Competition competition = getCompetitions()[0];
			DateTime compStart = competition.StartTime;
			foreach(DatabaseDataset.PatrolsRow row in Database.Patrols.Select(
				select, "PatrolId"))
			{
				patrol = new Structs.Patrol();
				patrol.CompetitionId = row.CompetitionId;
				patrol.PatrolId = row.PatrolId;
				patrol.StartDateTime = compStart.AddMinutes(row.StartDateTime);
				patrol.PClass = (Structs.PatrolClass)row.PClass;
				if (row.StartDateTimeDisplay > -1054800000)
					patrol.StartDateTimeDisplay = compStart.AddMinutes(row.StartDateTimeDisplay);
				else
					patrol.StartDateTimeDisplay = patrol.StartDateTime;
				patrol.LockedForAutomatic = row.Automatic;

				if (!OnlyIncludePatrolsWithSpace |
					Database.Competitors.Select("PatrolId=" + 
						patrol.PatrolId.ToString()).Length<competition.PatrolSize |
					patrol.PatrolId == PatrolIdToAlwaysView)
				{
					patrols.Add(patrol);
				}
			}
			return (Structs.Patrol[])patrols.ToArray(patrol.GetType());
		}
예제 #2
0
		internal Structs.Patrol[] getPatrols()
		{
			Trace.WriteLine("CDatabase: Entering getPatrols()");

			ArrayList patrols = new ArrayList();
			Structs.Patrol patrol = new Structs.Patrol();

			DateTime compStart = getCompetitions()[0].StartTime;
			foreach(DatabaseDataset.PatrolsRow row in Database.Patrols.Select("", "PatrolId"))
			{
				patrol = new Structs.Patrol();
				patrol.CompetitionId = row.CompetitionId;
				patrol.PatrolId = row.PatrolId;
				patrol.StartDateTime = compStart.AddMinutes(row.StartDateTime);
				patrol.PClass = (Structs.PatrolClass)row.PClass;
				if (row.StartDateTimeDisplay > -1054800000)
					patrol.StartDateTimeDisplay = compStart.AddMinutes(row.StartDateTimeDisplay);
				else
					patrol.StartDateTimeDisplay = patrol.StartDateTime;
				patrol.LockedForAutomatic = row.Automatic;
				patrols.Add(patrol);
			}

			return (Structs.Patrol[])patrols.ToArray(patrol.GetType());
		}