$$ \definecolor{rr}{rgb}{0.95,0.1,0} \definecolor{bb}{rgb}{0,0.4,1} \definecolor{gg}{rgb}{0,0.6,0} \definecolor{yy}{rgb}{0.8,0.5,0} \definecolor{pp}{rgb}{0.9,0,0.5} $$
내성적 물망초
: 내 성적 물리 때문에 망하기 10초 전

ShortMessage 클래스

~카테고리:
java/midi
패키지: javax.sound.midi
java.lang.Object
javax.sound.midi.MidiMessage
javax.sound.midi.ShortMessage
모두 구현된 인터페이스:
Cloneable

public class ShortMessage extends MidiMessage

ShortMessage는 상태바이트 뒤에 데이터를 최대 두 바이트 가진 미디메시지를 포함한다. 이 기준을 만족하는 MIDI 메시지 유형에는 채널보이스, 채널모드, 시스템공통, 시스템실시간이 있다. 즉, 시스템독점 및 메타이벤트를 제외한 메시지 유형 모두이다. ShortMessage 클래스는 미디메시지의 내용을 얻거나 설정하는 메쏘드를 제공한다.

미디 상태바이트 또는 데이터바이트를 지정하는 정수 매개변수가 여러 ShortMessage 메쏘드에 있다. 그 수치를 알면 바로 표현할 수 있다. 시스템공통메시지와 시스템실시간메시지의 경우, SYSTEM_RESET과 같은 해당 ShortMessage 필드를 쓸 수 있다. 채널 메시지의 경우, 상태바이트의 상위 4비트는 명령값으로 지정되고 하위 4비트는 미디 채널 번호로 지정된다. 자바의 signed 바이트 형식에 있는 미디데이터바이트가 들어올 때, MidiMessage 클래스의 설명이 제공하는 변환코드를 써서 변환시킬 수 있다.

같이보기:
SysexMessage, MetaMessage

필드 요약

필드
제한자, 자료형 식별자, 설명 (값의 오름차순으로 정렬함)
static int NOTE_OFF 음표끄기(Note Off) 메시지를 나타내는 명령값 (0x80, or 128)
static int NOTE_ON 음표켜기(Note On) 메시지를 나타내는 명령값 (0x90, or 144)
static int POLY_PRESSURE Polyphonic Key Pressure (Aftertouch) 메시지를 나타내는 명령값 (0xA0, or 160)
static int PROGRAM_CHANGE Program Change 메시지를 나타내는 명령값 (0xC0, or 192)
static int CONTROL_CHANGE Control Change 메시지를 나타내는 명령값 (0xB0, or 176)
static int CHANNEL_PRESSURE Channel Pressure (Aftertouch) 메시지를 위한 명령값 (0xD0, or 208)
static int PITCH_BEND Pitch Bend(※역주: 음높이를 위아래로 조정하는 기능) 메시지를 나타내는 명령값 (0xE0, or 224)
static int MIDI_TIME_CODE MIDI Time Code Quarter Frame 메시지를 나타내는 상태바이트 (0xF1, or 241)
static int SONG_POSITION_POINTER Song Position Pointer 메시지를 나타내는 상태바이트 (0xF2, or 242)
static int SONG_SELECT MIDI Song Select 메시지를 나타내는 상태바이트 (0xF3, or 243)
static int TUNE_REQUEST Tune Request 메시지를 나타내는 상태바이트 (0xF6, or 246)
static int END_OF_EXCLUSIVE End of System Exclusive 메시지를 나타내는 상태바이트 (0xF7, or 247)
static int TIMING_CLOCK Timing Clock 메시지를 나타내는 상태바이트 (0xF8, or 248)
static int START 시작(Start) 메시지를 나타내는 상태바이트 (0xFA, or 250)
static int CONTINUE Continue 메시지를 나타내는 상태바이트 (0xFB, or 251)
static int STOP 중지(Stop) 메시지를 나타내는 상태바이트 (0xFC, or 252)
static int ACTIVE_SENSING Active Sensing 메시지를 나타내는 상태바이트 (0xFE, or 254).
static int SYSTEM_RESET System Reset 메시지를 나타내는 상태바이트 (0xFF, or 255)
javax.sound.midi.MidiMessage에서 상속받은 필드
data, length

생성자 요약

생성자
제한자 식별자, 설명
- ShortMessage() 새 ShortMessage를 생성.
protected ShortMessage(
byte[] data
)
새 ShortMessage를 생성.
- ShortMessage(
int status
)
데이터바이트가 없는 미디메시지를 나타내는 새 ShortMessage를 생성.
- ShortMessage(
int status
,
int data1
,
int data2
)
데이터가 최대 2바이트인 미디메시지를 나타내는 새 ShortMessage를 생성.
- ShortMessage(
int command
,
int channel
,
int data1
,
int data2
)
데이터가 최대 2바이트인 채널 미디메시지를 나타내는 새 ShortMessage를 생성.

메쏘드 요약

메쏘드
제한자, 자료형 식별자, 설명
Object clone() 내용물과 클래스가 이 오브젝트와 같은 오브젝트를 새로 생성.
int getChannel() 이 이벤트와 연관된 미디채널 얻기.
int getCommand() 이 이벤트와 연관된 미디명령 얻기.
int getData1() 이 메시지의 첫 데이터바이트 얻기.
int getData2() 이 메시지의 둘째 데이터바이트 얻기.
protected int getDataLength(
int status
)
특정 상태바이트와 관련된 데이터바이트의 개수를 얻기.
void setMessage(
int status
)
데이터바이트가 없는 미디메시지의 매개변수 설정.
void setMessage(
int status
,
int data1
,
int data2
)
데이터바이트가 1이나 2 바이트인 미디메시지의 매개변수 설정.
void setMessage(
int command
,
int channel
,
int data1
,
int data2
)
데이터바이트가 최대 2바이트인 채널메시지의 short message 매개변수 설정.
javax.sound.midi.MidiMessage에서 상속받은 메쏘드
getLength, getMessage, getStatus, setMessage
java.lang.Object에서 상속받은 메쏘드
equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
https://docs.oracle.com/javase/7/docs/api/javax/sound/midi/ShortMessage.html