package rose;

/**
 * COM Interface 'IRoseAddInCollection'. Generated 31/01/2002 11:44:14 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 IRoseAddInCollection extends java.io.Serializable {
  /**
   * getCount. 
   *
   * @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 getCount  () throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * setCount. 
   *
   * @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 setCount  (
              short rhs) throws java.io.IOException, com.linar.jintegra.AutomationException;

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

  /**
   * exists. 
   *
   * @param     pObject An reference to a IRoseAddIn (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 exists  (
              IRoseAddIn pObject) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * findFirst. 
   *
   * @param     name The name (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 short findFirst  (
              String name) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * findNext. 
   *
   * @param     iCurID The iCurID (in)
   * @param     name The name (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 short findNext  (
              short iCurID,
              String name) throws java.io.IOException, com.linar.jintegra.AutomationException;

  /**
   * indexOf. 
   *
   * @param     theObject An reference to a IRoseAddIn (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 short indexOf  (
              IRoseAddIn theObject) throws java.io.IOException, com.linar.jintegra.AutomationException;

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

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

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

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

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

  /**
   * getWithUniqueID. 
   *
   * @param     uniqueID The uniqueID (in)
   * @return    return value.  An reference to a IRoseAddIn
   * @exception java.io.IOException If there are communications problems.
   * @exception com.linar.jintegra.AutomationException If the remote server throws an exception.
   */
  public IRoseAddIn getWithUniqueID  (
              String uniqueID) 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 IIDc87d2bc1_352a_11d1_883b_3c8b00c10000 = 1;
  /** Dummy reference to interface proxy to make sure it gets compiled */
  int xxDummy = IRoseAddInCollectionProxy.xxDummy;
  /** Used internally by J-Integra, please ignore */
  String IID = "00020400-0000-0000-C000-000000000046";
  String DISPID_202_GET_NAME = "getCount";
  String DISPID_202_PUT_NAME = "setCount";
  String DISPID_203_NAME = "getAt";
  String DISPID_204_NAME = "exists";
  String DISPID_205_NAME = "findFirst";
  String DISPID_206_NAME = "findNext";
  String DISPID_207_NAME = "indexOf";
  String DISPID_208_NAME = "add";
  String DISPID_209_NAME = "addCollection";
  String DISPID_210_NAME = "remove";
  String DISPID_211_NAME = "removeAll";
  String DISPID_212_NAME = "getFirst";
  String DISPID_213_NAME = "getWithUniqueID";
}
