示例#1
0
        public RefrigtzChessPortable.AllDraw GetRefregiz(int No)
        {
            Object o = new Object();

            lock (o)
            {
                FileStream DummyFileStream = null;
                DummyFileStream = new FileStream(SAllDraw, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.Read);
                int p = 0;
                RefrigtzChessPortable.AllDraw Dummy = null;
                BinaryFormatter Formatters          = new BinaryFormatter();
                DummyFileStream.Seek(0, SeekOrigin.Begin);

                while (p <= No)
                {
                    if (DummyFileStream.Length >= DummyFileStream.Position)
                    {
                        Dummy = (RefrigtzChessPortable.AllDraw)Formatters.Deserialize(DummyFileStream);
                    }
                    else
                    {
                        Dummy = null;
                    }
                    p++;
                }
                DummyFileStream.Flush(); DummyFileStream.Close();

                return(Dummy);
            }
        }
示例#2
0
        public RefregitzOperator(int Order, bool MovementsAStarGreedyHeuristicTFou, bool IgnoreSelfObject, bool UsePenaltyRegardMechnisa, bool BestMovment, bool PredictHurist, bool OnlySel, bool AStarGreedyHuris, bool Arrangments//) : base(MovementsAStarGreedyHeuristicTFou, IgnoreSelfObject, UsePenaltyRegardMechnisa, BestMovment, PredictHurist, OnlySel, AStarGreedyHuris, Arrangments
                                 )
        {
            if (UsePenaltyRegardMechnisamT && AStarGreedyHeuristicT)
            {
                AllDrawKind = 4;
            }
            else
            if ((!UsePenaltyRegardMechnisamT) && AStarGreedyHeuristicT)
            {
                AllDrawKind = 3;
            }
            if (UsePenaltyRegardMechnisamT && (!AStarGreedyHeuristicT))
            {
                AllDrawKind = 2;
            }
            if ((!UsePenaltyRegardMechnisamT) && (!AStarGreedyHeuristicT))
            {
                AllDrawKind = 1;
            }
            //Set Configuration To True for some unknown reason!.
            //UpdateConfigurationTableVal = true;
            SetAllDrawKindString();
            SAllDraw = AllDrawKindString;
            Object o = new Object();

            lock (o)
            {
                MovementsAStarGreedyHeuristicFoundT = MovementsAStarGreedyHeuristicTFou;
                IgnoreSelfObjectsT         = IgnoreSelfObject;
                UsePenaltyRegardMechnisamT = UsePenaltyRegardMechnisa;
                BestMovmentsT         = BestMovment;
                PredictHeuristicT     = PredictHurist;
                OnlySelfT             = OnlySel;
                AStarGreedyHeuristicT = AStarGreedyHuris;
                ArrangmentsT          = Arrangments;
                RefrigtzChessPortable.AllDraw Current = new RefrigtzChessPortable.AllDraw(Order, MovementsAStarGreedyHeuristicFoundT, IgnoreSelfObjectsT, UsePenaltyRegardMechnisamT, BestMovmentsT, PredictHeuristicT, OnlySelfT, AStarGreedyHeuristicT, ArrangmentsT);
            }
        }
        public RefrigtzChessPortable.AllDraw Load(bool Quantum, int Order)
        {
            object o = new object();

            lock (o)
            {
                if (File.Exists(SAllDraw))
                {
                    FileInfo A = new FileInfo(SAllDraw);
                    if (A.Length == 0)
                    {
                        return(null);
                    }

                    RefrigtzChessPortable.AllDraw tt = new RefrigtzChessPortable.AllDraw(Order, MovementsAStarGreedyHeuristicFoundT, IgnoreSelfobjectsT, UsePenaltyRegardMechnisamT, BestMovmentsT, PredictHeuristicT, OnlySelfT, AStarGreedyHeuristicT, ArrangmentsT);
                    FileStream      DummyFileStream  = new FileStream(SAllDraw, System.IO.FileMode.OpenOrCreate, System.IO.FileAccess.ReadWrite);
                    BinaryFormatter Formatters       = new BinaryFormatter();
                    DummyFileStream.Seek(0, SeekOrigin.Begin);

                    Console.WriteLine("Loading...");
                    tt = (RefrigtzChessPortable.AllDraw)Formatters.Deserialize(DummyFileStream);
                    if (tt == null)
                    {
                        return(tt);
                    }
                    tt = (RefrigtzChessPortable.AllDraw)tt.LoaderEC(Quantum, Order, DummyFileStream, Formatters);

                    DummyFileStream.Flush();
                    DummyFileStream.Close();

                    return(tt);
                }

                return(null);

                //return Node.al;
            }
        }