package rose;

/**
 * COM Interface 'IRoseModel'. Generated 31/01/2002 11:44:13 AM
 * from 'C:|Program Files|Rational|Rose|rationalrose.tlb'<P>
 * Generated using version 1.5 of <B>J-Integra[tm]</B> -- pure Java/COM integration technology from Intrinsyc Software Inc.
 * See  <A HREF="http://www.intrinsyc.com/">http://www.intrinsyc.com/</A><P>
 *
 * Generator Options:
 * PromptForTypeLibraries = False
 * AttemptNonDual = True
 * ClashPrefix = zz_
 * LowerCaseMemberNames = True
 * IDispatchOnly = False
 * RetryOnReject = False
 * AwtForOcxs = False
 * GenerateDeprecatedConstructors = True
 * ArraysAsObjects = False
 * DontGenerateDisp = False
 * DontRenameSameMethods = False
 * IgnoreConflictingInterfaces = True
 * MakeSerializable = True
 */
public interface IRoseModel extends java.io.Serializable {
  /**
   * getName. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getName  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setName. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setName  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getDocumentation. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getDocumentation  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setDocumentation. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setDocumentation  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getStereotype. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getStereotype  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setStereotype. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setStereotype  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getExternalDocuments. 
   *
   * @return    return value.  An reference to a IRoseExternalDocumentCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseExternalDocumentCollection getExternalDocuments  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setExternalDocuments. 
   *
   * @param     rhs An reference to a IRoseExternalDocumentCollection)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setExternalDocuments  (
              IRoseExternalDocumentCollection rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getRootCategory. 
   *
   * @return    return value.  An reference to a IRoseCategory
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseCategory getRootCategory  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setRootCategory. 
   *
   * @param     rhs An reference to a IRoseCategory)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setRootCategory  (
              IRoseCategory rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getRootSubsystem. 
   *
   * @return    return value.  An reference to a IRoseSubsystem
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseSubsystem getRootSubsystem  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setRootSubsystem. 
   *
   * @param     rhs An reference to a IRoseSubsystem)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setRootSubsystem  (
              IRoseSubsystem rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getDeploymentDiagram. 
   *
   * @return    return value.  An reference to a IRoseDeploymentDiagram
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseDeploymentDiagram getDeploymentDiagram  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setDeploymentDiagram. 
   *
   * @param     rhs An reference to a IRoseDeploymentDiagram)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setDeploymentDiagram  (
              IRoseDeploymentDiagram rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getUseCases. 
   *
   * @return    return value.  An reference to a IRoseUseCaseCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseUseCaseCollection getUseCases  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setUseCases. 
   *
   * @param     rhs An reference to a IRoseUseCaseCollection)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setUseCases  (
              IRoseUseCaseCollection rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getRootUseCaseCategory. 
   *
   * @return    return value.  An reference to a IRoseCategory
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseCategory getRootUseCaseCategory  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setRootUseCaseCategory. 
   *
   * @param     rhs An reference to a IRoseCategory)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setRootUseCaseCategory  (
              IRoseCategory rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getDefaultProperties. 
   *
   * @return    return value.  An reference to a IRoseDefaultModelProperties
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseDefaultModelProperties getDefaultProperties  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setDefaultProperties. 
   *
   * @param     rhs An reference to a IRoseDefaultModelProperties)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setDefaultProperties  (
              IRoseDefaultModelProperties rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getApplication. 
   *
   * @return    return value.  A reference to another Automation Object (IDispatch)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public Object getApplication  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setApplication. 
   *
   * @param     rhs A reference to another Automation Object (IDispatch))
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setApplication  (
              Object rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getModel. 
   *
   * @return    return value.  An reference to a IRoseModel
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseModel getModel  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setModel. 
   *
   * @param     rhs An reference to a IRoseModel)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setModel  (
              IRoseModel rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getLocalizedStereotype. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getLocalizedStereotype  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setLocalizedStereotype. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setLocalizedStereotype  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getDeploymentUnit. 
   *
   * @return    return value.  An reference to a IRoseDeploymentUnit
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseDeploymentUnit getDeploymentUnit  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setDeploymentUnit. 
   *
   * @param     rhs An reference to a IRoseDeploymentUnit)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setDeploymentUnit  (
              IRoseDeploymentUnit rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getDefaultLanguage. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getDefaultLanguage  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setDefaultLanguage. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setDefaultLanguage  (
              String rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getNotation. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public short getNotation  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setNotation. 
   *
   * @param     rhs The rhs)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setNotation  (
              short rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getStateMachineOwner. 
   *
   * @return    return value.  An reference to a IRoseStateMachineOwner
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseStateMachineOwner getStateMachineOwner  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setStateMachineOwner. 
   *
   * @param     rhs An reference to a IRoseStateMachineOwner)
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void setStateMachineOwner  (
              IRoseStateMachineOwner rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getUniqueID. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getUniqueID  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getCurrentPropertySetName. 
   *
   * @param     toolName The toolName (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getCurrentPropertySetName  (
              String toolName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * overrideProperty. 
   *
   * @param     theToolName The theToolName (in)
   * @param     thePropName The thePropName (in)
   * @param     theValue The theValue (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean overrideProperty  (
              String theToolName,
              String thePropName,
              String theValue) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * inheritProperty. 
   *
   * @param     theToolName The theToolName (in)
   * @param     thePropName The thePropName (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean inheritProperty  (
              String theToolName,
              String thePropName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getPropertyValue. 
   *
   * @param     theToolName The theToolName (in)
   * @param     thePropName The thePropName (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getPropertyValue  (
              String theToolName,
              String thePropName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getDefaultPropertyValue. 
   *
   * @param     theToolName The theToolName (in)
   * @param     thePropName The thePropName (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getDefaultPropertyValue  (
              String theToolName,
              String thePropName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * findProperty. 
   *
   * @param     theToolName The theToolName (in)
   * @param     thePropName The thePropName (in)
   * @return    return value.  An reference to a IRoseProperty
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseProperty findProperty  (
              String theToolName,
              String thePropName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getAllProperties. 
   *
   * @return    return value.  An reference to a IRosePropertyCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRosePropertyCollection getAllProperties  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getToolProperties. 
   *
   * @param     theToolName The theToolName (in)
   * @return    return value.  An reference to a IRosePropertyCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRosePropertyCollection getToolProperties  (
              String theToolName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isOverriddenProperty. 
   *
   * @param     theToolName The theToolName (in)
   * @param     thePropName The thePropName (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isOverriddenProperty  (
              String theToolName,
              String thePropName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isDefaultProperty. 
   *
   * @param     theToolName The theToolName (in)
   * @param     thePropName The thePropName (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isDefaultProperty  (
              String theToolName,
              String thePropName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * findDefaultProperty. 
   *
   * @param     theToolName The theToolName (in)
   * @param     thePropName The thePropName (in)
   * @return    return value.  An reference to a IRoseProperty
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseProperty findDefaultProperty  (
              String theToolName,
              String thePropName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * createProperty. 
   *
   * @param     theToolName The theToolName (in)
   * @param     thePropName The thePropName (in)
   * @param     theValue The theValue (in)
   * @param     theType The theType (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean createProperty  (
              String theToolName,
              String thePropName,
              String theValue,
              String theType) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getPropertyClassName. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getPropertyClassName  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getDefaultSetNames. 
   *
   * @param     toolName The toolName (in)
   * @return    return value.  An reference to a IRoseStringCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseStringCollection getDefaultSetNames  (
              String toolName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getToolNames. 
   *
   * @return    return value.  An reference to a IRoseStringCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseStringCollection getToolNames  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setCurrentPropertySetName. 
   *
   * @param     toolName The toolName (in)
   * @param     setName The setName (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean setCurrentPropertySetName  (
              String toolName,
              String setName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getRoseItem. 
   *
   * @return    return value.  An reference to a IRoseItem
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseItem getRoseItem  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * addExternalDocument. 
   *
   * @param     szName The szName (in)
   * @param     iType The iType (in)
   * @return    return value.  An reference to a IRoseExternalDocument
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseExternalDocument addExternalDocument  (
              String szName,
              short iType) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * deleteExternalDocument. 
   *
   * @param     pIDispatch An reference to a IRoseExternalDocument (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean deleteExternalDocument  (
              IRoseExternalDocument pIDispatch) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * openSpecification. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean openSpecification  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getAllAssociations. 
   *
   * @return    return value.  An reference to a IRoseAssociationCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseAssociationCollection getAllAssociations  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * addProcessor. 
   *
   * @param     pName The pName (in)
   * @return    return value.  An reference to a IRoseProcessor
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseProcessor addProcessor  (
              String pName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * deleteProcessor. 
   *
   * @param     pProcessor An reference to a IRoseProcessor (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean deleteProcessor  (
              IRoseProcessor pProcessor) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * addDevice. 
   *
   * @param     pName The pName (in)
   * @return    return value.  An reference to a IRoseDevice
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseDevice addDevice  (
              String pName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * deleteDevice. 
   *
   * @param     pDevice An reference to a IRoseDevice (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean deleteDevice  (
              IRoseDevice pDevice) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getSelectedClasses. 
   *
   * @return    return value.  An reference to a IRoseClassCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseClassCollection getSelectedClasses  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getSelectedCategories. 
   *
   * @return    return value.  An reference to a IRoseCategoryCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseCategoryCollection getSelectedCategories  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getSelectedModules. 
   *
   * @return    return value.  An reference to a IRoseModuleCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseModuleCollection getSelectedModules  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getSelectedSubsystems. 
   *
   * @return    return value.  An reference to a IRoseSubsystemCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseSubsystemCollection getSelectedSubsystems  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getAllClasses. 
   *
   * @return    return value.  An reference to a IRoseClassCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseClassCollection getAllClasses  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getAllCategories. 
   *
   * @return    return value.  An reference to a IRoseCategoryCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseCategoryCollection getAllCategories  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getAllModules. 
   *
   * @return    return value.  An reference to a IRoseModuleCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseModuleCollection getAllModules  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getAllSubsystems. 
   *
   * @return    return value.  An reference to a IRoseSubsystemCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseSubsystemCollection getAllSubsystems  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getAllProcessors. 
   *
   * @return    return value.  An reference to a IRoseProcessorCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseProcessorCollection getAllProcessors  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getAllDevices. 
   *
   * @return    return value.  An reference to a IRoseDeviceCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseDeviceCollection getAllDevices  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getSelectedUseCases. 
   *
   * @return    return value.  An reference to a IRoseUseCaseCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseUseCaseCollection getSelectedUseCases  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getAllUseCases. 
   *
   * @return    return value.  An reference to a IRoseUseCaseCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseUseCaseCollection getAllUseCases  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isRootPackage. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isRootPackage  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isControlled. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isControlled  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * control. 
   *
   * @param     path The path (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean control  (
              String path) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isLoaded. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isLoaded  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * load. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean load  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isModifiable. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isModifiable  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * unload. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean unload  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * modifiable. 
   *
   * @param     modifiable The modifiable (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean modifiable  (
              boolean modifiable) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getFileName. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getFileName  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * save. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean save  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * saveAs. 
   *
   * @param     path The path (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean saveAs  (
              String path) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * findItems. 
   *
   * @param     itemName The itemName (in)
   * @return    return value.  An reference to a IRoseItemCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseItemCollection findItems  (
              String itemName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * findItemWithID. 
   *
   * @param     uniqueID The uniqueID (in)
   * @return    return value.  An reference to a IRoseItem
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseItem findItemWithID  (
              String uniqueID) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * findClasses. 
   *
   * @param     className The className (in)
   * @return    return value.  An reference to a IRoseClassCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseClassCollection findClasses  (
              String className) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * findClassWithID. 
   *
   * @param     uniqueID The uniqueID (in)
   * @return    return value.  An reference to a IRoseClass
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseClass findClassWithID  (
              String uniqueID) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * findCategories. 
   *
   * @param     categoryName The categoryName (in)
   * @return    return value.  An reference to a IRoseCategoryCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseCategoryCollection findCategories  (
              String categoryName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * findCategoryWithID. 
   *
   * @param     uniqueID The uniqueID (in)
   * @return    return value.  An reference to a IRoseCategory
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseCategory findCategoryWithID  (
              String uniqueID) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getActiveDiagram. 
   *
   * @return    return value.  An reference to a IRoseDiagram
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseDiagram getActiveDiagram  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getQualifiedName. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String getQualifiedName  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isModified. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isModified  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * uncontrol. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean uncontrol  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * identifyClass. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public String identifyClass  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isClass. 
   *
   * @param     theClassName The theClassName (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isClass  (
              String theClassName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getSelectedItems. 
   *
   * @return    return value.  An reference to a IRoseItemCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseItemCollection getSelectedItems  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * refresh. 
   *
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void refresh  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getSubUnitItems. 
   *
   * @return    return value.  An reference to a IRoseControllableUnitCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseControllableUnitCollection getSubUnitItems  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * isLocked. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean isLocked  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * needsRefreshing. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean needsRefreshing  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getAllSubUnitItems. 
   *
   * @return    return value.  An reference to a IRoseControllableUnitCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseControllableUnitCollection getAllSubUnitItems  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * lock. 
   *
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void lock  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * unlock. 
   *
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void unlock  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * resolveReferences. 
   *
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public void resolveReferences  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * openCustomSpecification. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean openCustomSpecification  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getSelectedExternalDocuments. 
   *
   * @return    return value.  An reference to a IRoseExternalDocumentCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseExternalDocumentCollection getSelectedExternalDocuments  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * findDiagramWithID. 
   *
   * @param     uniqueID The uniqueID (in)
   * @return    return value.  An reference to a IRoseDiagram
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseDiagram findDiagramWithID  (
              String uniqueID) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * renderIconToClipboard. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean renderIconToClipboard  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getIconIndex. 
   *
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public short getIconIndex  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * loadControlledUnits. 
   *
   * @param     theControlledUnits An reference to a IRoseControllableUnitCollection (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean loadControlledUnits  (
              IRoseControllableUnitCollection theControlledUnits) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getSelectedDiagrams. 
   *
   * @return    return value.  An reference to a IRoseDiagramCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseDiagramCollection getSelectedDiagrams  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * zz_import. 
   *
   * @param     theName The theName (in)
   * @return    return value.  The return value
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public boolean zz_import  (
              String theName) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getAllClassesEx. 
   *
   * @param     recursive The recursive (in)
   * @param     nested The nested (in)
   * @return    return value.  An reference to a IRoseClassCollection
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseClassCollection getAllClassesEx  (
              boolean recursive,
              boolean nested) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * getContext. 
   *
   * @return    return value.  An reference to a IRoseItem
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseItem getContext  () throws java.io.IOException, com.linar.jintegra.AutomationException;


  // Constants to help J-Integra dynamically map DCOM invocations to
  // interface members.  Don't worry, you will never need to explicitly use these constants.
  int IIDe38942a0_8621_11cf_b3d4_00a0241db1d0 = 1;
  /** Dummy reference to interface proxy to make sure it gets compiled */
  int xxDummy = IRoseModelProxy.xxDummy;
  /** Used internally by J-Integra, please ignore */
  String IID = "00020400-0000-0000-C000-000000000046";
  String DISPID_100_GET_NAME = "getName";
  String DISPID_100_PUT_NAME = "setName";
  String DISPID_203_GET_NAME = "getDocumentation";
  String DISPID_203_PUT_NAME = "setDocumentation";
  String DISPID_212_GET_NAME = "getStereotype";
  String DISPID_212_PUT_NAME = "setStereotype";
  String DISPID_213_GET_NAME = "getExternalDocuments";
  String DISPID_213_PUT_NAME = "setExternalDocuments";
  String DISPID_417_GET_NAME = "getRootCategory";
  String DISPID_417_PUT_NAME = "setRootCategory";
  String DISPID_418_GET_NAME = "getRootSubsystem";
  String DISPID_418_PUT_NAME = "setRootSubsystem";
  String DISPID_420_GET_NAME = "getDeploymentDiagram";
  String DISPID_420_PUT_NAME = "setDeploymentDiagram";
  String DISPID_421_GET_NAME = "getUseCases";
  String DISPID_421_PUT_NAME = "setUseCases";
  String DISPID_422_GET_NAME = "getRootUseCaseCategory";
  String DISPID_422_PUT_NAME = "setRootUseCaseCategory";
  String DISPID_12471_GET_NAME = "getDefaultProperties";
  String DISPID_12471_PUT_NAME = "setDefaultProperties";
  String DISPID_12523_GET_NAME = "getApplication";
  String DISPID_12523_PUT_NAME = "setApplication";
  String DISPID_12524_GET_NAME = "getModel";
  String DISPID_12524_PUT_NAME = "setModel";
  String DISPID_12554_GET_NAME = "getLocalizedStereotype";
  String DISPID_12554_PUT_NAME = "setLocalizedStereotype";
  String DISPID_12676_GET_NAME = "getDeploymentUnit";
  String DISPID_12676_PUT_NAME = "setDeploymentUnit";
  String DISPID_12680_GET_NAME = "getDefaultLanguage";
  String DISPID_12680_PUT_NAME = "setDefaultLanguage";
  String DISPID_12691_GET_NAME = "getNotation";
  String DISPID_12691_PUT_NAME = "setNotation";
  String DISPID_12790_GET_NAME = "getStateMachineOwner";
  String DISPID_12790_PUT_NAME = "setStateMachineOwner";
  String DISPID_102_NAME = "getUniqueID";
  String DISPID_109_NAME = "getCurrentPropertySetName";
  String DISPID_110_NAME = "overrideProperty";
  String DISPID_111_NAME = "inheritProperty";
  String DISPID_119_NAME = "getPropertyValue";
  String DISPID_120_NAME = "getDefaultPropertyValue";
  String DISPID_121_NAME = "findProperty";
  String DISPID_122_NAME = "getAllProperties";
  String DISPID_123_NAME = "getToolProperties";
  String DISPID_124_NAME = "isOverriddenProperty";
  String DISPID_125_NAME = "isDefaultProperty";
  String DISPID_126_NAME = "findDefaultProperty";
  String DISPID_127_NAME = "createProperty";
  String DISPID_128_NAME = "getPropertyClassName";
  String DISPID_129_NAME = "getDefaultSetNames";
  String DISPID_130_NAME = "getToolNames";
  String DISPID_131_NAME = "setCurrentPropertySetName";
  String DISPID_207_NAME = "getRoseItem";
  String DISPID_214_NAME = "addExternalDocument";
  String DISPID_215_NAME = "deleteExternalDocument";
  String DISPID_216_NAME = "openSpecification";
  String DISPID_412_NAME = "getAllAssociations";
  String DISPID_424_NAME = "addProcessor";
  String DISPID_425_NAME = "deleteProcessor";
  String DISPID_426_NAME = "addDevice";
  String DISPID_427_NAME = "deleteDevice";
  String DISPID_428_NAME = "getSelectedClasses";
  String DISPID_429_NAME = "getSelectedCategories";
  String DISPID_430_NAME = "getSelectedModules";
  String DISPID_431_NAME = "getSelectedSubsystems";
  String DISPID_432_NAME = "getAllClasses";
  String DISPID_433_NAME = "getAllCategories";
  String DISPID_434_NAME = "getAllModules";
  String DISPID_435_NAME = "getAllSubsystems";
  String DISPID_436_NAME = "getAllProcessors";
  String DISPID_437_NAME = "getAllDevices";
  String DISPID_438_NAME = "getSelectedUseCases";
  String DISPID_439_NAME = "getAllUseCases";
  String DISPID_621_NAME = "isRootPackage";
  String DISPID_12433_NAME = "isControlled";
  String DISPID_12434_NAME = "control";
  String DISPID_12435_NAME = "isLoaded";
  String DISPID_12436_NAME = "load";
  String DISPID_12438_NAME = "isModifiable";
  String DISPID_12439_NAME = "unload";
  String DISPID_12440_NAME = "modifiable";
  String DISPID_12441_NAME = "getFileName";
  String DISPID_12442_NAME = "save";
  String DISPID_12443_NAME = "saveAs";
  String DISPID_12472_NAME = "findItems";
  String DISPID_12473_NAME = "findItemWithID";
  String DISPID_12474_NAME = "findClasses";
  String DISPID_12475_NAME = "findClassWithID";
  String DISPID_12476_NAME = "findCategories";
  String DISPID_12477_NAME = "findCategoryWithID";
  String DISPID_12527_NAME = "getActiveDiagram";
  String DISPID_12555_NAME = "getQualifiedName";
  String DISPID_12654_NAME = "isModified";
  String DISPID_12655_NAME = "uncontrol";
  String DISPID_12668_NAME = "identifyClass";
  String DISPID_12669_NAME = "isClass";
  String DISPID_12681_NAME = "getSelectedItems";
  String DISPID_12701_NAME = "refresh";
  String DISPID_12702_NAME = "getSubUnitItems";
  String DISPID_12703_NAME = "isLocked";
  String DISPID_12704_NAME = "needsRefreshing";
  String DISPID_12707_NAME = "getAllSubUnitItems";
  String DISPID_12708_NAME = "lock";
  String DISPID_12709_NAME = "unlock";
  String DISPID_12710_NAME = "resolveReferences";
  String DISPID_12728_NAME = "openCustomSpecification";
  String DISPID_12788_NAME = "getSelectedExternalDocuments";
  String DISPID_12817_NAME = "findDiagramWithID";
  String DISPID_12820_NAME = "renderIconToClipboard";
  String DISPID_12824_NAME = "getIconIndex";
  String DISPID_12828_NAME = "loadControlledUnits";
  String DISPID_12831_NAME = "getSelectedDiagrams";
  String DISPID_12835_NAME = "zz_import";
  String DISPID_12858_NAME = "getAllClassesEx";
  String DISPID_12872_NAME = "getContext";
}
