VMCFClass.h File Reference

#include <stdio.h>
#include <string.h>

Go to the source code of this file.

Defines

#define VMCF_CHAIN_TO_SUPER_IMPL(function, args)   VMCF_CHAIN_TO_SUPER(, Impl_ ## function, args)
#define VMCF_CHAIN_TO_SUPER_SERVER(function, args)   VMCF_CHAIN_TO_SUPER(server_, _ ## function, args)
#define VMCF_DECLARE_CLASS(klass, initArgs)
#define VMCF_DEFINE_CHAINED_GET_NAME   _VMCF_DEFINE_CHAINED_GET_NAME(VMCF_THISCLASS)
#define VMCF_DEFINE_CHAINED_PROBE   _VMCF_DEFINE_CHAINED_PROBE(VMCF_THISCLASS)
#define VMCF_DEFINE_CLASS
#define VMCF_DEFINE_FINI_BEGIN
#define VMCF_DEFINE_FINI_END
#define VMCF_EXTERN
 Tags a function for export in a shared library.
#define VMCF_GET_SELF_DATA(self)   VMCF_GET_SUBINSTANCE_DATA(VMCF_USER_DATA(self))
#define VMCF_GET_SUBINSTANCE_DATA(data)   VMCF_CHAIN_TO_SUPER_IMPL(getSubinstanceData, (data))
#define VMCF_INIT_EPILOGUE(self, activate, env)
 Epilogue for initialization functions.
#define VMCF_INSTANCE_TYPE   _VMCF_INSTANCE_TYPE(VMCF_THISCLASS)
#define VMCF_PROTO_INIT(args)   _VMCF_PROTO_INIT(VMCF_THISCLASS, args)
 Defines the prototype of the 'initializer' function.
#define VMCF_USER_DATA(self)   (((ILU_C_Object *)(self))->instanceData)


Detailed Description

This file contains macros that facilitate the creation of VMCF classes without the need for error-prone typing and copy/paste. For these to work, define these three macros:

  1. VMCF_SUPERCLASS : name of the superclass
  2. VMCF_THISMODULE : name of the module for the class being implemented.
  3. VMCF_THISCLASS : name of the class being implemented.

Generated on Tue Dec 22 15:48:41 2009 for VMCF by  doxygen 1.5.3