Index: OpenSceneGraph/trunk/src/osgPlugins/OpenFlight/Registry.h
===================================================================
--- OpenSceneGraph/trunk/src/osgPlugins/OpenFlight/Registry.h (revision 8003)
+++ OpenSceneGraph/trunk/src/osgPlugins/OpenFlight/Registry.h (revision 10283)
@@ -123,4 +123,25 @@
 };
 
+//////////////////////////////////////////////////////////////////////////
+
+extern "C"
+{
+    typedef void (* CRecordFunction) (void);
+}
+
+struct RecordFunctionProxy
+{
+    RecordFunctionProxy(CRecordFunction function) { (function)(); }
+};
+
+#define USE_FLTRECORD(recname, opcode) \
+    extern "C" void osgfltrec_##recname_##opcode(void); \
+    static flt::RecordFunctionProxy proxy_fltrecord_##recname_##opcode(osgfltrec_##recname_##opcode);
+
+#define REGISTER_FLTRECORD(recname, opcode) \
+    extern "C" void osgfltrec_##recname_##opcode(void) {} \
+    static flt::RegisterRecordProxy<recname> g_proxy_fltrecord_##recname_##opcode(opcode);
+
+
 } // end namespace
 
