The application class maintains all application objects. The type of the application suggests the intent of the application and, in some cases, defines a set of operations, accessible through the application object itself, that the application is expected to support.
For a list of application types, see Application Types.
Currently, only the MM_FILE_SYSTEM_APPLICATION and MM_HUMAN_JUKEBOX_APPLICATION types are expected to support a specific set of operations used in the management of file systems. These operations are defined in File System Application Operations.
This section covers the following topics:
An application must register with the Media Manager before it can utilize other objects in the Media Manager database.
An application is registered by completing the ApplicationRegistrationDef structure and calling MM_RegisterObject.
ccode = MM_RegisterObject(&appObjectHandle, MM_APPLICATION_CLASS, &appRegistrationDef, NULL, appResourceTag);
The fourth parameter is NULL only for the registration of application objects (an example of the classic chicken and egg paradox).
Unregistering an application is accomplished by calling MM_UnregisterObject.
An application's generic information can be obtained by calling MM_ReturnObjectGenericInfo. The ApplicationGenericInfoDef structure is returned for the Application OBID.