Ejemplo n.º 1
0
 public void LoadData(QwasiAnalyticsData analyticsData, QGEdge edge)
 {
     _hasRunAnimation = !this.AnimateOnLoadingData;
     this.GeneratedChartControl.DisableAnimations = !this.AnimateOnLoadingData;
     this.LoadedAnalyticsData = analyticsData;
     this.LoadedEdge          = edge;
 }
        public QwasiAnalyticsData CompileAnalytics(int stepInterval, int stepRangeStart, int stepRangeEnd)
        {
            if (stepRangeEnd < stepRangeStart)
            {
                return(new QwasiAnalyticsData());
            }

            __initializeMath();
            _currentStep = (IHSExplicitVectorValue <HSEdgeState>)(IHSExplicitVector <HSEdgeState> .ZeroVector(_hs) + __qwGetStartVector(IQGVertex.StartVertex));
            QwasiAnalyticsData analyticsData = new QwasiAnalyticsData()
            {
                StepInterval = stepInterval, MaxStepValue = 0
            };
            QwasiEvaluationState currentState = new QwasiEvaluationState(__performStepOperation(stepRangeStart), stepRangeStart);

            analyticsData.StateEvaluationList.Add(currentState);

            int stepCount;

            for (stepCount = stepRangeStart; stepCount + stepInterval <= stepRangeEnd; stepCount += stepInterval)
            {
                currentState = new QwasiEvaluationState(__performStepOperation(stepInterval), stepCount + stepInterval);
                analyticsData.StateEvaluationList.Add(currentState);
            }
            analyticsData.MaxStepValue = stepCount;

            List <QGEdge> updatedEdges = new List <QGEdge>();

            foreach (HSEdgeState edgeState in analyticsData.BasisStates)
            {
                QGEdge edge = edgeState.Vertex1.GetEdge(edgeState.Vertex2);
                if (updatedEdges.Contains(edge))
                {
                    continue;
                }

                this.AnalyticsEdgeLabels[edge].LoadAnalyticsData(analyticsData);

                updatedEdges.Add(edge);
            }

            this.CurrentAnalyticsData = analyticsData;
            this.RaiseAnalyticsDataCompiledEvent(new QwasiAnalyticsEventArgs(analyticsData));

            return(analyticsData);
        }
 public QwasiAnalyticsEventArgs(QwasiAnalyticsData analyticsData)
 {
     this.AnalyticsData = analyticsData;
 }