Introduction
Welcome to the Jitter Programming Guide. The intent of this document, as differentiated from the Jitter API Reference, is to provide clear explanations of how to program objects in the C programming language for use in Jitter. It is not meant to serve as a complete reference material for the API, which is the task of the
Jitter API Reference, nor is it meant to cover Jitter's Java or JavaScript language bindings. This document assumes familiarity with the C programming language, and how to make an external object for Max as covered in “Writing External Objects for Max and MSP”.
The Jitter Object Model outlines some important basic information about Jitter's flexible object model.
Max Wrappers describes how to write Max wrapper objects that contain Jitter objects for use in the Max patcher world.
Matrix Operator Quick Start and
Matrix Operator Details describe how to create a particular type of Jitter object called matrix operators, or MOPs.
OB3D Quick Start and
OB3D Details describe how to create OB3D Jitter objects for use in rendering OpenGL scenes.
Scheduler and Low Priority Queue Issues covers important threading and timing issues when building Jitter objects.
Object Registration and Notification explains how Jitter objects can be registered by name and notify clients as they change or important events occur.
Using Other Jitter Objects in C provides some examples of how to instantiate and take advantage of Jitter objects from C, just as one would from Java, Javascript, or the patcher. Finally,
The JXF File Specification and
Jitter Networking Specification contain information relating to the data formats involved in the JXF file format and Jitter networking protocols, respectively.
Style Conventions
Object names such as
jit.gl.gridshape will be in bold. Max messages such as
read dozer.mov will be in italics. Function names such as
jit_object_method when included in the text of a paragraph will be written in bold fixed font. Parameter names such as
width, when included in the text of a paragraph will be written in bold italics. Blocks of source code will be written inline in fixed font, as below:
t_jit_glue *jit_glue_new(void)
{
t_jit_glue *x;
short i;
if (x=(t_jit_glue *)jit_object_alloc(_jit_glue_class)) {
x->rows=1;
x->cols=1;
} else {
x = NULL;
}
return x;
}
Project Settings
TODO: Platform specific developer project settings will go here.
Additional Resources
While it is out of the scope of this document to cover many topics related to Jitter development, we suggest the following resources to better inform your development.
The C Programming Language:
Object Oriented Programming:
Digital Image Processing:
- "Handbook of Image and Video Processing", A. Bovik et al. (Academic Press, 2000). ISBN: 0121197921
- "Digital Image Processing", W. K. Pratt (John Wiley and Sons, 2001). ISBN: 0471857661
- "Principles of Digital Image Synthesis", A. S. Glassner (Morgan Kaufmann, 1995). ISBN: 1558602763
- Wikipedia's digital image processing resources
Open GL:
Apple and QuickTime:
Microsoft:
Next Chapter (The Jitter Object Model)
--
JoshuaKitClayton - 20 Jul 2006
to top