//public override bool OnEffect(string effectType, object t, object p, float duration, UUID id) //{ // bool noteable = LogEvent(new SimObjectEvent(effectType, SimEventType.EFFECT, SimEventStatus.Once, this, t, p, duration, id)); // //todo // if (noteable) WorldSystem.SendNewEvent("on-effect", effectType, this, t, p, duration, id); // return noteable; // //throw new NotImplementedException(); //} public override bool LogEvent(CogbotEvent SE) { string typeUse = SE.Verb; object[] args1_N = SE.GetArgs(); // does this backwards to the first argument is the most reliavant object for (int i = args1_N.Length - 1; i >= 0; i--) { object o = args1_N[i]; if (o == this) { continue; //skip self } if (o is SimObject) { KnownSimObjects.Add((SimObject)o); } } _knownTypeUsages.AddTo(SimTypeSystem.CreateTypeUsage(typeUse)); bool noteable = base.LogEvent(SE); if (noteable) //if (theAvatar.Name.Contains("rael")) { //DLRConsole.DebugWriteLine(SE); } return(noteable); }
// this pipelike will fire OnEvent to the subscriber list public void SendEvent(CogbotEvent simObjectEvent) { if (!EventsEnabled) { return; } if (LastEvent != null && simObjectEvent.SameAs(LastEvent)) { return; } if (LastEventAW != null && simObjectEvent.SameAs(LastEventAW)) { return; } LastEvent = simObjectEvent; LastEventAW = simObjectEvent; ThreadStart start = () => SendNow(simObjectEvent); if (ExecSynchronous) { start(); return; } if (!UseQueue) { new Thread(start).Start(); } else { taskQueue.Enqueue(start); } }
void SimEventSubscriber.OnEvent(CogbotEvent evt) { if (evt.Verb == "On-Execute-Command") { ExecuteCommand(evt.GetArgs()[0].ToString(), null, WriteLine, CMDFLAGS.NoResult); } }
void SimEventSubscriber.OnEvent(CogbotEvent evt) { if (!EventsEnabled) return; const SimEventType du = SimEventType.DATA_UPDATE; if (evt.IsEventType(du)) return; if (evt.IsEventType(SimEventType.EFFECT)) { if (evt.Verb == "LookAtType-Idle") return; if (evt.Verb == "LookAtType-FreeLook") return; } String eventName = evt.Verb; object[] args = evt.GetArgs(); String msg = "["+ From.GetName() + ": " + eventName.ToLower()+"]"; int start = 0; if (args.Length > 1) { if (args[0] is Simulator) { // start = 1; } } for (int i = start; i < args.Length; i++) { msg += " "; msg += From.argString(args[i]); } if (msg.Contains("Transfer failed with status code")) return; msg += ""; textForm(msg); }
private void SetPosture(CogbotEvent evt) { lock (postureLock) { if (PostureType != null) { // was the same if (PostureType == evt.Verb) { return; } CogbotEvent ending = new ACogbotEvent(evt.Sender, SimEventType.Stop | SimEventType.ANIM | SimEventType.REGIONAL, PostureType + (IsFlying ? "-Flying" : ""), evt.Parameters) { Serial = LastPostureEvent.Serial }; LogEvent(ending); PostureType = evt.Verb; CogbotEvent starting = new ACogbotEvent(evt.Sender, SimEventType.Start | SimEventType.ANIM | SimEventType.REGIONAL, PostureType + (IsFlying ? "-Flying" : ""), evt.Parameters) { Serial = evt.Serial }; LogEvent(starting); } PostureType = evt.Verb; LastPostureEvent = evt; } }
public override void Self_OnMeanCollision(object sender, MeanCollisionEventArgs e) { if (!MaintainEffects) { return; } EventQueue.Enqueue(() => { SimObject perpAv, victimAv; if (TryGetSimObject(e.Aggressor, out perpAv) && TryGetSimObject(e.Victim, out victimAv)) { // if (victimAv.Name == client.Self.Name) // WriteLine(perpAv.Name + " bumped into $bot like " + type); // else if (perpAv.Name == client.Self.Name) // WriteLine("$bot bumped into " + victimAv.Name + " like " + type); CogbotEvent newSimObjectEvent = ACogbotEvent.CreateEvent(sender, "MeanCollisionType-" + e.Type, SimEventType.Once | SimEventType.SOCIAL | SimEventType.REGIONAL, ToParameter("primaryObjectMoving", perpAv), ToParameter("objectActedOn", victimAv), ToParameter("initialSpeedOfPrimaryObjectMoving", "MetersPerSecond", e.Magnitude)); perpAv.LogEvent(newSimObjectEvent); } }); }
void SimEventSubscriber.OnEvent(CogbotEvent evt) { if (taskInterperter != null && taskInterperter.IsSubscriberOf(evt.Verb)) { object lispCode = lispCodeFromEvent(evt); taskQueue.Enqueue(new KeyValuePair <object, CogbotEvent>(lispCode, evt)); } }
public void OnEvent(CogbotEvent simObjectEvent) { if (!EventsEnabled) { return; } SendNow(simObjectEvent); }
public void OnEvent(CogbotEvent evt) { if (!EventsEnabled || Skipped(evt)) { return; } Next.OnEvent(evt); }
/// <summary>Raises the EachSimEvent event</summary> /// <param name="e">An EachSimEventEventArgs object containing the /// data returned from the data server</param> protected virtual void OnEachSimEvent(CogbotEvent e) { if (e.Verb == "On-Log-Message") { return; } if (ExpectConnected == false) { return; } EventHandler <EventArgs> handler = m_EachSimEvent; if (handler == null) { return; } List <Delegate> todo = new List <Delegate>(); lock (m_EachSimEventLock) { handler = m_EachSimEvent; if (handler == null) { return; } AddTodo(handler.GetInvocationList(), todo); } object sender = e.Sender ?? this; bool async = todo.Count > 3; foreach (var d in todo) { var del = (EventHandler <EventArgs>)d; ThreadStart task = () => { try { del(sender, (EventArgs)e); } catch (Exception ex) { LogException("OnEachSimEvent Worker", ex); } }; if (async) { ThreadPool.QueueUserWorkItem(sync => task()); } else { task(); } } }
public void OnEvent(CogbotEvent evt) { String s = evt.Verb.ToLower(); if (s.StartsWith("on-chat")) { return; } string aimlCall = string.Format("SimEvent {0} {1}", evt.Verb, argsListString(evt.GetArgs())); //DLRConsole.DebugWriteLine(aimlCall); //Result r = AimlBot.Chat(aimlCall,"EventSystem"); }
void SimEventSubscriber.OnEvent(CogbotEvent evt) { if (!EventsEnabled) { return; } if (DisableEventStore) { return; } whileClientIsAway.Enqueue(EventToString(evt, parent)); }
private void SendEachSimEvent(object sender, EventArgs e) { if (!IsQPIDRunning || !EventsEnabled) { return; } if (e is CogbotEvent) { CogbotEvent cbe = (CogbotEvent)e; OnEvent(cbe); return; } }
public void OnEvent(CogbotEvent evt) { if (DISABLE_AVRO) { return; } EnsureStarted(); if (evt.IsEventType(SimEventType.DATA_UPDATE)) { return; } LogEventFromCogbot(evt.Sender, evt); }
void SimEventSubscriber.OnEvent(CogbotEvent evt) { if (!EventsEnabled) { return; } const SimEventType du = SimEventType.DATA_UPDATE; if (evt.IsEventType(du)) { return; } if (evt.IsEventType(SimEventType.EFFECT)) { if (evt.Verb == "LookAtType-Idle") { return; } if (evt.Verb == "LookAtType-FreeLook") { return; } } String eventName = evt.Verb; object[] args = evt.GetArgs(); String msg = "[" + From.GetName() + ": " + eventName.ToLower() + "]"; int start = 0; if (args.Length > 1) { if (args[0] is Simulator) { // start = 1; } } for (int i = start; i < args.Length; i++) { msg += " "; msg += From.argString(args[i]); } if (msg.Contains("Transfer failed with status code")) { return; } msg += ""; textForm(msg); }
public bool LogEventFromCogbot(object sender, CogbotEvent evt) { if (DISABLE_AVRO) { return(true); } EnsureStarted(); if (evt.Sender == this) { return(false); } if (!IsQPIDRunning) { return(false); } if (!cogbotSendersToNotSendToCogbot.Contains(sender)) { cogbotSendersToNotSendToCogbot.Add(sender); } string ss = evt.ToEventString(); var im = RK_publisher.CreateTextMessage(ss); int num = 0; foreach (var s in evt.Parameters) { string sKey = s.Key; if (!im.Headers.Contains(sKey)) { num = 0; } else { num++; sKey = sKey + "_" + num; while (im.Headers.Contains(sKey)) { num++; sKey = s.Key + "_" + num; } } im.Headers.SetString(sKey, "" + s.Value); } im.Headers.SetString("verb", "" + evt.Verb); im.Headers.SetBoolean("personal", evt.IsPersonal != null); im.Headers.SetString("evstatus", "" + evt.EventStatus); im.Timestamp = evt.Time.ToFileTime(); im.Type = "" + evt.EventType1; RK_publisher.SendMessage(RoboKindEventModule.COGBOT_EVENT_ROUTING_KEY, im); return(false); }
public void SendPersonalEvent(SimEventType type, string eventName, params object[] args) { if (args.Length > 0) { if (args[0] is BotClient) { args[0] = ((BotClient)args[0]).GetAvatar(); } } CogbotEvent evt = botPipeline.CreateEvent(type | SimEventType.PERSONAL, eventName, args); evt.AddParam("recipientOfInfo", GetAvatar()); SendPipelineEvent(evt); }
private void SendNow(CogbotEvent simObjectEvent) { foreach (SimEventSubscriber subscriber in GetSubscribers()) { SimEventSubscriber sub = subscriber; try { simObjectEvent.SendTo(sub); } catch (Exception e) { DLRConsole.DebugWriteLine(e); } } }
public bool LogEventFromRoboKind(object sender, CogbotEvent evt) { if (DISABLE_AVRO) { return(false); } EnsureStarted(); if (cogbotSendersToNotSendToCogbot.Contains(sender)) { return(false); } evt.Sender = sender ?? evt.Sender; //@todo client.SendPipelineEvent(evt); return(true); }
//internal SimObjectEvent CombinesWith(SimObjectEvent SE) //{ // if (this.Verb == SE.Verb) // { // if (this.EventStatus == SE.EventStatus) // { // return new SimObjectEvent(Verb, this.EventType, this.EventStatus, this.Parameters, SE.Parameters); // } // if (this.EventStatus == SimEventStatus.Start && SE.EventStatus == SimEventStatus.Stop) // { // return new SimObjectEvent(Verb, this.EventType, SimEventStatus.Once, this.Parameters, SE.Parameters); // } // if (this.EventStatus == SimEventStatus.Once && SE.EventStatus == SimEventStatus.Stop) // { // return new SimObjectEvent(Verb, this.EventType, SimEventStatus.Once, this.Parameters, SE.Parameters); // } // if (this.EventStatus == SimEventStatus.Start && SE.EventStatus == SimEventStatus.Once) // { // return new SimObjectEvent(Verb, this.EventType, SimEventStatus.Once, this.Parameters, SE.Parameters); // } // } // return null; //} public bool SameAs(CogbotEvent SE) { if (Verb != SE.Verb) { return(false); } if (EventType1 != SE.EventType1) { return(false); } if (Parameters == null) { return(SE.Parameters == null); } if (SE.Parameters == null) { return(Parameters == null); } if (Parameters.Length != SE.Parameters.Length) { return(false); } NamedParam[] other = SE.Parameters; for (int i = 0; i < other.Length; i++) { NamedParam otheri = other[i]; if (otheri.Value == null) { if (Parameters[i].Value != null) { return(false); } continue; } if (NonComparable(otheri.GetType())) { continue; } if (!Equals(Parameters[i], otheri)) { return(false); } } return(true); }
//private delegate bool AnimationTest(ICollection<UUID> thisEvent); private void StartOrStopAnimEvent(IDictionary <UUID, int> RemovedThisEvent, IDictionary <UUID, int> AddedThisEvent, string name, IList <CogbotEvent> startStops) { int wasStarted = 0; int wasStopped = 0; List <UUID> e = SimAssetStore.MeaningUUIDs(name); // if (e.Count==0) throw new NoSuchElementException(name); foreach (UUID list in e) { if (AddedThisEvent.ContainsKey(list)) { wasStarted = AddedThisEvent[list]; AddedThisEvent.Remove(list); } } foreach (UUID list in e) { if (RemovedThisEvent.ContainsKey(list)) { wasStopped = RemovedThisEvent[list]; RemovedThisEvent.Remove(list); } } if (wasStarted != 0 && wasStopped != 0) { return; } if (wasStarted != 0) { CogbotEvent simEvent = CreateAEvent(SimEventType.Start, name, SimEventType.ANIM | SimEventType.REGIONAL, WorldObjects.ToParameter("doneBy", this), WorldObjects.ToParameter("eventOccursAt", GetHeading())); simEvent.Serial = wasStarted; startStops.Add(simEvent); } if (wasStopped != 0) { CogbotEvent simEvent = CreateAEvent(SimEventType.Stop, name, SimEventType.ANIM | SimEventType.REGIONAL, WorldObjects.ToParameter("doneBy", this), WorldObjects.ToParameter("toLocation", GetHeading())); simEvent.Serial = wasStopped; startStops.Insert(0, simEvent); } }
public void OnEvent(CogbotEvent evt) { if (!EventsEnabled) { return; } try { if (tcpStreamWriter != null) { tcpStreamWriter.WriteLine(BotTcpServer.EventToString(evt, Server.parent)); tcpStreamWriter.Flush(); } } catch (IOException e) { WriteLine("OnEvent: " + e); Shutdown(); } }
//public override bool OnEffect(string effectType, object t, object p, float duration, UUID id) //{ // bool noteable = LogEvent(new SimObjectEvent(effectType, SimEventType.EFFECT, SimEventStatus.Once, this, t, p, duration, id)); // //todo // if (noteable) WorldSystem.SendNewEvent("on-effect", effectType, this, t, p, duration, id); // return noteable; // //throw new NotImplementedException(); //} public override bool LogEvent(CogbotEvent SE) { string typeUse = SE.Verb; object[] args1_N = SE.GetArgs(); // does this backwards to the first argument is the most reliavant object for (int i = args1_N.Length - 1; i >= 0; i--) { object o = args1_N[i]; if (o == this) continue; //skip self if (o is SimObject) KnownSimObjects.Add((SimObject)o); } _knownTypeUsages.AddTo(SimTypeSystem.CreateTypeUsage(typeUse)); bool noteable = base.LogEvent(SE); if (noteable) //if (theAvatar.Name.Contains("rael")) { //DLRConsole.DebugWriteLine(SE); } return noteable; }
/// <summary>Raises the EachSimEvent event</summary> /// <param name="e">An EachSimEventEventArgs object containing the /// data returned from the data server</param> protected virtual void OnEachSimEvent(CogbotEvent e) { if (e.Verb == "On-Log-Message") return; if (ExpectConnected == false) return; EventHandler<EventArgs> handler = m_EachSimEvent; if (handler == null) return; List<Delegate> todo = new List<Delegate>(); lock (m_EachSimEventLock) { handler = m_EachSimEvent; if (handler == null) return; AddTodo(handler.GetInvocationList(), todo); } object sender = e.Sender ?? this; bool async = todo.Count > 3; foreach (var d in todo) { var del = (EventHandler<EventArgs>)d; ThreadStart task = () => { try { del(sender, (EventArgs) e); } catch (Exception ex) { LogException("OnEachSimEvent Worker", ex); } }; if (async) { ThreadPool.QueueUserWorkItem(sync => task()); } else { task(); } } }
private CogbotEvent AnimEvent(UUID uuid, SimEventType status, int serial) { SimAsset a = SimAssetStore.FindOrCreateAsset(uuid, AssetType.Animation); string headingString; switch (status) { case SimEventType.Start: { headingString = "eventOccursAt"; break; } case SimEventType.Stop: { headingString = "toLocation"; break; } default: { headingString = "eventOccursAt"; break; } } object m = a.GetMeaning(); CogbotEvent oe = CreateAEvent(status, "OnAnim", SimEventType.ANIM | SimEventType.REGIONAL, WorldObjects.ToParameter("doneBy", this), WorldObjects.ToParameter("isa", a), WorldObjects.ToParameter(headingString, GetHeading())); oe.Serial = serial; if (m != null) { oe.AddParam("isa", m); } return(oe); }
public bool LogEventFromCogbot(object sender, CogbotEvent evt) { if (DISABLE_AVRO) return true; EnsureStarted(); if (evt.Sender == this) return false; if (!IsQPIDRunning) return false; if (!cogbotSendersToNotSendToCogbot.Contains(sender)) cogbotSendersToNotSendToCogbot.Add(sender); string ss = evt.ToEventString(); var im = RK_publisher.CreateTextMessage(ss); int num = 0; foreach (var s in evt.Parameters) { string sKey = s.Key; if (!im.Headers.Contains(sKey)) { num = 0; } else { num++; sKey = sKey + "_" + num; while (im.Headers.Contains(sKey)) { num++; sKey = s.Key + "_" + num; } } im.Headers.SetString(sKey, "" + s.Value); } im.Headers.SetString("verb", "" + evt.Verb); im.Headers.SetBoolean("personal", evt.IsPersonal != null); im.Headers.SetString("evstatus", "" + evt.EventStatus); im.Timestamp = evt.Time.ToFileTime(); im.Type = "" + evt.EventType1; RK_publisher.SendMessage(RoboKindEventModule.COGBOT_EVENT_ROUTING_KEY, im); return false; }
private object lispCodeFromEvent(CogbotEvent evt) { return(genLispCodeTree("(" + evt.Verb.ToLower() + " " + argsListString(evt.GetArgs()) + ")")); }
public void SendEffect(Simulator sim, UUID sourceID, UUID targetID, Vector3d targetPos, string effectType, float duration, UUID id, PCode sourceType) { if (!MaintainEffects) { return; } if (sourceID == client.Self.AgentID) { return; //not sending our own effects } if (!IsMaster(sim)) { return; } if (MaintainOnlyMasterEffects && client.MasterKey != UUID.Zero) { if (!(client.MasterKey == targetID || sourceID == client.MasterKey)) { return; } } if (id != UUID.Zero) { // if (EffectsSent.Contains(id)) return; // EffectsSent.Add(id); } object s = sourceID; object t = targetID; object p = targetPos; //if (SkippedEffects.Contains(effectType)) return; SimObject source = GetSimObjectFromUUID(sourceID); if (source == null) { if (sourceID != UUID.Zero) { source = GetSource(sim, sourceID, source, ref s, sourceType); if (source == null) { return; } } // RequestAsset(sourceID, AssetType.Object, true); } else { s = source; } if (source is SimObjectImpl && !(source is SimAvatar)) { Debug("Write source is Object " + source); } SimObject target = GetSimObjectFromUUID(targetID); if (target == null) { if (targetID != UUID.Zero) { target = GetSource(sim, targetID, target, ref t, PCode.None); if (target == null) { return; } } // RequestAsset(targetID, AssetType.Object, true); } else { t = target; } double dist; SimObject ST = target; if (ST == null) { ST = source; } if (targetPos.X < 256) { if (targetPos == Vector3d.Zero) { p = SimHeading.UNKNOWN; } else { if (ST != null) { Vector3d STGlobalPosition; if (ST.TryGetGlobalPosition(out STGlobalPosition)) { p = (STGlobalPosition + targetPos); } else { p = AsRLocation(sim, targetPos, ST); } } else { p = new Vector3((float)targetPos.X, (float)targetPos.Y, (float)targetPos.Z); } } } else { SimObject posTarget = GetSimObjectFromVector(targetPos, out dist); if (dist < 0.5) { p = posTarget; if (targetID == UUID.Zero) { // now we have a target t = posTarget; // todo should we revert back to position? //p = targetPos; } } else { if (targetID == UUID.Zero) { // now we have a target t = targetPos; // todo should we revert back to position? //p = targetPos; } } } EventQueue.Enqueue(() => { source = SecondChanceUUID(ref s, source); target = SecondChanceUUID(ref t, target); //if (source != null) source; // WriteLine("ClientManager Avatars_OnLookAt: " + sourceID.ToString() + " to " + targetID.ToString() + " at " + targetID.ToString() + " with type " + lookType.ToString() + " duration " + duration.ToString()); if (targetID == client.Self.AgentID) { // if (lookType == LookAtType.Idle) return; //WriteLine(" (TARGET IS SELF)"); client.SendPersonalEvent(SimEventType.EFFECT, "on-effect-targeted-self", ToParameter("doneBy", s), ToParameter("objectActedOn", TheSimAvatar), ToParameter("eventPartiallyOccursAt", p), ToParameter("simDuration", duration), ToParameter("effectType", effectType)); // ()/*GetObject*/(sourceID), effectType); } if (source != null) { source.OnEffect(client, effectType, t, p, duration, id); } else { CogbotEvent evt = ACogbotEvent.CreateEvent(client, effectType, SimEventType.Once | SimEventType.EFFECT | SimEventType.REGIONAL, ToParameter("doneBy", s), ToParameter("objectActedOn", t), ToParameter( "eventPartiallyOccursAt", p), ToParameter("simDuration", duration), AsEffectID(id)); if (t is SimObject) { ((SimObject)t).AddCanBeTargetOf(2, evt); } RegisterUUID(id, effectType); //TODO if (UseEventSource(s) || UseEventSource(t)) { SendPipelineEvent(evt); } //SendNewEvent("on-effect", effectType, s, t, p, duration, AsEffectID(id)); } }); }
//internal SimObjectEvent CombinesWith(SimObjectEvent SE) //{ // if (this.Verb == SE.Verb) // { // if (this.EventStatus == SE.EventStatus) // { // return new SimObjectEvent(Verb, this.EventType, this.EventStatus, this.Parameters, SE.Parameters); // } // if (this.EventStatus == SimEventStatus.Start && SE.EventStatus == SimEventStatus.Stop) // { // return new SimObjectEvent(Verb, this.EventType, SimEventStatus.Once, this.Parameters, SE.Parameters); // } // if (this.EventStatus == SimEventStatus.Once && SE.EventStatus == SimEventStatus.Stop) // { // return new SimObjectEvent(Verb, this.EventType, SimEventStatus.Once, this.Parameters, SE.Parameters); // } // if (this.EventStatus == SimEventStatus.Start && SE.EventStatus == SimEventStatus.Once) // { // return new SimObjectEvent(Verb, this.EventType, SimEventStatus.Once, this.Parameters, SE.Parameters); // } // } // return null; //} public bool SameAs(CogbotEvent SE) { if (Verb != SE.Verb) return false; if (EventType1 != SE.EventType1) return false; if (Parameters == null) return SE.Parameters == null; if (SE.Parameters == null) return Parameters == null; if (Parameters.Length != SE.Parameters.Length) return false; NamedParam[] other = SE.Parameters; for (int i = 0; i < other.Length; i++) { NamedParam otheri = other[i]; if (otheri.Value == null) { if (Parameters[i].Value != null) return false; continue; } if (NonComparable(otheri.GetType())) continue; if (!Equals(Parameters[i], otheri)) return false; } return true; }
public override void AddCanBeTargetOf(int argN, CogbotEvent evt) { base.AddCanBeTargetOf(argN, evt); }
private void SetPosture(CogbotEvent evt) { lock (postureLock) { if (PostureType != null) { // was the same if (PostureType == evt.Verb) return; CogbotEvent ending = new ACogbotEvent(evt.Sender, SimEventType.Stop | SimEventType.ANIM | SimEventType.REGIONAL, PostureType + (IsFlying ? "-Flying" : ""), evt.Parameters) { Serial = LastPostureEvent.Serial }; LogEvent(ending); PostureType = evt.Verb; CogbotEvent starting = new ACogbotEvent(evt.Sender, SimEventType.Start | SimEventType.ANIM | SimEventType.REGIONAL, PostureType + (IsFlying ? "-Flying" : ""), evt.Parameters) { Serial = evt.Serial }; LogEvent(starting); } PostureType = evt.Verb; LastPostureEvent = evt; } }
private object lispCodeFromEvent(CogbotEvent evt) { return genLispCodeTree("(" + evt.Verb.ToLower() + " " + argsListString(evt.GetArgs()) + ")"); }
public void SendPipelineEvent(CogbotEvent evt) { OnEachSimEvent(evt); botPipeline.SendEvent(evt); }
// this pipelike will fire OnEvent to the subscriber list public void SendEvent(CogbotEvent simObjectEvent) { if (!EventsEnabled) return; if (LastEvent != null && simObjectEvent.SameAs(LastEvent)) { return; } if (LastEventAW != null && simObjectEvent.SameAs(LastEventAW)) { return; } LastEvent = simObjectEvent; LastEventAW = simObjectEvent; ThreadStart start = () => SendNow(simObjectEvent); if (ExecSynchronous) { start(); return; } if (!UseQueue) { new Thread(start).Start(); } else taskQueue.Enqueue(start); }
public void OnEvent(CogbotEvent evt) { qpid.OnEvent(evt); }
static internal string EventToString(CogbotEvent evt, BotClient parent) { return string.Format("({0} {1})", evt.Verb, parent.argsListString(evt.GetArgs())); }
void SimEventSubscriber.OnEvent(CogbotEvent evt) { if (!EventsEnabled) return; if (DisableEventStore) return; whileClientIsAway.Enqueue(EventToString(evt, parent)); }
public void OnEvent(CogbotEvent evt) { if (!EventsEnabled) return; try { if (tcpStreamWriter != null) { tcpStreamWriter.WriteLine(BotTcpServer.EventToString(evt, Server.parent)); tcpStreamWriter.Flush(); } } catch (IOException e) { WriteLine("OnEvent: " + e); Shutdown(); } }
private bool Skipped(CogbotEvent evt) { return (SkippedVerb(evt.Verb) || SkippedVerb(evt.EventType1.ToString()) || SkippedVerb(evt.EventName)); }
static internal string EventToString(CogbotEvent evt, BotClient parent) { return(string.Format("({0} {1})", evt.Verb, parent.argsListString(evt.GetArgs()))); }
void SimEventSubscriber.OnEvent(CogbotEvent evt) { if (taskInterperter != null && taskInterperter.IsSubscriberOf(evt.Verb)) { object lispCode = lispCodeFromEvent(evt); taskQueue.Enqueue(new KeyValuePair<object, CogbotEvent>(lispCode, evt)); } }
public void OnEvent(CogbotEvent evt) { if (DISABLE_AVRO) return; EnsureStarted(); if (evt.IsEventType(SimEventType.DATA_UPDATE)) return; LogEventFromCogbot(evt.Sender, evt); }
public bool LogEventFromRoboKind(object sender, CogbotEvent evt) { if (DISABLE_AVRO) return false; EnsureStarted(); if (cogbotSendersToNotSendToCogbot.Contains(sender)) { return false; } evt.Sender = sender ?? evt.Sender; //@todo client.SendPipelineEvent(evt); return true; }
public CogbotEvent SendPipelineEvent(CogbotEvent param1) { client.SendPipelineEvent(param1); return param1; }
public CogbotEvent SendPipelineEvent(CogbotEvent param1) { client.SendPipelineEvent(param1); return(param1); }
private bool Skipped(CogbotEvent evt) { return(SkippedVerb(evt.Verb) || SkippedVerb(evt.EventType1.ToString()) || SkippedVerb(evt.EventName)); }
public void OnEvent(CogbotEvent evt) { if (!EventsEnabled || Skipped(evt)) return; Next.OnEvent(evt); }
public void OnEvent(CogbotEvent simObjectEvent) { if (!EventsEnabled) return; SendNow(simObjectEvent); }