home *** CD-ROM | disk | FTP | other *** search
- #define _H_CXBugHCDemo
- #include <Color.h>
- #include <MacTypes.h>
- #include "HyperXCmdHC.h"
-
- #define SetUpHyperXBug(aParamPtr, pipeName) \
- if (!XDebugging) { RememberA0(); SetUpA4();} \
- pipeName = Create_Pipe(XDebugging,aParamPtr);
- /* Done with the Macro */
-
- #define CleanUpHyperXBug(pipeName) \
- ClosePipe(pipeName); \
- if (!XDebugging) { \
- UnloadA4Seg(0L); \
- RestoreA4(); \
- }
-
-
- /************************* XBug Interface Object Description *******************/
- struct CXBug : indirect{
- /* Instance Variables */
- Boolean Debugging;
- XCmdPtr paramPtr;
- Str255 AppName; /* Must be a Pascal String */
- Str255 MesgForHC; /* Mesg that idle can access, eg. Push DoCallBack Btn */
- Str31 volumeName;
- long directoryID;
- long WDRefNum; /* zang, int vs long.Set the volume, back to HC */
- Handle PBPlusHandle; /* Now we can send covert messages to HC */
-
- /* Instance Methods */
- CXBug *IXBug(Boolean Debugging, XCmdPtr theparamPtr); /* Most likely will alloc */
- int Destroy(void);
- void reconstructWD();
- void GoToHC();
-
- /********** The XCMD glue routines ***********************/
-
- Handle PasToZero(StringPtr pasStr);
- Handle GetFieldByName(Boolean cardFieldFlag, StringPtr fieldName);
- void SetFieldByName(Boolean cardFieldFlag, StringPtr fieldName, Handle fieldVal);
- };
-
- extern CXBug *Create_Pipe();
- extern void ClosePipe();
- extern char *ToCstr();
- extern char *ToPstr();
-