public static ICollection <KeyValuePair <int, T> > GetCollection <T>(this IUsesMARSData <T> obj)
 {
     return(IUsesMARSDataMethods <T> .GetCollection());
 }
 public static T GetIdValue <T>(this IUsesMARSData <T> obj, int dataId)
 {
     return(IUsesMARSDataMethods <T> .GetIdValue(dataId));
 }
 public static bool RemoveData <T>(this IUsesMARSData <T> obj, int dataId)
 {
     return(IUsesMARSDataMethods <T> .RemoveData(dataId));
 }
 public static bool UpdateData <T>(this IUsesMARSData <T> obj, int dataId, T value)
 {
     return(IUsesMARSDataMethods <T> .UpdateData(dataId, value));
 }
 public static int AddData <T>(this IUsesMARSData <T> obj, T value)
 {
     return(IUsesMARSDataMethods <T> .AddData(value));
 }
 /// <summary>
 /// Gets the value for a particular type of data for a given data id
 /// </summary>
 /// <typeparam name="T">The type of data to return</typeparam>
 /// <param name="dataUser">The functionality subscriber that will actually do the data lookup</param>
 /// <returns>The typed value for the given data id</returns>
 public T ResolveValue <T>(IUsesMARSData <T> dataUser)
 {
     return(dataUser.GetIdValue(m_DataId));
 }