Esempio n. 1
0
        //Handler初始化函数
        private void initHandler()
        {
            LoginHandler loginHandler = new LoginHandler();

            handlerDict.Add(loginHandler.opCode, loginHandler);
            RegisterHandler registerHandler = new RegisterHandler();

            handlerDict.Add(registerHandler.opCode, registerHandler);
            PurchaseCardPackageHandler purchaseCardPackageHandler = new PurchaseCardPackageHandler();

            handlerDict.Add(purchaseCardPackageHandler.opCode, purchaseCardPackageHandler);
            UseCardPackageHandler useCardPackageHandler = new UseCardPackageHandler();

            handlerDict.Add(useCardPackageHandler.opCode, useCardPackageHandler);
            ManufactureCardHandler manufactureCardHandler = new ManufactureCardHandler();

            handlerDict.Add(manufactureCardHandler.opCode, manufactureCardHandler);
            DecomposeCardHandler decomposeCardHandler = new DecomposeCardHandler();

            handlerDict.Add(decomposeCardHandler.opCode, decomposeCardHandler);
            NewCardsSetHandler newCardsSetHandler = new NewCardsSetHandler();

            handlerDict.Add(newCardsSetHandler.opCode, newCardsSetHandler);
            ChangeCardsSetHandler changeCardsSetHandler = new ChangeCardsSetHandler();

            handlerDict.Add(changeCardsSetHandler.opCode, changeCardsSetHandler);
            DeleteCardsSetHandler deleteCardsSetHandler = new DeleteCardsSetHandler();

            handlerDict.Add(deleteCardsSetHandler.opCode, deleteCardsSetHandler);
            ReadyHandler readyHandler = new ReadyHandler();

            handlerDict.Add(readyHandler.opCode, readyHandler);
            LeftHandler leftHandler = new LeftHandler();

            handlerDict.Add(leftHandler.opCode, leftHandler);
            FightInvitHandler fightInvitHandler = new FightInvitHandler();

            handlerDict.Add(fightInvitHandler.opCode, fightInvitHandler);
            FightInvitResponseHandler fightInvitResponseHandler = new FightInvitResponseHandler();

            handlerDict.Add(fightInvitResponseHandler.opCode, fightInvitResponseHandler);
        }
Esempio n. 2
0
        public void Reset()
        {
            CPU.Halt();

            Cls();
            gpu.Refresh();

            // Load the ROM data from disk. On the real system, the ROMs are not accessible by the CPU
            // and will be copied to RAM by VICKY
            MemoryRAM flashROM = new MemoryRAM(0, 16 * 65536);

            this.ReadyHandler = Monitor;
            HexFile.Load(flashROM, @"ROMs\kernel.hex");
            flashROM.Copy(0, Memory.SRAM, 0, 2 * 65536);
            CPU.Reset();

            //CPUTest test= new CPUTest(this);
            //test.BeginTest(0xf81000);

            this.TickTimer.Interval = 1000 / 60;
            this.TickTimer.Elapsed += TickTimer_Elapsed;
            this.TickTimer.Enabled  = true;
        }
        public AVPlayList(AVRenderer AVR, IMediaResource[] r, ReadyHandler rh, FailedHandler fh, object Tag)
        {
            OpenSource.Utilities.InstanceTracker.Add(this);
            _AVR = AVR;
            string UseThisProtocolInfo = "";

            _Tag = Tag;

            /*
             * ArrayList branches = new ArrayList();
             * ToXmlData_Custom txdc = new ToXmlData_Custom();
             * foreach(IMediaResource R in r)
             * {
             *  if(branches.Contains(R.Owner)==false)
             *  {
             *      branches.Add(R.Owner);
             *  }
             *  txdc.Mappings[R] = false;
             * }
             *
             * MediaBuilder.container container = new MediaBuilder.container("Autogenerated Playlist");
             * container.ID = Guid.NewGuid().ToString();
             * container.IdIsValid = true;
             * ToXmlFormatter txf = new ToXmlFormatter();
             * txf.WriteResource = new ToXmlFormatter.ToXml_FormatResource(WriteResource);
             * txdc.DesiredProperties = new ArrayList();
             * txdc.IsRecursive = true;
             * txdc.VirtualOwner =  MediaBuilder.CreateContainer(container);
             *
             * // Obtain the DIDL-Lite MetaData
             * this.PlayListMetaData = MediaBuilder.BuildDidl(txf, txdc, branches);
             * if(PlayListMetaData.Length>32768) PlayListMetaData = "";
             */

            int  TempHandle = this.GetHashCode();
            bool Done       = false;

            OnReady  += rh;
            OnFailed += fh;

            //Subscribe to the internal events on the Renderer to initiate a connection
            AVR.OnCreateConnection2       += new AVRenderer.ConnectionHandler(ConnectionSink);
            AVR.OnRecycledConnection2     += new AVRenderer.ConnectionHandler(RecycledSink);
            AVR.OnCreateConnectionFailed2 += new AVRenderer.FailedConnectionHandler(FailedSink);

            if (r.Length == 1)
            {
                // There is only one resource, so no need to build a playlist
                Done = true;
                _CurrentPlayListMode = PlayListMode.NOT_A_PLAYLIST;
                PlayListUri          = ConvertLocalFileToHTTPResource(r[0]);
                lock (ConnectionLock)
                {
                    TableOfHandles[TempHandle] = TempHandle;
                    AVR.CreateConnection(r[0].ProtocolInfo.ToString(), "", -1, TempHandle);
                }
            }

            if ((Done == false && AVR.SupportsProtocolInfo(new ProtocolInfoString("http-get:*:audio/mpegurl:*")))
                ||
                (Done == false && AVR.SupportsProtocolInfo(new ProtocolInfoString("http-get:*:audio/x-mpegurl:*"))))
            {
                // Build M3U
                Done = true;
                _CurrentPlayListMode = PlayListMode.M3U;

                CheckMiniWebServer();

                //OpenSource.Utilities.InstanceTracker.StartTimer();

                StringBuilder M3U = new StringBuilder();
                if (AVPlayList.EnableExtendedM3U)
                {
                    M3U.Append("#EXTM3U\r\n");
                }
                foreach (IMediaResource R in r)
                {
                    if (AVPlayList.EnableExtendedM3U)
                    {
                        PrintExtInfLine(M3U, R);
                    }
                    M3U.Append(ConvertLocalFileToHTTPResource(R) + "\r\n");
                }

                M3UString = M3U.ToString();

                //OpenSource.Utilities.InstanceTracker.StopTimer("Build M3U");

                PlayListUri = "http://" + AVR.Interface.ToString() + ":" + MWS.LocalIPEndPoint.Port.ToString() + "/item.m3u";

                if (AVR.SupportsProtocolInfo(new ProtocolInfoString("http-get:*:audio/x-mpegurl:*")))
                {
                    UseThisProtocolInfo = "http-get:*:audio/x-mpegurl:*";
                }
                if (AVR.SupportsProtocolInfo(new ProtocolInfoString("http-get:*:audio/mpegurl:*")))
                {
                    UseThisProtocolInfo = "http-get:*:audio/mpegurl:*";
                }

                //OpenSource.Utilities.InstanceTracker.StartTimer();

                lock (ConnectionLock)
                {
                    TableOfHandles[TempHandle] = TempHandle;
                    AVR.CreateConnection(UseThisProtocolInfo, "/", -1, TempHandle);
                }
            }

            if (Done == false)
            {
                // Fake a play list by switching Uri's on the fly

                _CurrentPlayListMode = PlayListMode.SINGLE_URI;
                foreach (IMediaResource rsc in r)
                {
                    FakePlayQueue.Enqueue(rsc);
                }
                PlayListUri = r[0].ContentUri;
                FakePlayQueue.Dequeue();
                lock (ConnectionLock)
                {
                    TableOfHandles[TempHandle] = TempHandle;
                    AVR.CreateConnection(r[0].ProtocolInfo.ToString(), "/", -1, TempHandle);
                }
            }
        }
Esempio n. 4
0
 public UdpDiscoveryClient(ReadyHandler readyHandler, FoundHandler foundHandler)
 {
     _readyHandler = readyHandler;
     _foundHandler = foundHandler;
 }
Esempio n. 5
0
 public UdpDiscoveryClient(ReadyHandler readyHandler, FoundHandler foundHandler)
 {
     _readyHandler = readyHandler;
     _foundHandler = foundHandler;
 }
Esempio n. 6
0
        public override void Bind(DefaultGatewayDispatcher value)
        {
            _readyHandler = value["READY"] as ReadyHandler;

            base.Bind(value);
        }
 public void LoginToFacebook(bool upload)
 {
     if(Reachability.RemoteHostStatus() == NetworkStatus.NotReachable)
     {
         using(var alert = new UIAlertView("No connection", "You need an Internet connection to upload your Big Profile", null, "OK", null))
         {
             alert.Show();
         }
     }
     else
     {
         facebookLoginController.UserIsLoggedIn -= SplitImage;
         facebookLoginController.UserIsLoggedIn -= ShowFacebookPhotoAlbums;
         if(upload)
         {
             if(_readyHandler == null) _readyHandler = new ReadyHandler(this);
             using(UIAlertView alert = new UIAlertView("Ready to upload?", "This will set the current picture as your Big Profile", _readyHandler, "No", "Yes"))
             {
                 alert.Show();
             }
         }
         else
         {
             facebookLoginController.UserIsLoggedIn += ShowFacebookPhotoAlbums;
             facebookLoginController.Login();
         }
     }
 }
Esempio n. 8
0
        public AVPlayList(AVRenderer AVR, IMediaResource[] r, ReadyHandler rh, FailedHandler fh, object Tag)
        {
            OpenSource.Utilities.InstanceTracker.Add(this);
            _AVR = AVR;
            string UseThisProtocolInfo = "";
            _Tag = Tag;

            /*
            ArrayList branches = new ArrayList();
            ToXmlData_Custom txdc = new ToXmlData_Custom();
            foreach(IMediaResource R in r)
            {
                if(branches.Contains(R.Owner)==false)
                {
                    branches.Add(R.Owner);
                }
                txdc.Mappings[R] = false;
            }

            MediaBuilder.container container = new MediaBuilder.container("Autogenerated Playlist");
            container.ID = Guid.NewGuid().ToString();
            container.IdIsValid = true;
            ToXmlFormatter txf = new ToXmlFormatter();
            txf.WriteResource = new ToXmlFormatter.ToXml_FormatResource(WriteResource);
            txdc.DesiredProperties = new ArrayList();
            txdc.IsRecursive = true;
            txdc.VirtualOwner =  MediaBuilder.CreateContainer(container);
			
            // Obtain the DIDL-Lite MetaData
            this.PlayListMetaData = MediaBuilder.BuildDidl(txf, txdc, branches);
            if(PlayListMetaData.Length>32768) PlayListMetaData = "";
            */

            int TempHandle = this.GetHashCode();
            bool Done = false;
            OnReady += rh;
            OnFailed += fh;

            //Subscribe to the internal events on the Renderer to initiate a connection
            AVR.OnCreateConnection2 += new AVRenderer.ConnectionHandler(ConnectionSink);
            AVR.OnRecycledConnection2 += new AVRenderer.ConnectionHandler(RecycledSink);
            AVR.OnCreateConnectionFailed2 += new AVRenderer.FailedConnectionHandler(FailedSink);

            if (r.Length == 1)
            {
                // There is only one resource, so no need to build a playlist
                Done = true;
                _CurrentPlayListMode = PlayListMode.NOT_A_PLAYLIST;
                PlayListUri = ConvertLocalFileToHTTPResource(r[0]);
                lock (ConnectionLock)
                {
                    TableOfHandles[TempHandle] = TempHandle;
                    AVR.CreateConnection(r[0].ProtocolInfo.ToString(), "", -1, TempHandle);
                }
            }

            if ((Done == false && AVR.SupportsProtocolInfo(new ProtocolInfoString("http-get:*:audio/mpegurl:*")))
                ||
                (Done == false && AVR.SupportsProtocolInfo(new ProtocolInfoString("http-get:*:audio/x-mpegurl:*"))))
            {
                // Build M3U
                Done = true;
                _CurrentPlayListMode = PlayListMode.M3U;

                CheckMiniWebServer();

                //OpenSource.Utilities.InstanceTracker.StartTimer();

                StringBuilder M3U = new StringBuilder();
                if (AVPlayList.EnableExtendedM3U)
                {
                    M3U.Append("#EXTM3U\r\n");
                }
                foreach (IMediaResource R in r)
                {
                    if (AVPlayList.EnableExtendedM3U)
                    {
                        PrintExtInfLine(M3U, R);
                    }
                    M3U.Append(ConvertLocalFileToHTTPResource(R) + "\r\n");
                }

                M3UString = M3U.ToString();

                //OpenSource.Utilities.InstanceTracker.StopTimer("Build M3U");

                PlayListUri = "http://" + AVR.Interface.ToString() + ":" + MWS.LocalIPEndPoint.Port.ToString() + "/item.m3u";

                if (AVR.SupportsProtocolInfo(new ProtocolInfoString("http-get:*:audio/x-mpegurl:*")))
                    UseThisProtocolInfo = "http-get:*:audio/x-mpegurl:*";
                if (AVR.SupportsProtocolInfo(new ProtocolInfoString("http-get:*:audio/mpegurl:*")))
                    UseThisProtocolInfo = "http-get:*:audio/mpegurl:*";

                //OpenSource.Utilities.InstanceTracker.StartTimer();

                lock (ConnectionLock)
                {
                    TableOfHandles[TempHandle] = TempHandle;
                    AVR.CreateConnection(UseThisProtocolInfo, "/", -1, TempHandle);
                }
            }

            if (Done == false)
            {
                // Fake a play list by switching Uri's on the fly

                _CurrentPlayListMode = PlayListMode.SINGLE_URI;
                foreach (IMediaResource rsc in r)
                {
                    FakePlayQueue.Enqueue(rsc);
                }
                PlayListUri = r[0].ContentUri;
                FakePlayQueue.Dequeue();
                lock (ConnectionLock)
                {
                    TableOfHandles[TempHandle] = TempHandle;
                    AVR.CreateConnection(r[0].ProtocolInfo.ToString(), "/", -1, TempHandle);
                }
            }
        }