コード例 #1
0
 public DataReader(IMultemic resultset)
 {
     m_resultset = resultset.Rubrics;
     x_size      = resultset.Rubrics.Count;
     m_values    = resultset.Select(p =>
                                    new object[] { p.SystemSerialCode }
                                    .Concat(p.ValueArray).ToArray()).ToArray();
     y_size = m_values.Length;
 }
コード例 #2
0
 public DataReader(SpaceCard[] resultset)
 {
     if (resultset.Length > 0)
     {
         m_resultset = resultset.First().Collection.Rubrics;
         x_size      = m_resultset.Count;
         m_values    = resultset.Select(p =>
                                        new object[] { p.SystemSerialCode }
                                        .Concat(p.ValueArray).ToArray()).ToArray();
         y_size = m_values.Length;
     }
 }
コード例 #3
0
        /// <summary>
        /// The UpdateSummation.
        /// </summary>
        /// <returns>The <see cref="MemberRubrics"/>.</returns>
        public MemberRubrics UpdateSummation()
        {
            AggregateOperand parsed = new AggregateOperand();

            summaryRubrics = new MemberRubrics();
            Figure summaryFigure = new Figure(figures.Rubrics.AsValues().Where(c =>
                                                                               (c.RubricName.Split('=').Length > 1 ||
                                                                                (c.SummaryOperand != AggregateOperand.None))).Select(c =>
                                                                                                                                     (new MemberRubric(c)
            {
                SummaryRubric = (c.SummaryRubric != null) ? c.SummaryRubric :
                                (c.RubricName.Split('=').Length > 1) ?
                                new MemberRubric(c)
                {
                    RubricName = c.RubricName.Split('=')[1]
                } : null,
                SummaryOperand = (Enum.TryParse(c.RubricName.Split('=')[0], true, out parsed)) ? parsed : c.SummaryOperand
            })).ToArray(), "Summary_" + figures.GetType().Name);

            figures.Summary = summaryFigure.Combine();
            summaryRubrics  = (MemberRubrics)summaryFigure.Rubrics;
            return(summaryRubrics);
        }
コード例 #4
0
 public MathRubrics(MemberRubrics rubrics)
 {
     Rubrics = rubrics;
     Data    = rubrics.Collection;
 }
コード例 #5
0
 /// <summary>
 /// The UpdateReplication.
 /// </summary>
 /// <returns>The <see cref="MemberRubrics"/>.</returns>
 public MemberRubrics UpdateReplication()
 {
     replicateRubrics = new MemberRubrics();
     replicateRubrics.Put(aggregateRubrics.AsValues().Where(p => p.AggregateOperand == AggregateOperand.Bind));
     return(replicateRubrics);
 }
コード例 #6
0
        /// <summary>
        /// The UpdateAggregation.
        /// </summary>
        /// <returns>The <see cref="MemberRubrics"/>.</returns>
        public MemberRubrics UpdateAggregation()
        {
            AggregateOperand parsed      = new AggregateOperand();
            Links            targetLinks = figures.Linker.TargetLinks;

            aggregateRubrics = new MemberRubrics();
            MemberRubric[] _aggregateRubrics = figures.Rubrics.AsValues()
                                               .Where(c => (c.RubricName.Split('#').Length > 1) ||
                                                      (c.AggregateRubric != null &&
                                                       c.AggregateOperand != AggregateOperand.None) ||
                                                      c.AggregateOperand != AggregateOperand.None).ToArray();
            foreach (MemberRubric c in _aggregateRubrics)
            {
                c.AggregateRubric = (c.AggregateRubric != null) ?
                                    c.AggregateRubric :
                                    (c.AggregateOperand != AggregateOperand.None) ?
                                    new MemberRubric(c)
                {
                    RubricName = c.RubricName
                } :
                new MemberRubric(c)
                {
                    RubricName = c.RubricName.Split('#')[1]
                };

                c.AggregateOperand = c.AggregateOperand != AggregateOperand.None ?
                                     c.AggregateOperand :
                                     (Enum.TryParse(c.RubricName.Split('#')[0], true, out parsed)) ?
                                     parsed : AggregateOperand.None;

                c.AggregateLinkId = (targetLinks.AsValues().Where(cr => cr.Target.Figures.Rubrics.AsValues()
                                                                  .Where(ct => ct.RubricName == ((c.AggregateRubric != null) ?
                                                                                                 c.AggregateRubric.RubricName :
                                                                                                 c.RubricName.Split('#')[1])).Any()).Any()) ?
                                    targetLinks.AsValues().Where(cr => cr.Target.Figures.Rubrics.AsValues()
                                                                 .Where(ct => ct.RubricName == ((c.AggregateRubric != null) ?
                                                                                                c.AggregateRubric.RubricName :
                                                                                                c.RubricName.Split('#')[1])).Any()).ToArray()
                                    .Select(ix => targetLinks.IndexOf(ix)).FirstOrDefault()
                                              : -1;

                c.AggregateOrdinal = targetLinks.AsValues().Where(cr => cr.Target.Figures.Rubrics.AsValues()
                                                                  .Where(ct => ct.RubricName == ((c.AggregateRubric != null) ?
                                                                                                 c.AggregateRubric.RubricName :
                                                                                                 c.RubricName.Split('#')[1])).Any())
                                     .Select(cr => cr.Target.Figures.Rubrics.AsValues()
                                             .Where(ct => ct.RubricName == ((c.AggregateRubric != null) ?
                                                                            c.AggregateRubric.RubricName :
                                                                            c.RubricName.Split('#')[1]))
                                             .Select(o => o.RubricId).FirstOrDefault()).FirstOrDefault();
            }

            aggregateRubrics.Put(_aggregateRubrics);
            aggregateRubrics.AsValues().Where(j => j.AggregateLinkId > -1)
            .Select(p => p.AggregateLinks =
                        new Links(targetLinks.AsCards().Where((x, y) =>
                                                              p.AggregateLinkId == x.Index).Select(v => v.Value).ToArray()));

            UpdateReplication();

            return(aggregateRubrics);
        }
コード例 #7
0
 /// <summary>
 /// Initializes a new instance of the <see cref="LinkMember"/> class.
 /// </summary>
 public LinkMember()
 {
     KeyRubrics = new MemberRubrics();
 }