au.com.swz.jatlom
Class ITypeInfo

java.lang.Object
  extended by au.com.swz.jatlom.ITypeInfo

public class ITypeInfo
extends java.lang.Object

This class provides access to the following:

Author:
Mark Richter

Method Summary
 TypeLibAttributes getContainingTypeLibAttributes()
          Returns the containing type library from which this type originated.
 java.lang.String getDocumentation()
          Returns the documentation string for this type.
 ITypeInfo getDualInterfaceType()
          Returns the dual interface that this type implements.
 FuncDesc getFuncDesc(int index)
          Returns reference to the details of the function at the specified index.
 int getFunctionCount()
          Returns the number of functions in this type.
 int getFunctionIndex(FuncDesc funcDesc)
          Returns the index of the specified funtion within this type.
 java.lang.String getGUID()
          Provides the GUID of the type information or null if this type has no GUID.
 long getHelpContext()
          Returns the Help context identifier (ID) associated with this type.
 java.lang.String getHelpFile()
          Provides the fully qualified name of the Help file for this type.
 ImplType getImplType(int index)
          Provides the details of an interface implemented by this type.
 int getInterfaceImplCount()
          Returns the number of implemented interfaces in this type.
 java.lang.String getName()
          Provides the name of this type.
 java.lang.String getProgID()
          Provides the ProgID of this type or null if this class does not have a ProgID.
 TypeDesc getTypeDescAlias()
          If getTypeKind() == TKIND_ALIAS, this method returns returns the type for which this type is an alias.
 TypeKind getTypeKind()
          Retrieves a TypeAttr that contains the attributes of the type description.
 VarDesc getVarDesc(int index)
          Returns reference to the details of the variable at the specified index.
 int getVariableCount()
          Returns the Number of variables/data members in this type.
 int getVariableIndex(VarDesc varDesc)
          Returns the index of the specified variable within this type.
 boolean isAggregatable()
          Determines if this type supports aggregation.
 boolean isAppObject()
          This can be used on types with a TypeKind = TKIND_COCLASS.
 boolean isControl()
          Determines if this type is a control from which other types will be derived, and should not be displayed to users.
 boolean isCreateable()
          Determines if instances of this type can be created with the CreateInstance COM method.
 boolean isDispatchable()
          Indicates that the interface derives from IDispatch, either directly or indirectly.
 boolean isDual()
          Determines if the interface supplies both IDispatch and VTBL binding.
 boolean isEventsInterface()
          Determines if this type is an interface used for events.
 boolean isHidden()
          Determines if the type is hidden and therefore should not be displayed to type library browsers.
 boolean isImported()
          Deteremines if this type has been imported from a different type library to the primary one.
 boolean isLicensed()
          Determines if the type is licensed.
 boolean isNonExtensible()
          Determines if the interface cannot add members at run time.
 boolean isOleAutomation()
          Determine if this type is fully compatible with Automation, including VTBL binding support.
 boolean isPredefined()
          Determines if this type is predefined.
 boolean isReplaceable()
          Deteremines if this type supports IConnectionPointWithDefault, and has default behaviors.
 boolean isRestricted()
          Determines if this type is restricted.
 boolean isReverseBind()
          Determines if the base interfaces should be checked for name resolution before checking children, which is the reverse of the default behavior.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Method Detail

getTypeKind

public TypeKind getTypeKind()
Retrieves a TypeAttr that contains the attributes of the type description.

Returns:
a TypeAttr that contains the attributes of the type description.

getTypeDescAlias

public TypeDesc getTypeDescAlias()
If getTypeKind() == TKIND_ALIAS, this method returns returns the type for which this type is an alias. If getTypeKind() != TKIND_ALIAS then the return for this method is undefined.

Returns:
the type for which this type is an alias

getFunctionCount

public int getFunctionCount()
Returns the number of functions in this type.

Returns:
the number of functions in this type.

getVariableCount

public int getVariableCount()
Returns the Number of variables/data members in this type.

Returns:
the Number of variables/data members in this type.

getVarDesc

public VarDesc getVarDesc(int index)
Returns reference to the details of the variable at the specified index.

Parameters:
index - the index of the variable to return.
Returns:
a VarDesc that contains the details of the variable at the specified index.

getFuncDesc

public FuncDesc getFuncDesc(int index)
Returns reference to the details of the function at the specified index.

Parameters:
index - the index of the function to return.
Returns:
a FuncDesc that contains the details of the function at the specified index.

getInterfaceImplCount

public int getInterfaceImplCount()
Returns the number of implemented interfaces in this type.

Returns:
the number of implemented interfaces in this type.

getImplType

public ImplType getImplType(int index)
Provides the details of an interface implemented by this type.

Parameters:
index - the index of the interface implementation to return.
Returns:
the ImplType describing the interface.

getDocumentation

public java.lang.String getDocumentation()
Returns the documentation string for this type. This can be null if the type does not specifiy any documentation.

Returns:
the documentation string for this type.

getHelpContext

public long getHelpContext()
Returns the Help context identifier (ID) associated with this type.

Returns:
the Help context identifier (ID) associated with this type.

getHelpFile

public java.lang.String getHelpFile()
Provides the fully qualified name of the Help file for this type. This value can be null if this type does not define a help file.

Returns:
the fully qualified name of the Help file for this type.

getName

public java.lang.String getName()
Provides the name of this type.

Returns:
the name of this type.

getGUID

public java.lang.String getGUID()
Provides the GUID of the type information or null if this type has no GUID.

Returns:
the GUID of the type information.

getProgID

public java.lang.String getProgID()
Provides the ProgID of this type or null if this class does not have a ProgID.

Returns:
the ProgID of this type.

isAppObject

public boolean isAppObject()
This can be used on types with a TypeKind = TKIND_COCLASS. It determines if this type description describes an Application object.

Returns:
true if this type description describes an Application object or false otherwise.

isControl

public boolean isControl()
Determines if this type is a control from which other types will be derived, and should not be displayed to users.

Returns:
true if this type is a control .

isCreateable

public boolean isCreateable()
Determines if instances of this type can be created with the CreateInstance COM method.

Returns:
true if instances of this type can be created.

isEventsInterface

public boolean isEventsInterface()
Determines if this type is an interface used for events. This is true if this interface is implemented by a CoClass as a source.

Returns:
true if this type is an interface used for events.

isAggregatable

public boolean isAggregatable()
Determines if this type supports aggregation.

Returns:
true if this type supports aggregation.

isDispatchable

public boolean isDispatchable()
Indicates that the interface derives from IDispatch, either directly or indirectly. This flag is computed. There is no Object Description Language for the flag.

Returns:
true if this type derives from IDispatch.

isDual

public boolean isDual()
Determines if the interface supplies both IDispatch and VTBL binding.

Returns:
true if the interface supplies both IDispatch and VTBL binding.

isHidden

public boolean isHidden()
Determines if the type is hidden and therefore should not be displayed to type library browsers.

Returns:
true if the type is hidden should not be displayed to browsers.

isLicensed

public boolean isLicensed()
Determines if the type is licensed.

Returns:
true if the type is licensed.

isNonExtensible

public boolean isNonExtensible()
Determines if the interface cannot add members at run time.

Returns:
true if the interface CANNOT add members at run time.

isOleAutomation

public boolean isOleAutomation()
Determine if this type is fully compatible with Automation, including VTBL binding support. Setting dual on an interface sets this flag in addition to TYPEFLAG_FDUAL. Not allowed on dispinterfaces.

Returns:
true if this type is fully compatible with Automation.

isPredefined

public boolean isPredefined()
Determines if this type is predefined. The client application should automatically create a single instance of the object that has this attribute. The name of the variable that points to the object is the same as the class name of the object.

Returns:
true if this type is predefined.

isRestricted

public boolean isRestricted()
Determines if this type is restricted. Restricted types should not be accessible from macro languages. This flag is intended for system-level types or types that type browsers should not display.

Returns:
true if this type is restricted.

isReplaceable

public boolean isReplaceable()
Deteremines if this type supports IConnectionPointWithDefault, and has default behaviors.

Returns:
true if this type supports IConnectionPointWithDefault, and has default behaviors.

isReverseBind

public boolean isReverseBind()
Determines if the base interfaces should be checked for name resolution before checking children, which is the reverse of the default behavior.

Returns:
true if this type is a reverse bind.

isImported

public boolean isImported()
Deteremines if this type has been imported from a different type library to the primary one.

Returns:
true if this is an imported type.

getDualInterfaceType

public ITypeInfo getDualInterfaceType()
Returns the dual interface that this type implements. If this is not a dual interface then this method returns null. Use isDual to check if this type is a dual interface.

Returns:
the dual interface that this type implements or null if this type does not implement a dual interface.

getContainingTypeLibAttributes

public TypeLibAttributes getContainingTypeLibAttributes()
Returns the containing type library from which this type originated. If loadImported flag was not true on the loadTypeLib call that created this object and this type is imported from a different type library then the value returned from this method will be null.

Returns:
the containing type library from which this type originated.

getFunctionIndex

public int getFunctionIndex(FuncDesc funcDesc)
Returns the index of the specified funtion within this type. This method can be used to determine if this type contains the specified function. This is determined as per the contract of the FuncDesc.equals(FuncDesc) method.

Parameters:
funcDesc - the function to determine if this type contains.
Returns:
the integer index of this function or -1 if this type does not contain the specified function.

getVariableIndex

public int getVariableIndex(VarDesc varDesc)
Returns the index of the specified variable within this type. This method can be used to determine if this type contains the specified variable. This is determined as per the contract of the VarDesc.equals(VarDesc) method.

Parameters:
varDesc - the variable to determine if this type contains.
Returns:
the integer index of this variable or -1 if this type does not contain the specified variable.