# FdoClassDefinition Class Reference

`#include <ClassDefinition.h>`

Inheritance diagram for FdoClassDefinition:

[legend]

List of all members.

## Detailed Description

FdoClassDefinition is an abstract class that derives from FdoSchemaElement. FdoClassDefinition is a base class for all concrete class types (e.g., FdoClass, FdoFeatureClass) in the Schema package.

Definition at line 43 of file ClassDefinition.h.

## Public Member Functions
FDO_API FdoClassDefinition * | GetBaseClass ()
| Gets the base FdoClassDefinition this class is derived from.
FDO_API FdoReadOnlyDataPropertyDefinitionCollection * | GetBaseIdentityProperties ()
| Returns an FdoReadOnlyDataPropertyDefinitionCollection containing the identity properties for the base class.
FDO_API FdoReadOnlyPropertyDefinitionCollection * | GetBaseProperties ()
| Returns an FdoReadOnlyPropertyDefinitionCollection containing the properties defined by base classes or by the concrete class type, itself. This collection is only populated when the FdoClassDefinition is returned by the DescribeSchema command.
FDO_API FdoClassCapabilities * | GetCapabilities ()
| Gets the class-specific capabilities for this class.
virtual FDO_API FdoClassType | GetClassType ()
| This is an abstract operation that must be implemented by derived classes to return the concrete class type.
FDO_API FdoDataPropertyDefinitionCollection * | GetIdentityProperties ()
| Returns an FdoDataPropertyDefinitionCollection containing references to the data properties that can be used to uniquely identify instances of the class. The contained properties must already be defined in either the properties or baseProperties collection. If GetBaseClass() returns non null then this collection must be empty.
FDO_API bool | GetIsAbstract ()
| Gets the abstraction state of the FdoClassDefinition. Classes marked as abstract cannot be created via FDO commands and cannot be used as properties of another class.
FDO_API bool | GetIsComputed ()
| Gets the computed state of the FdoClassDefinition. Computed classes cannot be made persistent or added to FDO schema. The computed classes are used as a transient classes that can be returned by a feature or data reader. They describe the result of a select expression, select function and select distinct.
FDO_API FdoPropertyDefinitionCollection * | GetProperties ()
| Returns an FdoPropertyCollection containing the FdoDataProperties, FdoClassProperties, and FdoGeometricProperties defined for this class.
virtual FDO_API FdoStringP | GetQualifiedName ()
| Gets the fully qualified name of this class.
FDO_API FdoUniqueConstraintCollection * | GetUniqueConstraints ()
| Gets a FdoUniqueConstraintCollection containing all unique constraints applied to properties of this class. The contained properties must already be defined in either the properties or baseProperties collections.
FDO_API void | SetBaseClass (FdoClassDefinition *value)
| Sets the base FdoClassDefinition this class is derived from.
FDO_API void | SetBaseProperties (FdoPropertyDefinitionCollection *value)
| Sets the base properties of this class. All elements of the input collection must also be properties of the class.
FDO_API void | SetCapabilities (FdoClassCapabilities *capabilities)
| Sets the class-specific capabilities for this class. This function must only be called by an FDO Provider. It would be typically called by the DescribeSchema command implementation.
FDO_API void | SetIsAbstract (bool value)
| Sets the abstraction state of the FdoClassDefinition. Classes marked as abstract cannot be created via FDO commands and cannot be used as properties of another class.
FDO_API void | SetIsComputed (bool value)
| Sets the computed state of the FdoClassDefinition. This is an internal method that can only be called by providers. Application should not use this method.
## Friends
class | FdoObjectPropertyDefinition
class | FdoRelation
class | FdoRelationEnd
class | FdoSchemaCollection

The documentation for this class was generated from the following file:

- ClassDefinition.h