VCCodeClass Interface

An object providing access to any class element collected in a VCCodeModel object.

Namespace:  Microsoft.VisualStudio.VCCodeModel
Assembly:  Microsoft.VisualStudio.VCCodeModel (in Microsoft.VisualStudio.VCCodeModel.dll)

Syntax

'Declaration
<GuidAttribute("CAA1BBC0-A35F-4E2E-96CE-1361F4B4FA72")> _
Public Interface VCCodeClass
[GuidAttribute("CAA1BBC0-A35F-4E2E-96CE-1361F4B4FA72")]
public interface VCCodeClass
[GuidAttribute(L"CAA1BBC0-A35F-4E2E-96CE-1361F4B4FA72")]
public interface class VCCodeClass
[<GuidAttribute("CAA1BBC0-A35F-4E2E-96CE-1361F4B4FA72")>]
type VCCodeClass =  interface end
public interface VCCodeClass

The VCCodeClass type exposes the following members.

Properties

  Name Description
Public property Access Sets or gets the access attributes of this item.
Public property Attributes Gets a collection of all of the attributes for the parent object.
Public property Bases Gets a collection of classes from which this item derives.
Public property BodyText Gets or sets the body text of the parent object.
Public property Children Gets a collection of objects contained within this code construct.
Public property Classes Gets a collection of classes for the parent object.
Public property CodeModel Gets the VCCodeModel object for the project.
Public property Collection Gets the collection containing the object supporting this property or contained within this code construct.
Public property Comment Gets or sets the comment associated with the VCCodeClass.
Public property DataTypeKind
Public property DeclarationText Gets or sets the declaration of the parent object.
Public property DerivedTypes Gets a collection of objects derived from this object.
Public property DisplayName Gets the full name of the parent object.
Public property DocComment Gets or sets the document comment for the current code model element.
Public property DTE Gets the top-level extensibility object.
Public property EndPoint Gets the edit point that is the location of the end of the code item.
Public property EndPointOf Gets the end point of the parent object.
Public property Enums Gets a collection of enumerations for the parent object.
Public property Events Gets a collection of events for the parent object.
Public property Extender Gets the requested Extender object if it is available for this object.
Public property ExtenderCATID Gets the Extender category ID (CATID) for the object.
Public property ExtenderNames Gets a list of available Extenders for the object.
Public property File Gets the file in which the VCCodeClass is declared.
Public property FullName Gets the full path and name of the object's file.
Public property Functions Gets a collection of functions for the parent object.
Public property ImplementedInterfaces Gets a collection of interfaces implemented by this object.
Public property InfoLocation Gets the capabilities of the code model.
Public property IsAbstract Gets or sets a value indicating whether or not an item is declared as abstract.
Public property IsCaseSensitive Gets a value indicating whether a code element is case-sensitive.
Public property IsCodeType Gets a value indicating whether a CodeType object can be obtained from this object.
Public property IsDerivedFrom Gets a value indicating whether an object has another object as a base.
Public property IsFinal
Public property IsInjected Gets a value indicating whether a code element has been injected by an attribute or macro expansion.
Public property IsManaged Gets or sets a value indicating whether the VCCodeClass object is managed.
Public property IsReadOnly Gets a value indicating whether the file containing the VCCodeClass object is read-only.
Public property IsSealed Gets or sets a value indicating whether the __sealed keyword is applied to the parent object.
Public property IsTemplate Gets a value indicating whether the VCCodeClass object is a template.
Public property IsValue Gets or sets a value indicating whether the __value keyword is applied to the VCCodeClass object.
Public property IsZombie Gets a value indicating whether the VCCodeClass object exists.
Public property Kind Gets an enumeration indicating the type of object.
Public property Language Gets the programming language used to author the code.
Public property Location Gets the location of the VCCodeClass object declaration.
Public property Maps Gets the collection of maps for the VCCodeClass object.
Public property Members Gets a collection of items contained by this element.
Public property Name Gets or sets the name of the object.
Public property Namespace Gets an object defining the parent namespace.
Public property Parent Gets the immediate parent object of a given object.
Public property Parts
Public property Picture Gets a picture automation object to be used as an icon in the user interface.
Public property Project Gets the Project associated with the object.
Public property ProjectItem Gets the ProjectItem object associated with the given object.
Public property Properties Gets the collection of properties for the parent object.
Public property References Not currently implemented.
Public property StartPoint Gets a TextPoint object that defines the beginning of the code item.
Public property StartPointOf Returns the start point of the parent object.
Public property Structs Gets the collection of structure elements for the VCCodeClass object.
Public property TemplateParameters Gets a collection of parameters contained in a class template.
Public property Templatizations Infrastructure. Microsoft Internal Use Only.
Public property Typedefs Gets the collection of VCCodeTypedef elements for the parent object.
Public property Unions Gets the collection of VCCodeUnion elements for the VCCodeClass object.
Public property UsingAliases
Public property Variables Gets the collection of variables for the VCCodeClass object.

Top

Methods

  Name Description
Public method AddAttribute Creates a new attribute code construct and inserts the code in the correct location.
Public method AddBase Adds an item to the list of inherited objects.
Public method AddClass Creates a new class code construct and inserts the code in the correct location.
Public method AddDelegate Creates a new delegate code construct and inserts the code in the correct location.
Public method AddEnum Creates a new enumeration code construct and inserts the code in the correct location.
Public method AddEvent Infrastructure. Microsoft Internal Use Only.
Public method AddFunction Creates a new function code construct and inserts the code in the correct location.
Public method AddImplementedInterface Adds an interface to the list of inherited objects.
Public method AddMap Adds a map entry to the parent object.
Public method AddProperty Creates a new property code construct and inserts the code in the correct location.
Public method AddStruct Creates a new structure code construct and inserts the code in the correct location.
Public method AddTemplateParameter Adds a parameter to a template definition.
Public method AddTypedef Adds a Typedef statement to the parent object.
Public method AddUnion Adds a union statement to the parent object.
Public method AddUsingAlias
Public method AddVariable Creates a new variable code construct and inserts the code in the correct location.
Public method GetEndPoint Returns a TextPoint object that marks the end of the code element definition.
Public method GetStartPoint Returns a TextPoint object that defines the beginning of the code element definition.
Public method IsSelf Determines if the specified code element is the same as the parent code element.
Public method RemoveBase Removes an object from the list of bases.
Public method RemoveInterface Removes an interface from the list of implemented interfaces.
Public method RemoveMember Removes a member code construct.
Public method RemoveTemplateParameter Removes a parameter from a template definition.
Public method ValidateMember Validates that the proposed name is a valid C++ name for the kind given in the context of the parent object.
Public method ValidateMemberName

Top

Remarks

The VCCodeClass object provides code model functionality to existing Visual C++ IDE solutions at the class level. Primarily, this object is used to modify any class element accessible within a project.

Note

A large part of the functionality of this object is provided by the Visual Studio CodeClass object. For more information, see CodeClass object.

See How to: Compile Example Code for Visual C++ Code Model Extensibility for information on how to compile and run this sample.

Examples

Sub GetClass()
    Dim vcCM as VCCodeModel
    Dim vcClass as VCCodeClass
    vcCM = DTE.Solution.Item(1).CodeModel
    vcClass = vcCM.Classes.Find("CAboutDlg")
End Sub

See Also

Reference

Microsoft.VisualStudio.VCCodeModel Namespace