Objective Views : Chapter 6 Key Architectural Concepts : Interfaces in Objective Views
Interfaces in Objective Views
Objective Views separates certain key pieces of functionality into interfaces in order to increase the flexibility and reduce coupling. All interfaces in Objective Views contain the prefix IOD and are derived from the base interface IODObject. The IODObject interface mixes the IQueryGuid and IRefCount interfaces. Interfaces derived from IODObject are associated with a GUID. The following table shows a list of interfaces and their associated GUIDs.
Table 4 – Interfaces and their associated GUIDs
Interface Name
GUID
IODGraph
IID_IODGraph
IODNode
IID_IODNode
IODEdge
IID_IODEdge
IODPropertyContainer
IID_IODPropertyContainer
All GUIDs are defined in the header file <stingray-installdir>\Include\Views\OdGuids.h. This file must be included in your source code in order to retrieve one of these interfaces using QueryGuid(). If your application dynamically links to the Objective Views library, you must also make sure that the GUIDs are defined in one of your application modules by including initguid.h just before OdGuids.h. If you forget to include initguid.h and your application uses the DLL version of Objective Views, references to the GUID symbols will be unresolved at link-time.