
    ̺i                     D   S r \" \" SS5      5      r\" \" SS5      5      r\" \" SS5      5      rSrSrSrSr	Sr
S	rS
 r\" SSSS5      \" SSSS5      \" SSSS5      \" SSSS5      \" SSSS5      \" SSSS5      \" SSSS5      \" SS S!\" S"5      5      \" S#S$S%S5      \" S&S'S(S5      \" S)S*S+S5      \" S,S-S.S/5      \" SS0S.S/5      \" S1S2S.S/5      \" S3S4S.S/5      \" S5S6S.S/5      \" S7S8S.S/5      \" S9S:S.S/5      /rS; r\" \5      u  rrr1 S<krSSS.SSSSSSSSS=SS>.rS? rg@)AzDefinitions and lookup tables for MIDI messages.

TODO:

    * add lookup functions for messages definitions by type and status
      byte.
               i i      i?  c                 .    U UU[        U5      SS1-  US.$ )Ntypetime)status_byter	   value_namesattribute_nameslength)set)r   type_r   r   s       R/var/www/piano.thomer.com/venv/lib/python3.13/site-packages/mido/messages/specs.py_defmsgr      s*    ""{+vv.>>     note_off)channelnotevelocity      note_on   	polytouch)r   r   value   control_change)r   controlr      program_change)r   program      
aftertouch)r   r      
pitchwheel)r   pitchsysex)datainf   quarter_frame)
frame_typeframe_value   songpos)pos   song_select)song   tune_request    clock   start   continue   stop   active_sensing   resetc                     0 n0 n0 nU  H9  nUS   nUS   nXCU'   U[         ;   a  [        S5       H	  nXBXg-  '   M     M5  XBU'   M;     UR                  U5        UR                  U5        XU4$ )Nr	   r      )CHANNEL_MESSAGESrangeupdate)specslookup	by_statusby_typespecr   r   r   s           r   _make_spec_lookupsrP   C   s    FIGV=)** 937+/0 % &*k"  MM)
MM'g%%r   >   rA   r;   r=   r?   r8   @   )r   r    r+   r/   r0   r   r)   r3   r#   r6   r   r   r
   c                     U [         ;   a
  [         U    nO[        SU < 35      eU [        S   S.nUS    H  n[        U   X4'   M     UR                  U5        U$ )zReturn a new message.

Returns a dictionary representing a message.

Message values can be overriden.

No type or value checking is done.  The caller is responsible for
calling check_msgdict().
zUnknown message type r
   )r	   r
   r   )SPEC_BY_TYPELookupErrorDEFAULT_VALUESrJ   )r   	overridesrO   msgnames        r   make_msgdictrY   r   sf     E"1%;<<."8
9C]#"4(	 $ JJyJr   N)__doc__r   rI   rH   COMMON_MESSAGESREALTIME_MESSAGESSYSEX_START	SYSEX_ENDMIN_PITCHWHEELMAX_PITCHWHEELMIN_SONGPOSMAX_SONGPOSr   floatSPECSrP   SPEC_LOOKUPSPEC_BY_STATUSrS   REALTIME_TYPESrU   rY   r9   r   r   <module>rh      s  
 uT4() eD$'(dE*+ 	   D*=qAD)<a@D+;Q?D"$CQGD"$;Q?D, 5q9D, 5q9 D'9eEl3D/#@!DD)Xq)D-A.D."a( D'2q!D'2q!D*b!$D&"a D"B*D'2q!1	8&. -?u,E )^\G (r   