ApplicationRegistrationDef

Used as the registration form to register an application object with the Media Manager by calling MM_RegisterObject.

Syntax

  struct ApplicationRegistrationDef 
  { 
      LONG   classobjectsignature; 
      BYTE  *name; 
      LONG  *controlroutine) ( 
                LONG token, 
                LONG function, 
                LONG parm1, 
                LONG parm2, 
                LONG parm3, 
                LONG bufferlength, 
                void *buffer ); 
      LONG   reserved; 
      LONG   type; 
      LONG   token; 
      LONG   identifier; 
  };
  

Fields

classobjectsignature
The application class signature MM_APPLICATION_SIGNATURE (see Class Signatures). This same signature should have been used to allocate the resource tag required by MM_RegisterObject.
name
The user-defined, null-terminated name of the application. Only the first MM_MAX_OBJECT_STRING_LEN - 1 characters are significant. The name is required. (See Miscellaneous Defines.)
controlroutine
A pointer to the application’s control routine. This vector provides programmatic access to the application. Human Jukebox and File System applications are expected to provide this vector. This value should be NULL for applications that do not require a control routine. The parameters are as follows:
  • token – the token given when the application was registered
  • function – one of a set defined by the application type.

controlroutine should return a Media Manager return value appropriate for the given function.

The remaining parameters in the prototype are specific to the function.

reserved
Set to zero.
type
Defines the type of application. See Application Types for a complete list.
token
A user-defined value that is passed back to the application by controlroutine.
identifier
This value is intended to uniquely identify the application. An attempt should be made to create a value that is not likely to be used by another application. Some examples are a hash of the application name, the author’s social security number in hex, etc. Be creative.

See Also

Application Class