export  class  EmitterUtil{
  /**
   *  订阅eventId的事件
   * @param eventId   事件id
   * @param callback   收到eventId的事件后执行该回调
   */
  static  on(eventId:number,callback:(eventData:emitter.EventData)=>void){
    let event:emitter.InnerEvent={
      eventId:eventId,
      priority:emitter.EventPriority.IMMEDIATE  //立即被投递
    }
    emitter.on(event,callback)
  }
  /**
   * 取消订阅事件
   * @param eventId   事件id
   */
  static  off(eventId:number){
    emitter.off(eventId)
  }
  /**
   *
   * @param eventId 事件id
   * @param data  事件内容
   */
  static  emit(eventId:number,data?:emitter.EventData){
    let event:emitter.InnerEvent={
      eventId:eventId,
      priority:emitter.EventPriority.IMMEDIATE  //立即被投递
    }
    let  eventData:emitter.EventData={
      data:data
    }
    //发送eventId的事件,事件内容为eventData
    emitter.emit(event,eventData)
  }
}