/* @(#)Z 1.3 com/src/registry/localidl/RManager.idl, odconfig, od96nt, odnt9712d 97/03/21 17:15:53 (96/10/29 09:30:12) */
//#====START_GENERATED_PROLOG======================================
//#
//#
//#   COMPONENT_NAME: odconfig
//#
//#   CLASSES: none
//#
//#   ORIGINS: 27
//#
//#
//#   (C) COPYRIGHT International Business Machines Corp. 1995,1996
//#   All Rights Reserved
//#   Licensed Materials - Property of IBM
//#   US Government Users Restricted Rights - Use, duplication or
//#   disclosure restricted by GSA ADP Schedule Contract with IBM Corp.
//#   	
//#   IBM DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING
//#   ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
//#   PURPOSE. IN NO EVENT SHALL IBM BE LIABLE FOR ANY SPECIAL, INDIRECT OR
//#   CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF
//#   USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
//#   OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE
//#   OR PERFORMANCE OF THIS SOFTWARE.
//#
//#====END_GENERATED_PROLOG========================================
//#

/********************************************************************/
/*  Licensed Materials - Property of IBM                            */
/*                                                                  */
/*                                                                  */
/* Copyright (C) International Business Machines Corp., 1994.       */
/* Copyright (C) Apple Computer, Inc., 1994                         */
/*                                                                  */
/*  US Government Users Restricted Rights -                         */
/*  Use, duplication, or disclosure restricted                      */
/*  by GSA ADP Schedule Contract with IBM Corp.                     */
/*                                                                  */
/*                                                                  */
/********************************************************************/
//# IBM Change History (most recent first):                         */
//# <OS2>  11/01/95 jso  142527 Added refresh method                */
//# <OS2>   8/27/94 MAP  Port A8C3                                  */
//#******************************************************************/
#ifdef __PRIVATE__
//#
//#     File:           RManager.idl
//#     
//#     Contains:       Interface for ODPartHandlerInfo class
//#     
//#     Written by:     Kirk Searls           
//#     
//#     Copyright:      @1994 by International Business Machines, Inc., 
//#                              all rights reserved.
//#     
//#     Change History (most recent first):
//#     
//#     <1>    6/8/94        KLS  first checked in
//#     
//#     To Do:
//#
#else
//#  Copyright:  1993-1994 by Apple Computer, Inc., all rights reserved.
#endif

#ifndef _RMANAGER_
#define _RMANAGER_

#include <somobj.idl>
#include <snglicls.idl>


//==============================================================================
// Implemenation types
//==============================================================================
typedef somToken ISOString;

//==============================================================================
// Theory of Operation
//==============================================================================

/*
  This file defines class RegistryManager.  This class contains information 
  about a part handler class.  This information is kept by the OpenDoc part 
  registry and is used by the OpenDoc shell and some OpenDoc utilities.
*/

//==============================================================================
// Classes defined in this interface
//==============================================================================

interface  RegistryManager;

//==============================================================================
// Classes used by this interface
//==============================================================================
interface ODPartHandlerRegistry;
#ifdef __PRIVATE__
interface ODPartHandlerRegistryInt;
#endif
//interface ComponentManager;


//==============================================================================
// RegistryManager
//==============================================================================

interface RegistryManager  : SOMObject
{
  ODPartHandlerRegistry GetODPartHandlerRegistry();
//  ComponentManager      GetComponentManager();
  #ifdef __PRIVATE__
  ODPartHandlerRegistry RefreshODPartHandlerRegistry();
  #endif
  
      
#ifdef __SOMIDL__

  implementation
  {
    passthru C_xh =
    ""
    "#include <ODTypes.h>"
    "";

    metaclass = SOMMSingleInstance;
    functionprefix = RegistryManager;

    somInit : override;
    somUninit : override;
 
    releaseorder:
      GetODPartHandlerRegistry,
//      GetComponentManager,      
    #ifdef __PRIVATE__
      RefreshODPartHandlerRegistry;
    #else
      reserved01;
    #endif
    #ifdef __PRIVATE__
      ODPartHandlerRegistryInt partHandlerRegistry;
    #endif    
  };
  
#endif

};

#endif


