- new (slot) DerivedType( static_cast<const DerivedType&>(event) );
-
- break;
- }
-
- case Event::Gesture:
- {
- QueueGestureEvent( static_cast<const Integration::GestureEvent&>(event) );
- break;
- }
-
- }
-}
-
-void EventProcessor::QueueGestureEvent(const Integration::GestureEvent& event)
-{
- switch( event.gestureType )
- {
- case Gesture::Pinch:
- {
- typedef Integration::PinchGestureEvent DerivedType;
-
- // Reserve some memory inside the message queue
- uint32_t* slot = mCurrentEventQueue->ReserveMessageSlot( sizeof( DerivedType ) );
-
- // Construct message in the message queue memory; note that delete should not be called on the return value
- new (slot) DerivedType( static_cast<const DerivedType&>(event) );
-
- break;
- }
-
- case Gesture::Pan:
- {
- typedef Integration::PanGestureEvent DerivedType;
-
- // Reserve some memory inside the message queue
- uint32_t* slot = mCurrentEventQueue->ReserveMessageSlot( sizeof( DerivedType ) );
-
- // Construct message in the message queue memory; note that delete should not be called on the return value
- new (slot) DerivedType( static_cast<const DerivedType&>(event) );
-
- break;
- }
-
- case Gesture::Tap:
- {
- typedef Integration::TapGestureEvent DerivedType;
-
- // Reserve some memory inside the message queue
- uint32_t* slot = mCurrentEventQueue->ReserveMessageSlot( sizeof( DerivedType ) );
-
- // Construct message in the message queue memory; note that delete should not be called on the return value
- new (slot) DerivedType( static_cast<const DerivedType&>(event) );
-
- break;
- }
-
- case Gesture::LongPress:
- {
- typedef Integration::LongPressGestureEvent DerivedType;
-
- // Reserve some memory inside the message queue
- uint32_t* slot = mCurrentEventQueue->ReserveMessageSlot( sizeof( DerivedType ) );
-
- // Construct message in the message queue memory; note that delete should not be called on the return value
- new (slot) DerivedType( static_cast<const DerivedType&>(event) );