|
Custom Platform Support Development Kit
1.3
|
This file contains the macros used in FCM. More...
#include "FCMPreConfig.h"#include "FCMPostConfig.h"Go to the source code of this file.
Namespaces | |
| FCM | |
| The definitions contained in this namespace define a framework called Flash Component Model (FCM), which is responsible for plug-in management. The FCM framework manages loading, unloading and registration of the plug-in. It also manages service instantiation, object instantiation and object lifetime management. | |
Macros | |
| #define | FCM_VERSION_MAJOR 0x01 |
| Major version of the framework. | |
| #define | FCM_VERSION_MINOR 0x03 |
| Minor version of the framework. | |
| #define | FCM_VERSION_MAINTENANCE 0x00 |
| Maintenance number of the framework. | |
| #define | FCM_VERSION_BUILD 0x00 |
| Build number of the framework. | |
| #define | FCM_VERSION |
| Complete version of the framework. More... | |
| #define | DEFINE_FCMIID |
| Defines interface with name name and ID whose textual representation is l - w1 - w2 - b1 b2 - b3 b4 b5 b6 b7 b8. More... | |
| #define | IID(ifx) IID_##ifx |
| Utility macro to define interface ID easily. | |
| #define | _FCM_SIMPLEMAPENTRY ((_FCM_CREATORARGFUNC*)0) |
| This macro makes debugging asserts easier. | |
| #define | FORWARD_DECLARE_INTERFACE(ifx) |
| Used to forward declare an interface ifx. More... | |
| #define | BEGIN_DECLARE_INTERFACE_COMMON(ifx, iid) |
| Used to begin any interface ifx with ID iid. More... | |
| #define | BEGIN_DECLARE_INTERFACE_INHERIT(ifx, iid, baseifx) |
| Used to begin the interface ifx with ID iid , which inherits from baseifx. More... | |
| #define | BEGIN_DECLARE_INTERFACE(ifx, iid) BEGIN_DECLARE_INTERFACE_INHERIT(ifx, iid, FCM::IFCMUnknown); |
| Used to begin the interface ifx with ID iid, which inherits from IFCMUnknown. | |
| #define | BEGIN_DECLARE_BASE_INTERFACE(ifx, iid) |
| Used to begin the interface ifx with ID iid, which inherits from IFCMUnknown. More... | |
| #define | END_DECLARE_INTERFACE }; |
| Ends an interface. | |
| #define | _FCMCALL __stdcall |
| Defines calling convention for interface methods. | |
| #define | FCM_ADDREF(intPtr) if(intPtr){(intPtr)->AddRef();} |
| If intPtr exists, increment its reference count. | |
| #define | FCM_RELEASE(intPtr) if(intPtr){(intPtr)->Release();(intPtr)=0;} |
| If intPtr exists, decrement its reference count. | |
| #define | _FCM_PACKING 1 |
| Used for internal purpose. | |
| #define | offsetofclass(base, derived) ((FCM::S_Int64)(static_cast<base*>((derived*)_FCM_PACKING))-_FCM_PACKING) |
| Utility macro to get offset of a derived class. Used for internal purposes. | |
| #define | offsetofclasscustom(base, custom, derived) ((FCM::S_Int64)(static_cast<base*>((custom*)((derived*)_FCM_PACKING)))-_FCM_PACKING) |
| Custom Class offset. Used for internal purposes. | |
| #define | offsetofmem(m, s) (FCM::S_Int64)&(((s *)0)->m) |
| Memory Offset. | |
| #define | BEGIN_INTERFACE_MAP(impl, implVersion) |
| Format to begin Interface map. More... | |
| #define | BEGIN_MULTI_INTERFACE_MAP(impl, implVersion) |
| Format to Begin multi-interface map. This should be used if a implementation class is inheriting from multiple interfaces. More... | |
| #define | INTERFACE_ENTRY(ifx) {IID(ifx),offsetofclass(ifx,_ClassImpl),_FCM_SIMPLEMAPENTRY}, |
| Add an interface. | |
| #define | INTERFACE_ENTRY_CUSTOM(ifx, custom) {IID(ifx),offsetofclasscustom(ifx,custom,_ClassImpl),_FCM_SIMPLEMAPENTRY}, |
| Add custom interface. Used to avoid the "diamond problem" of multiple inheritance. | |
| #define | INTERFACE_ENTRY_AGGREGATE(ifx, punk) {IID(ifx),offsetofmem(punk,_ClassImpl),_Delegate}, |
| Add interface with aggregation. | |
| #define | END_INTERFACE_MAP |
| Format to end the interface map. More... | |
| #define | BEGIN_MODULE(usrModule) class usrModule : public FCM::FCMPluginModule { |
| Format to mark the beginning of a module. A module contains a list of class map with name ursModule. | |
| #define | BEGIN_CLASS_ENTRY |
| Format to mark the beginning of class map. More... | |
| #define | CLASS_ENTRY(clsid, ursClass) addClassEntry(clsid,&FCMClassFactory<ursClass>::GetFactory,&ursClass::GetInterfaceMap,ursClass::GetVersion()); |
| Add class entry with class id clsid and classobject ursClass to classFactory. | |
| #define | END_CLASS_ENTRY return res; } |
| Format to mark the end of a class map. | |
| #define | END_MODULE }; |
| Format to end the module. | |
| #define | DllExport __declspec( dllexport ) |
| Used to export a function from a plug-in. | |
| #define | FCMPLUGIN_IMP_EXP DllExport |
| Used to export a function from the plug-in. | |
This file contains the macros used in FCM.
| #define BEGIN_CLASS_ENTRY |
Format to mark the beginning of class map.
| #define BEGIN_DECLARE_BASE_INTERFACE | ( | ifx, | |
| iid | |||
| ) |
Used to begin the interface ifx with ID iid, which inherits from IFCMUnknown.
| #define BEGIN_DECLARE_INTERFACE_COMMON | ( | ifx, | |
| iid | |||
| ) |
Used to begin any interface ifx with ID iid.
| #define BEGIN_DECLARE_INTERFACE_INHERIT | ( | ifx, | |
| iid, | |||
| baseifx | |||
| ) |
Used to begin the interface ifx with ID iid , which inherits from baseifx.
| #define BEGIN_INTERFACE_MAP | ( | impl, | |
| implVersion | |||
| ) |
Format to begin Interface map.
| #define BEGIN_MULTI_INTERFACE_MAP | ( | impl, | |
| implVersion | |||
| ) |
Format to Begin multi-interface map. This should be used if a implementation class is inheriting from multiple interfaces.
| #define DEFINE_FCMIID |
Defines interface with name name and ID whose textual representation is l - w1 - w2 - b1 b2 - b3 b4 b5 b6 b7 b8.
| #define END_INTERFACE_MAP |
Format to end the interface map.
| #define FCM_VERSION |
Complete version of the framework.
| #define FORWARD_DECLARE_INTERFACE | ( | ifx | ) |
Used to forward declare an interface ifx.