Ejemplo n.º 1
0
        ExtractSplitCollectionsFromFeatureSet(ICollection <ManagedFeature> featureSet,
                                              BeatBarSettingsData settings,
                                              List <MarkCollection> otherMarks = null)
        {
            List <MarkCollection> retVal = new List <MarkCollection>();

            string[] collectionNames = settings.BeatCollectionNames(true);
            KeyValuePair <int, double>[] tsValuePairs = new KeyValuePair <int, double> [(featureSet.Count * 2)];

            int count = 0;

            double featureMS     = -1;
            double lastFeatureMS = -1;
            int    labelVal      = 0;

            ManagedFeature lastFeature = null;

            foreach (ManagedFeature feature in featureSet)
            {
                if (lastFeature == null)
                {
                    lastFeature = feature;
                    continue;
                }

                labelVal      = (Convert.ToInt32(lastFeature.label) * 2) - 1;
                lastFeatureMS = lastFeature.timestamp.totalMilliseconds();

                tsValuePairs[count++] =
                    new KeyValuePair <int, double>(labelVal, lastFeatureMS);

                featureMS           = feature.timestamp.totalMilliseconds();
                tsValuePairs[count] =
                    new KeyValuePair <int, double>(labelVal + 1,
                                                   lastFeatureMS + ((featureMS - lastFeatureMS) / settings.Divisions));

                count++;
                lastFeature = feature;
            }

            for (int j = 1; j <= collectionNames.Length; j++)
            {
                MarkCollection mc = new MarkCollection();
                mc.Enabled = true;
                mc.Name    = collectionNames[j - 1];

                foreach (KeyValuePair <int, double> tsValue in tsValuePairs)
                {
                    if (tsValue.Key == j)
                    {
                        mc.Marks.Add(TimeSpan.FromMilliseconds(tsValue.Value));
                    }
                }
                RemoveDuplicateMarks(ref mc, otherMarks);
                retVal.Add(mc);
            }
            return(retVal);
        }
Ejemplo n.º 2
0
 public TransitFeature GetLatestAccountFeedItemFeatureByAccountFeedId(string ticket, int id)
 {
     using (SnCore.Data.Hibernate.Session.OpenConnection())
     {
         ISession session           = SnCore.Data.Hibernate.Session.Current;
         ManagedSecurityContext sec = new ManagedSecurityContext(session, ticket);
         Feature feature            = ManagedAccountFeedItem.GetLatestFeatureByAccountFeedId(session, id);
         if (feature == null)
         {
             return(null);
         }
         ManagedFeature m_feature = new ManagedFeature(session, feature);
         return(m_feature.GetTransitInstance(sec));
     }
 }
Ejemplo n.º 3
0
        public TransitFeature FindLatestFeature(string ticket, string featuretype, int objectid)
        {
            using (SnCore.Data.Hibernate.Session.OpenConnection())
            {
                ISession session           = SnCore.Data.Hibernate.Session.Current;
                ManagedSecurityContext sec = new ManagedSecurityContext(session, ticket);
                int feature_id             = ManagedFeature.GetLatestFeatureId(session, featuretype, objectid);

                if (feature_id == 0)
                {
                    return(null);
                }

                return(new ManagedFeature(session, feature_id).GetTransitInstance(sec));
            }
        }
Ejemplo n.º 4
0
        public void DeleteAllFeatures(string ticket, TransitFeature token)
        {
            using (SnCore.Data.Hibernate.Session.OpenConnection())
            {
                ISession session           = SnCore.Data.Hibernate.Session.Current;
                ManagedSecurityContext sec = new ManagedSecurityContext(session, ticket);

                if (!sec.IsAdministrator())
                {
                    throw new ManagedAccount.AccessDeniedException();
                }

                ManagedFeature.Delete(session, token.DataObjectName, token.DataRowId);
                SnCore.Data.Hibernate.Session.Flush();
            }
        }
Ejemplo n.º 5
0
 public TransitFeature GetLatestAccountFeedItemFeatureByAccountFeedId(string ticket, int id)
 {
     using (SnCore.Data.Hibernate.Session.OpenConnection())
     {
         ISession session = SnCore.Data.Hibernate.Session.Current;
         ManagedSecurityContext sec = new ManagedSecurityContext(session, ticket);
         Feature feature = ManagedAccountFeedItem.GetLatestFeatureByAccountFeedId(session, id);
         if (feature == null) return null;
         ManagedFeature m_feature = new ManagedFeature(session, feature);
         return m_feature.GetTransitInstance(sec);
     }
 }