Panda3D

throw_event.I

00001 // Filename: throw_event.I
00002 // Created by:  drose (08Feb99)
00003 //
00004 ////////////////////////////////////////////////////////////////////
00005 //
00006 // PANDA 3D SOFTWARE
00007 // Copyright (c) Carnegie Mellon University.  All rights reserved.
00008 //
00009 // All use of this software is subject to the terms of the revised BSD
00010 // license.  You should have received a copy of this license along
00011 // with this source code in a file named "LICENSE."
00012 //
00013 ////////////////////////////////////////////////////////////////////
00014 
00015 
00016 INLINE void
00017 throw_event(const CPT_Event &event) {
00018   EventQueue::get_global_event_queue()->queue_event(event);
00019 }
00020 
00021 INLINE void
00022 throw_event(const string &event_name) {
00023   EventQueue::get_global_event_queue()->queue_event(new Event(event_name));
00024 }
00025 
00026 INLINE void
00027 throw_event(const string &event_name,
00028             const EventParameter &p1) {
00029   Event *event = new Event(event_name);
00030   event->add_parameter(p1);
00031   EventQueue::get_global_event_queue()->queue_event(event);
00032 }
00033 
00034 INLINE void
00035 throw_event(const string &event_name,
00036             const EventParameter &p1,
00037             const EventParameter &p2) {
00038   Event *event = new Event(event_name);
00039   event->add_parameter(p1);
00040   event->add_parameter(p2);
00041   EventQueue::get_global_event_queue()->queue_event(event);
00042 }
00043 
00044 INLINE void
00045 throw_event(const string &event_name,
00046             const EventParameter &p1,
00047             const EventParameter &p2,
00048             const EventParameter &p3) {
00049   Event *event = new Event(event_name);
00050   event->add_parameter(p1);
00051   event->add_parameter(p2);
00052   event->add_parameter(p3);
00053   EventQueue::get_global_event_queue()->queue_event(event);
00054 }
00055 
00056 INLINE void
00057 throw_event(const string &event_name,
00058             const EventParameter &p1,
00059             const EventParameter &p2,
00060             const EventParameter &p3,
00061             const EventParameter &p4) {
00062   Event *event = new Event(event_name);
00063   event->add_parameter(p1);
00064   event->add_parameter(p2);
00065   event->add_parameter(p3);
00066   event->add_parameter(p4);
00067   EventQueue::get_global_event_queue()->queue_event(event);
00068 }
00069 
00070 ////////////////////////////////////////////////////////////////////////////
00071 
00072 INLINE void
00073 throw_event_directly(EventHandler& handler,
00074                      const CPT_Event &event) {
00075   handler.dispatch_event(event);
00076 }
00077 
00078 INLINE void
00079 throw_event_directly(EventHandler& handler,
00080                      const string &event_name) {
00081   handler.dispatch_event(new Event(event_name));
00082 }
00083 
00084 INLINE void
00085 throw_event_directly(EventHandler& handler,
00086                      const string &event_name,
00087                      const EventParameter &p1) {
00088   Event *event = new Event(event_name);
00089   event->add_parameter(p1);
00090   handler.dispatch_event(event);
00091 }
00092 
00093 INLINE void
00094 throw_event_directly(EventHandler& handler,
00095                      const string &event_name,
00096                      const EventParameter &p1,
00097                      const EventParameter &p2) {
00098   Event *event = new Event(event_name);
00099   event->add_parameter(p1);
00100   event->add_parameter(p2);
00101   handler.dispatch_event(event);
00102 }
00103 
00104 INLINE void
00105 throw_event_directly(EventHandler& handler,
00106                      const string &event_name,
00107                      const EventParameter &p1,
00108                      const EventParameter &p2,
00109                      const EventParameter &p3) {
00110   Event *event = new Event(event_name);
00111   event->add_parameter(p1);
00112   event->add_parameter(p2);
00113   event->add_parameter(p3);
00114   handler.dispatch_event(event);
00115 }
 All Classes Functions Variables Enumerations