#region Copyright
////////////////////////////////////////////////////////////////////////////////
// The following FIT Protocol software provided may be used with FIT protocol
// devices only and remains the copyrighted property of Dynastream Innovations Inc.
// The software is being provided on an "as-is" basis and as an accommodation,
// and therefore all warranties, representations, or guarantees of any kind
// (whether express, implied or statutory) including, without limitation,
// warranties of merchantability, non-infringement, or fitness for a particular
// purpose, are specifically disclaimed.
//
// Copyright 2016 Dynastream Innovations Inc.
////////////////////////////////////////////////////////////////////////////////
// ****WARNING**** This file is auto-generated! Do NOT edit this file.
// Profile Version = 16.60Release
// Tag = production-akw-16.60.00-0-g5d3d436
////////////////////////////////////////////////////////////////////////////////
#endregion
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Text;
using System.IO;
namespace Dynastream.Fit
{
///
/// Implements the Schedule profile message.
///
public class ScheduleMesg : Mesg
{
#region Fields
static class ProductSubfield
{
public static ushort GarminProduct = 0;
public static ushort Subfields = 1;
public static ushort Active = Fit.SubfieldIndexActiveSubfield;
public static ushort MainField = Fit.SubfieldIndexMainField;
}
#endregion
#region Constructors
public ScheduleMesg() : base(Profile.GetMesg(MesgNum.Schedule))
{
}
public ScheduleMesg(Mesg mesg) : base(mesg)
{
}
#endregion // Constructors
#region Methods
///
/// Retrieves the Manufacturer field
/// Comment: Corresponds to file_id of scheduled workout / course.
/// Returns nullable ushort representing the Manufacturer field
public ushort? GetManufacturer()
{
return (ushort?)GetFieldValue(0, 0, Fit.SubfieldIndexMainField);
}
///
/// Set Manufacturer field
/// Comment: Corresponds to file_id of scheduled workout / course.
/// Nullable field value to be set
public void SetManufacturer(ushort? manufacturer_)
{
SetFieldValue(0, 0, manufacturer_, Fit.SubfieldIndexMainField);
}
///
/// Retrieves the Product field
/// Comment: Corresponds to file_id of scheduled workout / course.
/// Returns nullable ushort representing the Product field
public ushort? GetProduct()
{
return (ushort?)GetFieldValue(1, 0, Fit.SubfieldIndexMainField);
}
///
/// Set Product field
/// Comment: Corresponds to file_id of scheduled workout / course.
/// Nullable field value to be set
public void SetProduct(ushort? product_)
{
SetFieldValue(1, 0, product_, Fit.SubfieldIndexMainField);
}
///
/// Retrieves the GarminProduct subfield
/// Nullable ushort representing the GarminProduct subfield
public ushort? GetGarminProduct()
{
return (ushort?)GetFieldValue(1, 0, ProductSubfield.GarminProduct);
}
///
///
/// Set GarminProduct subfield
/// Subfield value to be set
public void SetGarminProduct(ushort? garminProduct)
{
SetFieldValue(1, 0, garminProduct, ProductSubfield.GarminProduct);
}
///
/// Retrieves the SerialNumber field
/// Comment: Corresponds to file_id of scheduled workout / course.
/// Returns nullable uint representing the SerialNumber field
public uint? GetSerialNumber()
{
return (uint?)GetFieldValue(2, 0, Fit.SubfieldIndexMainField);
}
///
/// Set SerialNumber field
/// Comment: Corresponds to file_id of scheduled workout / course.
/// Nullable field value to be set
public void SetSerialNumber(uint? serialNumber_)
{
SetFieldValue(2, 0, serialNumber_, Fit.SubfieldIndexMainField);
}
///
/// Retrieves the TimeCreated field
/// Comment: Corresponds to file_id of scheduled workout / course.
/// Returns DateTime representing the TimeCreated field
public DateTime GetTimeCreated()
{
return TimestampToDateTime((uint?)GetFieldValue(3, 0, Fit.SubfieldIndexMainField));
}
///
/// Set TimeCreated field
/// Comment: Corresponds to file_id of scheduled workout / course.
/// Nullable field value to be set
public void SetTimeCreated(DateTime timeCreated_)
{
SetFieldValue(3, 0, timeCreated_.GetTimeStamp(), Fit.SubfieldIndexMainField);
}
///
/// Retrieves the Completed field
/// Comment: TRUE if this activity has been started
/// Returns nullable Bool enum representing the Completed field
public Bool? GetCompleted()
{
object obj = GetFieldValue(4, 0, Fit.SubfieldIndexMainField);
Bool? value = obj == null ? (Bool?)null : (Bool)obj;
return value;
}
///
/// Set Completed field
/// Comment: TRUE if this activity has been started
/// Nullable field value to be set
public void SetCompleted(Bool? completed_)
{
SetFieldValue(4, 0, completed_, Fit.SubfieldIndexMainField);
}
///
/// Retrieves the Type field
/// Returns nullable Schedule enum representing the Type field
new public Schedule? GetType()
{
object obj = GetFieldValue(5, 0, Fit.SubfieldIndexMainField);
Schedule? value = obj == null ? (Schedule?)null : (Schedule)obj;
return value;
}
///
/// Set Type field
/// Nullable field value to be set
public void SetType(Schedule? type_)
{
SetFieldValue(5, 0, type_, Fit.SubfieldIndexMainField);
}
///
/// Retrieves the ScheduledTime field
/// Returns nullable uint representing the ScheduledTime field
public uint? GetScheduledTime()
{
return (uint?)GetFieldValue(6, 0, Fit.SubfieldIndexMainField);
}
///
/// Set ScheduledTime field
/// Nullable field value to be set
public void SetScheduledTime(uint? scheduledTime_)
{
SetFieldValue(6, 0, scheduledTime_, Fit.SubfieldIndexMainField);
}
#endregion // Methods
} // Class
} // namespace