Inheritance: MonoBehaviour
    void Awake()
    {
        controller = new RemoteController();

        controller.Controller.ArmDisarm.performed += ctx => controllerValue.arm_disarm = ChangeArmDisarm(true);
        controller.Controller.ArmDisarm.canceled  += ctx => controllerValue.arm_disarm = ChangeArmDisarm(false);

        controller.Controller.FlightMode.performed += ctx => controllerValue.flight_mode = ChangeFlightMode(true);
        controller.Controller.FlightMode.canceled  += ctx => controllerValue.flight_mode = ChangeFlightMode(false);

        controller.Controller.PixyLight.performed += ctx => controllerValue.light = true;
        controller.Controller.PixyLight.canceled  += ctx => controllerValue.light = false;

        controller.Controller.Throttle.performed += ctx => controllerValue.throttle = (int)(ctx.ReadValue <float>() * 500) + 500;
        controller.Controller.Throttle.canceled  += ctx => controllerValue.throttle = 500;

        controller.Controller.Pitch.performed += ctx => controllerValue.pitch = (int)(ctx.ReadValue <float>() * 1000);
        controller.Controller.Pitch.canceled  += ctx => controllerValue.pitch = 0;

        controller.Controller.Roll.performed += ctx => controllerValue.roll = (int)(ctx.ReadValue <float>() * 1000);
        controller.Controller.Roll.canceled  += ctx => controllerValue.roll = 0;

        controller.Controller.Yaw.performed += ctx => controllerValue.yaw = (int)(ctx.ReadValue <float>() * 1000);
        controller.Controller.Yaw.canceled  += ctx => controllerValue.yaw = 0;
    }
示例#2
0
        public RemoteController BuildRemoteController()
        {
            var path = Path.ToFullPath();

            var controller = new RemoteController(path);
            if (BuildFlag.IsNotEmpty())
            {
                controller.UseBuildProfile(BuildFlag);
            }

            if (TimeoutFlag.HasValue)
            {
                controller.Project.StopConditions.TimeoutInSeconds = TimeoutFlag.Value;
            }

            if (TeamCityTracingFlag)
            {
                controller.Project.TracingStyle = "TeamCity";
            }

            controller.Project.MaxRetries = RetriesFlag;
            controller.Project.Profile = ProfileFlag;

            if (ConfigFlag.IsNotEmpty())
            {
                controller.ConfigFile = ConfigFlag;
            }

            return controller;
        }
示例#3
0
        static void Main(string[] args)
        {
            // Control the light
            var remote   = new RemoteController();      // Invoker
            var light    = new Light();                 // Receiver
            var lightOn  = new LightOnCommand(light);   // Command
            var lightOff = new LightOffCommand(light);  // Command

            remote.SetCommand(lightOn);
            remote.ActivateCommand();
            remote.SetCommand(lightOff);
            remote.ActivateCommand();

            // Control the garage door
            var garageDoor = new GarageDoor();                      // Receiver
            var doorUp     = new GarageDoorUpCommand(garageDoor);   // Command
            var doorDown   = new GarageDoorDownCommand(garageDoor); // Command

            // Invoker ---> Command ----> Receiver
            remote.SetCommand(doorUp);
            remote.ActivateCommand();
            remote.SetCommand(doorDown);
            remote.ActivateCommand();

            Console.ReadKey();
        }
示例#4
0
        static void Main(string[] args)
        {
            //Existing stuff in the house
            Light          light          = new Light();
            AirConditioner airConditioner = new AirConditioner();

            // Create the On Commands
            LightOn          turnOnLight = new LightOn(light);
            AirConditionerOn turnOnAC    = new AirConditionerOn(airConditioner);

            // Create the Off Commands
            LightOff          turnOffLight = new LightOff(light);
            AirConditionerOff turnOffAC    = new AirConditionerOff(airConditioner);

            // Program remote controller
            RemoteController remote = new RemoteController();

            remote.InsertNewOnCommand(turnOnLight);
            remote.InsertNewOnCommand(turnOnAC);
            remote.InsertNewOffCommand(turnOffLight);
            remote.InsertNewOffCommand(turnOffAC);

            // Test buttons: Turn On the lights and AC
            remote.PressButtonOn(0);
            remote.PressButtonOn(1);

            // Test buttons: Turn Off the lights and AC
            remote.PressButtonOff(0);
            remote.PressButtonOff(1);


            Console.ReadLine();
        }
示例#5
0
        protected string StartNewMember()
        {
            var newMember = RemoteController.startMember(HzCluster.Id);

            MemberList.TryAdd(newMember.Uuid, newMember);
            return(newMember.Uuid);
        }
示例#6
0
        protected Response DistortRandomPartitionUuid()
        {
            const string script = @"
from com.hazelcast.core import HazelcastInstance
from com.hazelcast.internal.nearcache.impl.invalidation import Invalidator
from com.hazelcast.internal.nearcache.impl.invalidation import MetaDataGenerator
from com.hazelcast.map.impl import MapService
from com.hazelcast.map.impl import MapServiceContext
from com.hazelcast.map.impl.nearcache import MapNearCacheManager
from com.hazelcast.spi.impl import NodeEngineImpl
from com.hazelcast.instance import TestUtil
from com.hazelcast.util import RandomPicker
from com.hazelcast.util import UuidUtil
nodeEngineImpl = TestUtil.getNode(instance_0).nodeEngine
partitionCount = nodeEngineImpl.getPartitionService().getPartitionCount()
partitionId = RandomPicker.getInt(partitionCount)
mapService = nodeEngineImpl.getService(MapService.SERVICE_NAME)
mapServiceContext = mapService.getMapServiceContext()
mapNearCacheManager = mapServiceContext.getMapNearCacheManager()
invalidator = mapNearCacheManager.getInvalidator()
metaDataGenerator = invalidator.getMetaDataGenerator()
metaDataGenerator.setUuid(partitionId, UuidUtil.newUnsecureUUID())
";

            return(RemoteController.executeOnController(HzCluster.Id, script, Lang.PYTHON));
        }
示例#7
0
    public void hitObjects(List <RaycastHit> hitObjects, int damagePerShot)
    {
        var totalDamage = 0;
        var raypos      = new RaycastHit();

        foreach (RaycastHit ray in hitObjects)
        {
            if (ray.transform.tag == "remotePlayer")
            {
                RemoteController remoteController = ray.transform.gameObject.GetComponentInChildren <RemoteController>();

                totalDamage += damagePerShot;

                sceneManager.raycastCall(remoteController, damagePerShot);

                raypos = ray;
            }
        }

        try
        {
            var damageNumberPos = raypos.transform.position;
            damageNumberPos.x = Random.Range(raypos.transform.position.x - damageNumberOffset, raypos.transform.position.x + damageNumberOffset);
            damageNumberPos.y = Random.Range(raypos.transform.position.y, raypos.transform.position.y + damageNumberOffset);
            damageNumberPos.z = Random.Range(raypos.transform.position.z - damageNumberOffset, raypos.transform.position.z + damageNumberOffset);

            var damageNumber = Instantiate(damageNumberPrefab, damageNumberPos, raypos.transform.rotation);
            damageNumber.GetComponentInChildren <Text>().text = "-" + totalDamage.ToString();
        }
        catch
        {
        }
    }
示例#8
0
        public RemoteController BuildRemoteController()
        {
            var path = Path.ToFullPath();

            var controller = new RemoteController(path);

            if (BuildFlag.IsNotEmpty())
            {
                controller.UseBuildProfile(BuildFlag);
            }

            if (TimeoutFlag.HasValue)
            {
                controller.Project.StopConditions.TimeoutInSeconds = TimeoutFlag.Value;
            }

            if (TeamCityTracingFlag)
            {
                controller.Project.TracingStyle = "TeamCity";
            }

            controller.Project.MaxRetries = RetriesFlag;
            controller.Project.Profile    = ProfileFlag;

            if (ConfigFlag.IsNotEmpty())
            {
                controller.ConfigFile = ConfigFlag;
            }

            return(controller);
        }
示例#9
0
 /// <summary>
 ///     Allows the game to perform any initialization it needs to before starting to run.
 ///     This is where it can query for any required services and load any non-graphic
 ///     related content.  Calling base.Initialize will enumerate through any components
 ///     and initialize them as well.
 /// </summary>
 protected override void Initialize()
 {
     // TODO: Add your initialization logic here
     base.Initialize();
     remoteController = new RemoteController();
     remoteController.Initialize();
 }
示例#10
0
 private MusicControllerKitkat(RemoteController remoteController)
 {
     Jukebox.MediaEvent += Jukebox_MediaEvent;
     TransportControls   = remoteController;
     MediaMetadata       = remoteController.EditMetadata();
     ArtificiallyAttachOpenNotification();
 }
示例#11
0
        public void ShowMethod(Type type, MethodInfo methodInfo)
        {
            LoadAssembly(type);

            StringBuilder builder = new StringBuilder();

            builder.Append(type.FullName + "." + methodInfo.Name + "(");

            bool hasParams = false;

            // we also have to add all the parameter info
            foreach (ParameterInfo param in methodInfo.GetParameters())
            {
                builder.Append(param.ParameterType.FullName);
                builder.Append(",");
                hasParams = true;
            }
            if (hasParams)
            {
                builder.Remove(builder.Length - 1, 1);
                builder.Append(")");
            }
            else
            {
                builder.Remove(builder.Length - 1, 1);
            }

            RemoteController.SelectMethodDeclaration("M:" + builder);
        }
        public void Start()
        {
            _controller = _input.BuildRemoteController();
            var context = new StorytellerContext(_controller, _input);

            if (_controller.BinPath.IsEmpty())
            {
                throw new Exception("Could not determine any BinPath for the testing AppDomain. Has the Storyteller specification project been compiled, \nor is Storyteller using the wrong compilation target maybe?\n\ntype 'st.exe ? open' or st.exe ? run' to see the command usages\n\n");
            }

            context.Start();

            var registry = new FubuRegistry();


            registry.AlterSettings<DiagnosticsSettings>(_ => _.TraceLevel = TraceLevel.Verbose);
            registry.Mode = "development";
            registry.HostWith<NOWIN>();
            registry.Services.For<IRemoteController>().Use(_controller);
            registry.Services.For<StorytellerContext>().Use(context);
            
            registry.Services.IncludeRegistry<WebApplicationRegistry>();


            _server = registry.ToRuntime();
        }
示例#13
0
        protected Response DistortRandomPartitionSequence(string mapName)
        {
            const string script = @"
from com.hazelcast.core import HazelcastInstance
from com.hazelcast.internal.nearcache.impl.invalidation import Invalidator
from com.hazelcast.internal.nearcache.impl.invalidation import MetaDataGenerator
from com.hazelcast.map.impl import MapService
from com.hazelcast.map.impl import MapServiceContext
from com.hazelcast.map.impl.nearcache import MapNearCacheManager
from com.hazelcast.spi.impl import NodeEngineImpl
from com.hazelcast.instance import TestUtil
from com.hazelcast.util import RandomPicker
from com.hazelcast.internal.partition import InternalPartitionService
from java.lang import Integer
nodeEngineImpl = TestUtil.getNode(instance_0).nodeEngine
mapService = nodeEngineImpl.getService(MapService.SERVICE_NAME)
mapServiceContext = mapService.getMapServiceContext()
mapNearCacheManager = mapServiceContext.getMapNearCacheManager()
invalidator = mapNearCacheManager.getInvalidator()
metaDataGenerator = invalidator.getMetaDataGenerator()
partitionService = nodeEngineImpl.getPartitionService()
partitionCount = partitionService.getPartitionCount()
metaDataGenerator.setCurrentSequence('{0}', RandomPicker.getInt(partitionCount), RandomPicker.getInt(Integer.MAX_VALUE))
";

            return(RemoteController.executeOnController(HzCluster.Id, string.Format(script, mapName), Lang.PYTHON));
        }
示例#14
0
        /// <returns></returns>
        private RemoteController CreateRemoteController(string strMachineName, int iPortNumber)
        {
            RemoteController remoteController = null;

            try
            {
                string       strRemoteObjUrl = "tcp://" + strMachineName + ":" + iPortNumber.ToString() + "/GalaxyRemoteController";
                UrlAttribute urlAttr         = new UrlAttribute(strRemoteObjUrl);
                object[]     rgAct           = { urlAttr };
                remoteController = Activator.CreateInstance(Type.GetType("Galaxy.Tools.RemoteController, RemoteImpLib"), null, rgAct) as RemoteController;
                remoteController.AddCmdOutputEventSinker(m_cmdOutputEventSinker.OnCmdOutput);
                remoteController.AddCmdFinishEventSinker(m_cmdOutputEventSinker.OnCmdFinish);
                remoteController.IsLive();
            }
            catch (Exception e)
            {
                // The remote server is offline
                remoteController = null;
                Console.WriteLine(e.Message);
            }

            // Register the lease sponsor
            if (remoteController != null)
            {
                remoteController.Port        = iPortNumber;
                remoteController.MachineName = strMachineName;
                ILease lease = RemotingServices.GetLifetimeService(remoteController) as ILease;
                lease.Register(m_sponsor);
            }

            return(remoteController);
        }
示例#15
0
        protected Response RemoveKeyAtServer(string map, string key)
        {
            var script = string.Format(@"map=instance_0.getMap('{0}')
map.remove('{1}')
", map, key);

            return(RemoteController.executeOnController(HzCluster.Id, script, Lang.PYTHON));
        }
示例#16
0
 public static void UserLogedin(string userName)
 {
     if (!Users.Contains(userName))
     {
         Users.Add(userName);
     }
     RemoteController.ReloadUserList();
 }
示例#17
0
文件: Form1.cs 项目: wpmyj/c3
        /// <summary>
        ///
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void button1_Click(object sender, EventArgs e)
        {
            RemoteController c = new RemoteController();
            frmXD100ModbusTemperatureControl f =
                new frmXD100ModbusTemperatureControl("test station name", 2, c);

            f.ShowDialog();
        }
示例#18
0
 public static void UserLogoff(string userName)
 {
     if (Users.Contains(userName))
     {
         Users.Remove(userName);
     }
     RemoteController.ReloadUserList();
 }
        public void GetExportsTest()
        {
            RemoteController remoteController = new RemoteController(new MockRemoteTokenDAL(), new MockRemoteCardUpdateDAL(), null);

            var exports = remoteController.GetPendingCardUpdates(MockRemoteTokenDAL.RemoteTokenValid.ToString(), "UnitTestIP");

            //Assert.Fail();
        }
        protected Guid StartNewMember()
        {
            var newMember = RemoteController.startMember(HzCluster.Id);
            var guid      = Guid.Parse(newMember.Uuid);

            MemberList.TryAdd(guid, newMember);
            return(guid);
        }
示例#21
0
        private string GetClientStatsFromServer()
        {
            const string script   = @"client0=instance_0.getClientService().getConnectedClients().toArray()[0]
result=client0.getClientStatistics()";
            var          response = RemoteController.executeOnController(HzCluster.Id, script, Lang.PYTHON);

            return(response.Success && response.Result != null?System.Text.Encoding.UTF8.GetString(response.Result) : null);
        }
示例#22
0
        protected Response PutOnMember(int key, int value, string map)
        {
            var script = string.Format(@"map=instance_0.getMap('{0}')
map.put({1}, {2})
", map, key, value);

            return(RemoteController.executeOnController(HzCluster.Id, script, Lang.PYTHON));
        }
 public virtual void SetupCluster()
 {
     RemoteController = CreateRemoteController();
     HzCluster        = CreateCluster(RemoteController, GetServerConfig());
     RemoteController.startMember(HzCluster.Id);
     Client         = CreateClient();
     ClientInternal = ((HazelcastClientProxy)Client).GetClient();
 }
示例#24
0
        public void ShowEvent(Type type, EventInfo eventInfo)
        {
            LoadAssembly(type);

            string name = type.FullName + "." + eventInfo.Name;

            RemoteController.SelectEventDeclaration("E:" + name);
        }
示例#25
0
        public void ShowField(Type type, FieldInfo fieldInfo)
        {
            LoadAssembly(type);

            string name = type.FullName + "." + fieldInfo.Name;

            RemoteController.SelectFieldDeclaration("F:" + name);
        }
示例#26
0
        public void ShowProperty(Type type, string propertyName)
        {
            LoadAssembly(type);

            string name = type.FullName + "." + propertyName;

            RemoteController.SelectPropertyDeclaration("P:" + name);
        }
示例#27
0
 internal static MusicControllerKitkat GetInstance(RemoteController remoteController)
 {
     if (instance == null)
     {
         instance = new MusicControllerKitkat(remoteController);
     }
     return(instance);
 }
示例#28
0
        public override PluginReturns Run(PluginArgument arg)
        {
            if (arg.Rows == null || arg.Rows.Length < 1)
            {
                SimpleMessage.ShowInfo("Please select file to open with Reflector.");
                return(PluginReturns.None);
            }

            try
            {
                if (!this.SelectReflector(arg.Host, false))
                {
                    if (SimpleMessage.Confirm("Failed to locate .Net Reflector! Do you want to download now?") == System.Windows.Forms.DialogResult.Yes)
                    {
                        SimpleProcess.Start("http://www.reflector.net/");
                    }
                    return(PluginReturns.None);
                }

                string path = GetReflector(arg.Host);

                try
                {
                    if (!RemoteController.Available)
                    {
                        Process p = new Process();
                        p.StartInfo.FileName         = path;
                        p.StartInfo.WorkingDirectory = Path.GetDirectoryName(path);
                        p.Start();
                    }

                    int count = 0;
                    while (!RemoteController.Available && count < 60)
                    {
                        Thread.Sleep(500);
                        count++;
                    }

                    if (RemoteController.Available)
                    {
                        for (int i = 0; i < arg.Rows.Length; i++)
                        {
                            RemoteController.LoadAssembly(Path.Combine(arg.SourceDir, arg.Rows[i]));
                        }
                    }
                }
                catch (Exception ex)
                {
                    SimpleMessage.ShowException(ex);
                }
            }
            catch
            {
                throw;
            }

            return(PluginReturns.None);
        }
        public void when_there_is_only_one_type()
        {
            // GrammarSystem is the only type in the Samples project

            var path = ".".ToFullPath().ParentDirectory().ParentDirectory().ParentDirectory()
                .AppendPath("Storyteller.Samples");

            var controller = new RemoteController(path);
        }
示例#30
0
        private void TerminateTargetReplicaMember()
        {
            // Shutdown "primary" member
            var allMembers    = Client.GetCluster().GetMembers();
            var currentTarget = _pnCounter._currentTargetReplicaAddress;
            var primaryMember = allMembers.First(x => x.GetAddress().Equals(currentTarget));

            RemoteController.terminateMember(HzCluster.Id, primaryMember.GetUuid());
        }
示例#31
0
 void Start()
 {
     head                 = transform.Find("CraneHead").gameObject;
     activated            = false;
     currentInstructionId = -1;
     grabPosition         = new Vector3(0f, -0.75f, 0f);
     isRewinded           = false;
     remote               = GameObject.Find("Player").GetComponent <RemoteController>();
 }
示例#32
0
        // Client
        public static void Start()
        {
            var remoteController = new RemoteController();
            var tv = new Tv();

            remoteController.SetCommand(new TvOnCommand(tv));
            remoteController.PressButton();
            remoteController.PressUndo();
        }
示例#33
0
        protected Response PopulateMapFromServer(string mapName, int mapSize)
        {
            var script = string.Format(@"map=instance_0.getMap('{0}')
for i in xrange(0, {1}):
    map.put(i, i)
", mapName, mapSize);

            return(RemoteController.executeOnController(HzCluster.Id, script, Lang.PYTHON));
        }
        public void SetUp()
        {
            var directory = ".".ToFullPath().ParentDirectory().ParentDirectory().ParentDirectory()
                .AppendPath("Storyteller.Samples");

            theController = new RemoteController(directory);

            theInput = new RunInput {Path = directory,RetriesFlag = 1};
            theController = theInput.BuildRemoteController();
            var task = theController.Start(EngineMode.Batch);
            task.Wait(3.Seconds());

            theFixtures = task.Result.fixtures;
        }
        public void Start()
        {
            _controller = _input.BuildRemoteController();
            var context = new StorytellerContext(_controller, _input);

            var container = new Container(new WebApplicationRegistry(_controller, context));

            context.Start();

            var registry = new FubuRegistry();
            registry.AlterSettings<DiagnosticsSettings>(_ => _.TraceLevel = TraceLevel.Verbose);

            _server = FubuApplication.For(registry).StructureMap(container).RunEmbeddedWithAutoPort();
        }
 protected virtual Cluster CreateCluster(RemoteController.Client remoteController)
 {
     _logger.Info("Creating cluster");
     var cluster = remoteController.createCluster(null, Resources.hazelcast);
     _logger.Info("Created cluster");
     return cluster;
 }
示例#37
0
 public StorytellerContext(RemoteController controller, OpenInput input)
 {
     _controller = controller;
     _input = input;
 }
 protected virtual void ResumeMember(RemoteController.Client remoteController, Cluster cluster, Member member)
 {
     remoteController.resumeMember(cluster.Id, member.Uuid);
 }
 protected virtual Cluster CreateCluster(RemoteController.Client remoteController, string xmlconfig)
 {
     _logger.Info("Creating cluster using custom config...");
     var cluster = remoteController.createCluster(null, xmlconfig);
     _logger.Info("Created cluster");
     return cluster;
 }
        protected Member StartMemberAndWait(IHazelcastInstance client, RemoteController.Client remoteController,
            Cluster cluster, int expectedSize)
        {
            var resetEvent = new ManualResetEventSlim();
            var regId = client.GetCluster().AddMembershipListener(new MembershipListener
            {
                OnMemberAdded = @event => resetEvent.Set()
            });
            var member = StartMember(remoteController, cluster);
            Assert.IsTrue(resetEvent.Wait(120*1000), "The member did not get added in 120 seconds");
            Assert.IsTrue(client.GetCluster().RemoveMembershipListener(regId));

            // make sure partitions are updated
            TestSupport.AssertTrueEventually(
                () => { Assert.AreEqual(expectedSize, GetUniquePartitionOwnerCount(client)); },
                60, "The partition list did not contain " + expectedSize + " partitions.");

            return member;
        }
 protected virtual Member StartMember(RemoteController.Client remoteController, Cluster cluster)
 {
     _logger.Info("Starting new member");
     return remoteController.startMember(cluster.Id);
 }
 protected virtual void StopCluster(RemoteController.Client remoteController, Cluster cluster)
 {
     remoteController.shutdownCluster(cluster.Id);
 }
 protected virtual void StopMember(RemoteController.Client remoteController, Cluster cluster, Member member)
 {
     _logger.Info("Shutting down  member " + member.Uuid);
     remoteController.shutdownMember(cluster.Id, member.Uuid);
 }
 protected void StopMemberAndWait(IHazelcastInstance client, RemoteController.Client remoteController,
     Cluster cluster, Member member)
 {
     var resetEvent = new ManualResetEventSlim();
     var regId = client.GetCluster().AddMembershipListener(new MembershipListener
     {
         OnMemberRemoved = @event => resetEvent.Set()
     });
     StopMember(remoteController, cluster, member);
     Assert.IsTrue(resetEvent.Wait(120*1000), "The member did not get removed in 120 seconds");
     Assert.IsTrue(client.GetCluster().RemoveMembershipListener(regId));
 }
 protected void StopRemoteController(RemoteController.Client client)
 {
     client.exit();
     client.InputProtocol.Transport.Close();
 }
 protected virtual void SuspendMember(RemoteController.Client remoteController,  Cluster cluster, Member member)
 {
     remoteController.suspendMember(cluster.Id, member.Uuid);
 }