Exemple #1
0
        public virtual bool Meet(IFeaturable fe)
        {
            DataBlock bl = new DataBlock();

            bl.AddData(fe);
            return(this.Select(bl).GetAllDatas().Count == 1);
        }
Exemple #2
0
        public virtual void AddData(IFeaturable data)
        {
            int        index = indexMap.Count;
            MarkedData md    = new MarkedData(data, index);

            dataList.Add(md);
            this.feList.Add(data);
            indexMap[index] = index;
        }
Exemple #3
0
        public override int[] Sort(IList <MarkedData> datas, string feature)
        {
            int[] r = new int[datas.Count];
            MyDictionary <string, int> set = new MyDictionary <string, int>();

            if (comparator == null)
            {
                comparator = GetComparator(feature);
            }
            if (comparator != null)
            {
                datas.Sort(GetComparator(feature));
            }
            for (int i = 0; i < datas.Count; i++)
            {
                MarkedData data = datas[i];
                if (data != null)
                {
                    IFeaturable fe = data.GetFe();
                    if (fe != null)
                    {
                        object v = fe.GetFeatureValue(feature);
                        if (v != null)
                        {
                            SetIndex(r, i, v, set);
                        }
                        else
                        {
                            r[i] = REMOVE;
                        }
                    }
                    else
                    {
                        r[i] = REMOVE;
                    }
                }
                else
                {
                    r[i] = REMOVE;
                }
            }
            return(r);
        }
Exemple #4
0
 public virtual void AddDataIngoreCheck(IFeaturable data)
 {
     AddData(data);
 }
Exemple #5
0
 public void AddFeaturable(IFeaturable featurable)
 {
     _featurables.Add(featurable);
 }
Exemple #6
0
 public virtual void SetFe(IFeaturable fe)
 {
     this.fe = fe;
 }
Exemple #7
0
 public MarkedData(IFeaturable fe, int index)
     : base()
 {
     this.fe    = fe;
     this.index = index;
 }