MOA Developer's Guide
MOA Interfaces | MOA Methods | MOA Types and Misc API

IMoaInitFromDict


Interface ID: IID_IMoaInitFromDict
Pointer type: PIMoaInitFromDict
Inheritance: IMoaUnknown
Header file: moastdif.h

Description


This optional Xtra interface is implemented by an Xtra for use in initializing classes and interfaces from cached information.

Xtras can place initialization information in the cache by implementing the IMoaRegister interface. Each class/interface combination implemented by an Xtra must be registered by calling the AddRegistryEntry() method of IMoaCache. Through that method, a registry dictionary is provided to the Xtra for use in adding other information from the cache. The Xtra can store any information it needs in the registry dictionary, including information to be used by the when the specific interface and class are initialized.

By implementing this interface, the class/interface combination can get access to its registry dictionary at initialization time, enabling it to perform custom initialization based on values it has previously cached.

Methods

InitFromDict()

InitFromDict()

Syntax

InitFromDict(PIMoaInitFromDictThis,

PIMoaRegistryEntryDictpRegistryDict)

Parameters

This
Pointer to the IMoaInitFromDict interface

pRegistryDict
PIMoaRegistryEntryDictRegistry dictionary for a specific class and interface

Returns

MoaError

Description


This method is called automatically whenever MOA initializes an instance of an Xtra class and interface. Xtra classes can implement this method to perform any custom initialization they require based on information previously cached in the registry dictionary pRegistryDic.

When an application creates an instance of a class by calling either GetInstanceFromRegistry() or CreateNewInstanceFromRegistry(), MOA calls QueryInterface() to see if the class implements the IMoaInitFromDict interface. If so, MOA calls this method, passing it the registry dictionary for the class and interface being instantiated.

Copyright © 1995-2007 Adobe Macromedia Software LLC, Inc.