VR-Link API Documentation for HLA 1516
tInterCbMgr.h
Go to the documentation of this file.
00001 /*********************************************************************
00002 ** Copyright (c) 1992-2010 VT MAK
00003 ** All rights reserved.
00004 *********************************************************************/
00005 
00006 
00007 #ifndef tInterCbMgr_H_
00008 #define tInterCbMgr_H_
00009 
00010 #if DtTENA
00011 
00012 #include <list>
00013 #include <vlutil/vlString.h>
00014 
00019 
00020 class DT_DLL_VL DtInteraction;
00021 
00023 typedef void (*DtReceiveInteractionCb) (DtInteraction* inter, void* usr);
00024 
00028 class DT_DLL_VL DtInteractionCallbackManager
00029 {
00030 public:
00033    struct DtInteractionCallbackInfo
00034    {
00035       DtString name;
00036       DtReceiveInteractionCb cb;
00037       void* usr;
00038    };
00039 
00040 public:
00042    DtInteractionCallbackManager();
00043 
00045    virtual ~DtInteractionCallbackManager();
00046 
00048    virtual void addInteractionCallback(const DtString& name, 
00049       DtReceiveInteractionCb cb, void* usr); 
00050 
00052    virtual void removeInteractionCallback(const DtString& name,
00053       DtReceiveInteractionCb cb, void* usr);
00054 
00057    virtual void applyCallback(const DtString& name, DtInteraction* inter);
00058 
00059 protected:
00061    virtual bool cbInfoAreEqual(const DtInteractionCallbackInfo& first,
00062       const DtInteractionCallbackInfo& second);
00063 
00064 protected:
00065 
00066    std::list<DtInteractionCallbackInfo> myInteractionCallbackList;
00067 };
00068 
00069 #endif
00070 #endif
00071 
00072 

Document ID: Generated on Mon May 14 08:06:18 EDT 2012 from SVN revision 114750
Copyright © 2005-2012 VT MÄK Inc. All Rights Reserved (www.mak.com)