# IRsObjectTypeDetector Interface Reference

Inherits IUnknown.

List of all members.

## Public Member Functions
HRESULT | GetObjectType ([in] IRsNode *pNode,[out, retval] GUID *pgType)
HRESULT | RegisterDetector ([in] IRsUnknownObjectTypeDetector *pDetector)
HRESULT | UnRegisterDetector ([in] IRsUnknownObjectTypeDetector *pDetector)

## Detailed Description

Object type detector singleton class.

During package initialization register object type detectors you want to support. Detector classes should be unregistered with package uninitialization, otherwise behavior is undetermined.

## Member Function Documentation

HRESULT IRsObjectTypeDetector::GetObjectType | ( | [in] IRsNode * | pNode,
|  | [out, retval] GUID * | pgType |
| ) |  |  |

Get object type. Function detects object type by calling all registred object type detectors.

Parameters:

  | pNode | [in] Node to test.

Returns:
  pgType [out,retval] Object type guid.

  standard HRESULT processing can be applied to returned value.

HRESULT IRsObjectTypeDetector::RegisterDetector | ( | [in] IRsUnknownObjectTypeDetector * | pDetector | ) |

Register object type detector.

Parameters:

  | pDetector | [in] Pointer to object type detector class.

Returns:
  standard HRESULT processing can be applied to returned value.

HRESULT IRsObjectTypeDetector::UnRegisterDetector | ( | [in] IRsUnknownObjectTypeDetector * | pDetector | ) |

Unregister object type detector.

Parameters:

  | pDetector | [in] Pointer to object type detector class.

Returns:
  standard HRESULT processing can be applied to returned value.