Esempio n. 1
0
        private static void fillList()
        {
            //wait list ready
            m_runningLIst = PrefetchList.getNextReadyList();
            if (m_runningLIst == ListNumber.Undefine)
            {
                m_layersFinishid = PrefetchList.m_lastListReady;
                if (m_layersFinishid)
                {
                    m_state = IntState.Wait;
                }
                return;
            }

            m_layersFinishid = false;

            m_stopWatch.Restart();

            if (m_runningLIst == ListNumber.list1)
            {
                NativeMethods.PCI_Execute_List_1();
            }
            else
            {
                NativeMethods.PCI_Execute_List_2();
            }

            m_currenlList = (Int32)PrefetchList.getLayerNumber(m_runningLIst);
            ;
            m_state = IntState.Work;
        }
Esempio n. 2
0
 internal static bool isOneListOnLayer(ListNumber list)
 {
     if (list == ListNumber.Undefine)
     {
         return(true);
     }
     return(m_l[(Int32)list].finishid);
 }
Esempio n. 3
0
 public static void setFree(ListNumber list)
 {
     if (list == ListNumber.Undefine)
     {
         return;
     }
     m_l[(Int32)list].filling = ListStateFill.free;
 }
Esempio n. 4
0
 public static UInt64 getLayerNumber(ListNumber list)
 {
     if (list == ListNumber.Undefine)
     {
         return(0);
     }
     return(m_l[(Int32)list].layerNumber);
 }
Esempio n. 5
0
 public listState(ListNumber num)
 {
     filling      = ListStateFill.free;
     number       = num;
     exListNumber = 0;
     size         = 0;
     finishid     = false;
     layerNumber  = 0;
 }
Esempio n. 6
0
 static public void resetList()
 {
     m_l[0].reset();
     m_l[1].reset();
     m_layerNumber           = 0;
     m_currentList           = ListNumber.Undefine;
     m_lastListReady         = false;
     m_lastedStyle.lPower    = long.MaxValue;
     m_lastedStyle.lMarkSize = long.MaxValue;
 }
Esempio n. 7
0
 public static int getAnswer()
 {
     for (int a = 2; a < 101; a++)
     {
         for (int b = 2; b < 101 ; b++)
         {
             ListNumber n = new ListNumber(a);
             items.Add(n.Pow(b));
         }
     }
     return items.Count;
 }
Esempio n. 8
0
        public static string getListStateDebug(ListNumber list)
        {
            if (list == ListNumber.Undefine)
            {
                return("Undefine list..");
            }
            string res = "";

            return(res);
            //res = string.Format(", eXList: {0, -6}",
            //    m_l[(Int32)list].exListNumber.ToString("D6"));//
            //return res;
        }
Esempio n. 9
0
 private static void processStopRequest()
 {
     NativeMethods.PCI_Stop_Execution();
     NativeMethods.PCI_Write_Port(0xC, 0x000);
     NativeMethods.PCI_Write_DA_List((UInt16)0);
     fileLoader.m_mut.WaitOne();    //lock file loader thread
     fileLoader.resetFile();
     PrefetchList.resetList();
     m_runningLIst = ListNumber.Undefine;
     fileLoader.m_mut.ReleaseMutex();
     m_inputSignals &= ~(IntSignals.Reset);
     m_state         = IntState.Wait; // after reset always to wait State.
 }
Esempio n. 10
0
        public static void Main(string[] args)
        {
            ListNumber n = new ListNumber(1);

            for (int i = 2; i < 101; i++)
            {
                n = n*i;
            }

            Console.WriteLine("Answer: {0}", n.DigitSum());

            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);
        }
Esempio n. 11
0
        public static void stepExecution()
        {
            m_lastListReady = !fileLoader.isAviableNExt() && (fileLoader.isValidFile == 0);

            if (m_lastListReady)
            {
                m_l[(Int32)m_currentList].filling = ListStateFill.free;
                return;
            }

            if (m_currentList == ListNumber.Undefine)
            {
                m_currentList = getNextFreeList();

                if (m_currentList == ListNumber.Undefine)
                {
                    return;
                }
            }


            switch (m_l[(Int32)m_currentList].filling)
            {
            case ListStateFill.free:
                openList();
                break;

            case ListStateFill.prolog:
                fillProlog();
                break;

            case ListStateFill.body:
                bobyStartList();
                break;

            case ListStateFill.epilog:
                fillEpilog();
                break;

            case ListStateFill.ready:
                // m_listQueue.Enqueue(m_currentList);
                m_currentList = ListNumber.Undefine;
                break;

            default:
                break;
            }
        }
Esempio n. 12
0
        public static string getListState(ListNumber list)
        {
            if (list == ListNumber.Undefine)
            {
                return("Undefine list..");
            }
            string res = "";

            res = string.Format("{0, 6} ({5, 6}): {1, -7} size: {2, 6} fin [{3}], layer: {4, -5}",
                                list.ToString(),
                                m_l[(Int32)list].filling.ToString(),
                                m_l[(Int32)list].size.ToString("D6"),
                                m_l[(Int32)list].finishid.toX(),
                                m_l[(Int32)list].layerNumber, m_l[(Int32)list].exListNumber.ToString("D6"));//
            return(res);
        }
Esempio n. 13
0
        public static void Main(string[] args)
        {
            ListNumber n1 = new ListNumber(1);
            ListNumber n10 = new ListNumber(10);
            ListNumber n3 = new ListNumber(3);

            ListNumber n = n10*n1;
            Console.WriteLine(n3*n10);

            int answer = ListNumberCorrect.getAnswer();
            //int answer = DoubleCheat.getAnswer();

            Console.WriteLine("Answer: {0}", answer);

            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);
        }
Esempio n. 14
0
        private void Show()
        {
            ListNumber dl = new ListNumber();
            //int totaleItems = dl.GetPublishListCount("N01", "", "", txtSearch.Text, "", DataLayer.SortMethed.OrderByInitDate, true);
            int totaleItems = dl.GetListCount(tbDateFrom.Text, tbDateTo.Text);   //計算總共有幾筆

            Pagination1.totalitems = totaleItems;
            Pagination1.limit      = PageSize;
            Pagination1.targetpage = "SysNews.aspx";
            //技巧:利用這種方式才可以呼叫usercontrol裡的public method
            UserControl_Pagination uc = Pagination1;

            uc.showPageControls();
            DataTable dt = dl.GetMyDataList("", "", tbDateFrom.Text, tbDateTo.Text, "", PageSize, Request["page"] == null ? 1 : int.Parse(Request["page"]));

            GridView1.DataSource = dt;
            GridView1.DataBind();
        }
Esempio n. 15
0
 public void Init()
 {
     n1 = new ListNumber(1);
     n2 = new ListNumber(2);
     n3 = new ListNumber(3);
     n4 = new ListNumber(4);
     n8 = new ListNumber(8);
     n10 = new ListNumber(10);
     n13 = new ListNumber(13);
     n21 = new ListNumber(21);
     n25a = new ListNumber(25);
     n25b = new ListNumber(25);
     List<int> n25c_list = new List<int>(new int[] {2, 5});
     n25c = new ListNumber(n25c_list);
     n30 = new ListNumber(30);
     n50 = new ListNumber(50);
     n88 = new ListNumber(88);
     n100 = new ListNumber(100);
 }
Esempio n. 16
0
        static PrefetchList()
        {
            m_l = new listState[2]
            {
                new listState(ListNumber.list1),
                new listState(ListNumber.list2)
            };



            m_currentList = ListNumber.Undefine;
            m_logFile     = new StreamWriter("prefetchLog.txt", false);

            //if (AppDomain.CurrentDomain.IsDefaultAppDomain())
            //    AppDomain.CurrentDomain.ProcessExit += terminate;
            //else
            //    AppDomain.CurrentDomain.DomainUnload += terminate;

            m_lastedStyle.lPower    = long.MaxValue;
            m_lastedStyle.lMarkSize = long.MaxValue;
        }
Esempio n. 17
0
        public static void Main(string[] args)
        {
            ListNumber n1 = new ListNumber(1);
            ListNumber n2 = new ListNumber(1);
            int counter = 2;

            while (true)
            {
                ListNumber temp = n2;
                n2 = n2 + n1;
                counter += 1;
                n1 = temp;

                //Console.WriteLine(n2);
                if (n2.Count > 999)
                    break;
            }

            Console.WriteLine(counter);

            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);
        }
Esempio n. 18
0
 /// <summary>
 /// 开具发票,打印
 /// </summary>
 public void Print()
 {
     //没有初始化,不予执行
     if (!IsInit)
     {
         return;
     }
     this.State = State.Start;
     Log.Debug("开始开具发票");
     Log.Debug("InfoClientName(开票名称)-" + InfoClientName + ",InfoClientAddressPhone(开票地址,电话)-"
               + InfoClientAddressPhone + ",InfoTaxRate(税率)-" + InfoTaxRate + ",ListGoodsName(服务名称)-"
               + ListGoodsName + ",ListAmount(金额)-" + ListAmount + ",ListPrice(单价)-" + ListPrice
               + ",ListUnit(单位)-" + ListUnit + ",ListNumber(数量)-" + ListNumber + ",InfoCashier(收款人)-"
               + InfoCashier + ",InfoChecker(复核人)-" + InfoChecker + ",InfoNotes(备注)-" + InfoNotes);
     obj.InvInfoInit();
     //增值税普通发票
     obj.InfoKind = 2;
     //开票名称
     obj.InfoClientName = InfoClientName;
     //售方地址及电话
     obj.InfoSellerAddressPhone = InfoSellerAddressPhone;
     //售方开户行及账号
     obj.InfoSellerBankAccount = InfoSellerBankAccount;
     //开票地址,电话
     obj.InfoClientAddressPhone = InfoClientAddressPhone;
     //税率
     obj.InfoTaxRate = InfoTaxRate;
     char[] c = new char[] { '|' };
     //服务名称
     string[] names = ListGoodsName.Split(c);
     //金额
     //string[] amounts = ListAmount.Split(c);
     string[] prices = ListPrice.Split(c);
     //单位
     string[] units = ListUnit.Split(c);
     //数量
     string[] numbers = ListNumber.Split(c);
     //含税价标志
     string[] pricekind = ListPriceKind.Split(c);
     obj.ClearInvList();
     for (int i = 0; i < names.Length; i++)
     {
         if (names[i].Equals("滞纳金") && double.Parse(prices[i]) <= 0)
         {
             continue;
         }
         //设置开票内容
         obj.InvListInit();
         //服务名称
         obj.ListGoodsName = names[i];
         //double amount = double.Parse(amounts[i]) / (InfoTaxRate *0.01 + 1);
         //obj.ListAmount = Math.Round(amount, 2);
         //obj.ListTaxAmount = amount * InfoTaxRate * 0.01;
         //double price = double.Parse(prices[i]) / (InfoTaxRate * 0.01 + 1);
         obj.ListPrice     = double.Parse(prices[i]);
         obj.ListUnit      = units[i];
         obj.ListNumber    = double.Parse(numbers[i]);
         obj.ListPriceKind = Int32.Parse(pricekind[i]);
         obj.AddInvList();
     }
     //收款人
     obj.InfoCashier = InfoCashier;
     //复核人
     obj.InfoChecker = InfoChecker;
     //开票人
     obj.InfoInvoicer = InfoChecker;
     //备注
     obj.InfoNotes = InfoNotes;
     obj.Invoice();
     if (obj.RetCode != 4011)
     {
         Log.Debug("开具发票失败-" + obj.RetCode + obj.RegMsg);
         MessageBox.Show(obj.RetMsg);
     }
     else
     {
         Log.Debug("开具发票成功-开始打印");
         //打印
         obj.PrintInv();
         State = State.End;
         OnCompleted(null);
     }
 }