JavaTM Platform
Standard Ed. 6

javax.sound.midi
클래스 MidiMessage

java.lang.Object 
  상위를 확장 javax.sound.midi.MidiMessage
모든 구현된 인터페이스:
Cloneable
직계의 기존의 서브 클래스:
MetaMessage , ShortMessage , SysexMessage


public abstract class MidiMessage
extends Object
implements Cloneable

MidiMessage 는 MIDI 메세지의 base class입니다. MetaMessage 는, 신디사이저를 응답할 수 있는 표준의 MIDI 메세지 사나워지고가 아니고, 시퀀서 프로그램을 사용할 수 있는 「메타이벤트」도 포함합니다. 가사, 저작권, 템포 지시, 박자 기호 및 악곡의 조를 나타내는 기호, 마커등의 정보의 메타이벤트가 있습니다. 상세한 것에 대하여는, MIDI Manufacturer's Association (http://www.midi.org )로부터 발행되고 있는 「Complete MIDI 1.0 Detailed Specification」에 거둘 수 있고 있는 「Standard MIDI Files 1.0」의 스펙을 참조해 주세요.

기저 MidiMessage 클래스는, MIDI 메세지에 관한 3 종류의 정보에의 액세스를 제공합니다.

MidiMessage 는 취득의 메소드를 포함합니다만, 이러한 값은 설정하지 않습니다. 이러한 값의 설정은 서브 클래스에 의해 행해집니다.

MIDI 표준에서는 MIDI 데이터를 바이트로 표현합니다. 그러나, JavaTM 는 부호 첨부 바이트를 사용하고 있기 (위해)때문에, Java Sound API 는, MIDI 데이터를 표현할 때에 바이트는 아니고 정수형을 사용합니다. 예를 들어,MidiMessagegetStatus() 메소드는 MIDI 상태 바이트를 정수형으로서 돌려줍니다. Java Sound 의 외부에서 부호 첨부 바이트로서 encode 된 MIDI 데이터를 처리하는 경우는, 다음의 변환식을 사용해 바이트를 정수형으로 변환할 수 있습니다.

int i = (int)(byte & 0xFF)

단지 기존의 MIDI 바이트치를 메소드 파라미터로서 건네줄 필요가 있을 뿐(만큼)의 경우는, 10 진표기법 또는 16 진표기법을 사용해, 그 MIDI 바이트치를 정수형으로서 직접 나타낼 수가 있습니다. 예를 들어, 「액티브 센싱」상태 바이트를 최초의 인수로서 ShortMessage 의 setMessage(int) 메소드에 건네주는 경우는, 이 상태 바이트를 254 또는 0xFE 로서 나타낼 수가 있습니다.

관련 항목:
Track , Sequence , Receiver

필드의 개요
protected  byte[] data
          MIDI 메세지 데이터입니다.
protected  int length
          MIDI 메세지의 바이트수로, 상태 바이트와 데이터 바이트를 포함합니다.
 
생성자 의 개요
protected MidiMessage (byte[] data)
          MidiMessage 를 새롭게 구축합니다.
 
메소드의 개요
abstract  Object clone ()
          이 객체와 같은 클래스에서, 같은 내용의 새로운 객체를 작성합니다.
 int getLength ()
          MIDI 메세지의 전체 길이를 바이트로 가져옵니다.
 byte[] getMessage ()
          MIDI 메세지 데이터를 가져옵니다.
 int getStatus ()
          MIDI 메세지의 상태 바이트를 가져옵니다.
protected  void setMessage (byte[] data, int length)
          MIDI 메세지의 데이터를 설정합니다.
 
클래스 java.lang. Object 로부터 상속된 메소드
equals , finalize , getClass , hashCode , notify , notifyAll , toString , wait , wait , wait
 

필드의 상세

data

protected byte[] data
MIDI 메세지 데이터입니다. 최초의 바이트는 메세지의 상태 바이트입니다. 메세지의 길이까지의 후속의 바이트가, 이 메세지의 데이터 바이트입니다.

관련 항목:
getLength()

length

protected int length
MIDI 메세지의 바이트수로, 상태 바이트와 데이터 바이트를 포함합니다.

관련 항목:
getLength()
생성자 의 상세

MidiMessage

protected MidiMessage(byte[] data)
MidiMessage 를 새롭게 구축합니다. 이 protected 생성자 은 구상 서브 클래스에 의해 불려 가 그 구상 서브 클래스에서는 유효한 MIDI 메세지 전체를 데이터 배열로 지정합니다.

파라미터:
data - 상세한 메세지를 포함한 바이트의 배열. 메세지 데이터는 setMessage 메소드를 사용해 변경할 수 있는
관련 항목:
setMessage(byte[], int)
메소드의 상세

setMessage

protected void setMessage(byte[] data,
                          int length)
                   throws InvalidMidiDataException 
MIDI 메세지의 데이터를 설정합니다. 이 protected 메소드는 구상 서브 클래스에 의해 불려 가 그 구상 서브 클래스에서는 유효한 MIDI 메세지 전체를 데이터 배열로 지정합니다.

예외:
InvalidMidiDataException

getMessage

public byte[] getMessage()
MIDI 메세지 데이터를 가져옵니다. 반환되는 바이트 배열의 최초의 바이트는 메세지의 상태 바이트입니다. 메세지의 길이까지의 후속의 바이트가, 데이터 바이트입니다. 바이트 배열의 길이는 실제의 메세지보다 길어지는 경우가 있습니다. 바이트 단위에서의 메세지의 전체 길이는,getLength() 메소드에 의해 보고됩니다.

반환값:
결정된 MidiMessage 데이터를 포함한 바이트 배열

getStatus

public int getStatus()
MIDI 메세지의 상태 바이트를 가져옵니다. 상태 「바이트」는 정수형으로서 나타내집니다. MidiMessage 클래스의설명을 참조해 주세요.

반환값:
이 이벤트의 상태 바이트의 정수형 표시

getLength

public int getLength()
MIDI 메세지의 전체 길이를 바이트로 가져옵니다. MIDI 메세지는 1 개의 상태 바이트와 제로 또는 그 이상의 데이터 바이트로 구성됩니다. 반환값은, 시스템 리얼타임 메세지를 나타내는 1, 채널 메세지를 나타내는 2 또는 3, 메타멧세이지 및 시스템에크스크루시브멧세이지를 나타내는 그 외의 값이 됩니다.

반환값:
바이트 표시에 의한 메세지의 길이

clone

public abstract Object  clone()
이 객체와 같은 클래스에서, 같은 내용의 새로운 객체를 작성합니다.

오버라이드(override):
클래스 Object 내의 clone
반환값:
이 인스턴스의 복제
관련 항목:
Cloneable

JavaTM Platform
Standard Ed. 6

버그의 보고와 기능의 요청
한층 더 자세한 API 레퍼런스 및 개발자 문서에 대해서는,Java SE 개발자용 문서를 참조해 주세요. 개발자전용의 상세한 해설, 개념의 개요, 용어의 정의, 버그의 회피책, 및 코드 실례가 포함되어 있습니다.

Copyright 2006 Sun Microsystems, Inc. All rights reserved. Use is subject to license terms . Documentation Redistribution Policy 도 참조해 주세요.