diff --git a/src/documentation/haiku_book/mail/intro.xml b/src/documentation/haiku_book/mail/intro.xml
index 1023c719bf..236c0f3fb6 100644
--- a/src/documentation/haiku_book/mail/intro.xml
+++ b/src/documentation/haiku_book/mail/intro.xml
@@ -9,9 +9,9 @@
The Mail Kit encompasses all email activities on Haiku, providing means for, but not limited to:
- Sending and receiving of email
- Interfacing for the manipulation of email messages and attachments
- Manipulating email account information
+ Sending and receiving of email
+ Interfacing for the manipulation of email messages and attachments
+ Manipulating email account information
diff --git a/src/documentation/haiku_book/midi/intro.xml b/src/documentation/haiku_book/midi/intro.xml
index debc88d5a9..b0e5def492 100644
--- a/src/documentation/haiku_book/midi/intro.xml
+++ b/src/documentation/haiku_book/midi/intro.xml
@@ -33,16 +33,16 @@
The main differences between the two kits:
- Instead of one BMidi object that both produces and consumes events, we have
- BMidiProducer and BMidiConsumer.
- Applications are capable of sharing MIDI producers and consumers with other
- applications via the centralized Midi Roster.
- Physical MIDI ports are now sharable without apps "stealing" events from each
- other.
- Applications can now send/receive raw MIDI byte streams (useful if an
- application has its own MIDI parser/engine).
- Channels are numbered 0..15, not 1..16
- Timing is now specified in microseconds instead of milliseconds.
+ Instead of one BMidi object that both produces and consumes events, we have
+ BMidiProducer and BMidiConsumer.
+ Applications are capable of sharing MIDI producers and consumers with other
+ applications via the centralized Midi Roster.
+ Physical MIDI ports are now sharable without apps "stealing" events from each
+ other.
+ Applications can now send/receive raw MIDI byte streams (useful if an
+ application has its own MIDI parser/engine).
+ Channels are numbered 0..15, not 1..16
+ Timing is now specified in microseconds instead of milliseconds.
diff --git a/src/documentation/haiku_book/midi/midi1.xml b/src/documentation/haiku_book/midi/midi1.xml
index a8e8c59ca5..4b9e31df84 100644
--- a/src/documentation/haiku_book/midi/midi1.xml
+++ b/src/documentation/haiku_book/midi/midi1.xml
@@ -10,37 +10,37 @@
The old Midi Kit, or midi1 for short, goes all the way back to DR8, when the
BeOS only ran on BeBoxen. Fortunately for us, it is pretty well documented:
- Midi
- Kit chapter in the online Be Book
- Midi
- Kit section of the old Be Developer Library
- Be Newsletter Volume 1, Issue 49 - Introduces the MIDI synth
- Be Newsletter Volume 1, Issue 52 - Follow-up on issue 49
- Be Newsletter Volume 1, Issue 91 - How to use BSynth
- Be Newsletter Volume 1, Issue 102 - Axe sample code
- Be Newsletter Volume 1, Issue 104 - How to use BMidiPort
- Be Newsletter Volume 2, Issue 23 - EdMidi sample code
- Be Newsletter Volume 2, Issue 37 - How to use the MIDI synth
- Be Newsletter Volume 3, Issue 37 - Whistle sample code
+ Midi
+ Kit chapter in the online Be Book
+ Midi
+ Kit section of the old Be Developer Library
+ Be Newsletter Volume 1, Issue 49 - Introduces the MIDI synth
+ Be Newsletter Volume 1, Issue 52 - Follow-up on issue 49
+ Be Newsletter Volume 1, Issue 91 - How to use BSynth
+ Be Newsletter Volume 1, Issue 102 - Axe sample code
+ Be Newsletter Volume 1, Issue 104 - How to use BMidiPort
+ Be Newsletter Volume 2, Issue 23 - EdMidi sample code
+ Be Newsletter Volume 2, Issue 37 - How to use the MIDI synth
+ Be Newsletter Volume 3, Issue 37 - Whistle sample code
To summarize, there are four basic MIDI classes:
- BMidi is the base class for most other classes from the Midi Kit.
- BMidiPort can talk to a MIDI hardware port.
- BMidiStore can read, write, and perform Standard MIDI files.
- BMidiText is a debugging aid that dumps MIDI messages to stdout
+ BMidi is the base class for most other classes from the Midi Kit.
+ BMidiPort can talk to a MIDI hardware port.
+ BMidiStore can read, write, and perform Standard MIDI files.
+ BMidiText is a debugging aid that dumps MIDI messages to stdout
The following classes let you use the Midi Kit's General MIDI synthesizer:
- BSynth controls the synthesizer.
- BMidiSynth connects a BMidi object to the synth.
- BMidiSynthFile connects a MIDI file to the synth
- BSamples lets you access the synth's sound data stream
+ BSynth controls the synthesizer.
+ BMidiSynth connects a BMidi object to the synth.
+ BMidiSynthFile connects a MIDI file to the synth
+ BSamples lets you access the synth's sound data stream
diff --git a/src/documentation/haiku_book/midi/midi2.xml b/src/documentation/haiku_book/midi/midi2.xml
index df7b8a45fc..d3d80fcf89 100644
--- a/src/documentation/haiku_book/midi/midi2.xml
+++ b/src/documentation/haiku_book/midi/midi2.xml
@@ -12,35 +12,35 @@
A brief overview of the elements that comprise the Midi Kit:
- Endpoints. This is what the Midi Kit is all about: sending MIDI messages
+ Endpoints. This is what the Midi Kit is all about: sending MIDI messages
between endpoints. An endpoint is like a MIDI In or MIDI Out socket on your
equipment; it either receives information or it sends information. Endpoints
that send MIDI events are called \b producers; the endpoints that receive those
events are called \b consumers. An endpoint that is created by your own
application is called \b local; endpoints from other applications are \b
- remote. You can access remote endpoints using \b proxies.
+ remote. You can access remote endpoints using \b proxies.
- Filters. A filter is an object that has a consumer and a producer
+ Filters. A filter is an object that has a consumer and a producer
endpoint. It reads incoming events from its consumer, performs some operation,
and tells its producer to send out the results. In its current form, the Midi
- Kit doesn't provide any special facilities for writing filters.
+ Kit doesn't provide any special facilities for writing filters.
- Midi Roster. The roster is the list of all published producers and
+ Midi Roster. The roster is the list of all published producers and
consumers. By publishing an endpoint, you allow other applications to talk to
it. You are not required to publish your endpoints, in which case only your own
- application can use them.
+ application can use them.
- Midi Server. The Midi Server does the behind-the-scenes work. It
+ Midi Server. The Midi Server does the behind-the-scenes work. It
manages the roster, it connects endpoints, it makes sure that endpoints can
communicate, and so on. The Midi Server is started automatically when BeOS
boots, and you never have to deal with it directly. Just remember that it runs
- the show.
+ the show.
- libmidi. The BMidi* classes live inside two shared libraries: libmidi.so
+ libmidi. The BMidi* classes live inside two shared libraries: libmidi.so
and libmidi2.so. If you write an application that uses old Midi Kit, you must
link it to libmidi.so. Applications that use the new Midi Kit must link to
libmidi2.so. If you want to mix-and-match both kits, you should also link to
- both libraries.
+ both libraries.
@@ -319,12 +319,12 @@
as the BeOS R5 kits, although there are a few small differences in the API
(mostly bug fixes):
- BMidiEndpoint::IsPersistent() always returns false.
- The B_MIDI_CHANGE_LATENCY notification is now properly sent. The Be kit
+ BMidiEndpoint::IsPersistent() always returns false.
+ The B_MIDI_CHANGE_LATENCY notification is now properly sent. The Be kit
incorrectly set be:op to B_MIDI_CHANGED_NAME, even though the rest of the
- message was properly structured.
- If creating a local endpoint fails, you can still Release() the object
- without crashing into the debugger.
+ message was properly structured.
+ If creating a local endpoint fails, you can still Release() the object
+ without crashing into the debugger.
@@ -335,25 +335,25 @@
More about the Midi Kit:
- Be Newsletter Volume 3, Issue 47 - Motor Mix sample code
- Be Newsletter Volume 4, Issue 3 - Overview of the new kit
- Haiku
- Newsletter 33, Introduction to MIDI, Part 1
- Haiku
- Newsletter 36, Introduction to MIDI, Part 2
- Sample code and other goodies at the
- OpenBeOS Midi Kit team page
+ Be Newsletter Volume 3, Issue 47 - Motor Mix sample code
+ Be Newsletter Volume 4, Issue 3 - Overview of the new kit
+ Haiku
+ Newsletter 33, Introduction to MIDI, Part 1
+ Haiku
+ Newsletter 36, Introduction to MIDI, Part 2
+ Sample code and other goodies at the
+ OpenBeOS Midi Kit team page
Information about MIDI in general:
- MIDI Manufacturers Association
- MIDI Tutorials
- MIDI Specification
- Standard MIDI File Format
- Jim Menard's MIDI Reference
+ MIDI Manufacturers Association
+ MIDI Tutorials
+ MIDI Specification
+ Standard MIDI File Format
+ Jim Menard's MIDI Reference
diff --git a/src/documentation/haiku_book/midi/midi2localconsumer.xml b/src/documentation/haiku_book/midi/midi2localconsumer.xml
index cda4e9ea13..5ffd8f5b88 100644
--- a/src/documentation/haiku_book/midi/midi2localconsumer.xml
+++ b/src/documentation/haiku_book/midi/midi2localconsumer.xml
@@ -143,12 +143,12 @@
Parameters:
- when An absolute time that's
- measured against the system clock.
- data A pointer to a "cookie" that
+ when An absolute time that's
+ measured against the system clock.
+ data A pointer to a "cookie" that
you can pass along to Timeout(). The data is not copied, so
you must ensure that the pointer remains valid until Timeout() is
- called. You typically delete the data inside Timeout().
+ called. You typically delete the data inside Timeout().
@@ -200,11 +200,11 @@
Parameters:
- data the MIDI event data
- length byte size of the data buffer
- atomic whether the data buffer contains
- a single complete MIDI event
- time the requested performance time of the event
+ data the MIDI event data
+ length byte size of the data buffer
+ atomic whether the data buffer contains
+ a single complete MIDI event
+ time the requested performance time of the event
diff --git a/src/documentation/haiku_book/midi/midi2localproducer.xml b/src/documentation/haiku_book/midi/midi2localproducer.xml
index 29cd1ad9ec..8276a9df6e 100644
--- a/src/documentation/haiku_book/midi/midi2localproducer.xml
+++ b/src/documentation/haiku_book/midi/midi2localproducer.xml
@@ -143,11 +143,11 @@
Parameters:
- data the MIDI event data
- length byte size of the data buffer
- atomic whether the data buffer contains
- a single complete MIDI event
- time the required performance time of the event
+ data the MIDI event data
+ length byte size of the data buffer
+ atomic whether the data buffer contains
+ a single complete MIDI event
+ time the required performance time of the event
diff --git a/src/documentation/haiku_book/midi/midi2roster.xml b/src/documentation/haiku_book/midi/midi2roster.xml
index 4c2ad7b8ff..1ae16d39c1 100644
--- a/src/documentation/haiku_book/midi/midi2roster.xml
+++ b/src/documentation/haiku_book/midi/midi2roster.xml
@@ -238,6 +238,7 @@
notifications when you register or unregister your local endpoints, but the
other apps will.
+ B_MIDI_REGISTERED message structure
@@ -265,6 +266,7 @@
+ B_MIDI_UNREGISTERED message structure
@@ -294,7 +296,7 @@
The "connected" and "disconnected" notifications are sent when a consumer
- BMidiProducer::Connect()'s to a producer, or when they
+ BMidiProducer::Connect()'s to a producer, or when they table
BMidiProducer::Disconnect(). You will receive these
notifications when any two endpoints connect or disconnect, even if they
are not published. (The purpose of which is debatable.) You won't receive the
@@ -303,6 +305,7 @@
published endpoints.
+ B_MIDI_CONNECTED message structure
@@ -330,6 +333,7 @@
+ B_MIDI_DISCONNECTED message structure
@@ -363,6 +367,7 @@
its published endpoints.
+ B_MIDI_CHANGED_NAME message structure
@@ -396,6 +401,7 @@
+ B_MIDI_CHANGED_LATENCY message structure
@@ -429,6 +435,7 @@
+ B_MIDI_CHANGED_PROPERTIES message structure