C++ SDK Reference  12.5
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
diguy_author.h
Go to the documentation of this file.
1 
2 /*
3  * Copyright (C) 1992-2013 Boston Dynamics
4  * ALL RIGHTS RESERVED.
5  *
6  * These coded instructions, statements, and computer programs
7  * contain unpublished proprietary information of Boston Dynamics
8  * and are protected by Copyright Laws of the United States.
9  * They may not be used, duplicated, or disclosed in any form, in
10  * whole or in part, without the prior written consent from Boston
11  * Dynamics.
12  *
13  * RESTRICTED RIGHTS LEGEND
14  * Use, duplication, or disclosure by the government is subject
15  * to restrictions as set forth in FAR 52.227.19(c)(2) or
16  * subparagraph (c)(1)(ii) of the Rights in Technical Data and
17  * Computer Software clause at DFARS 252.227-7013 and/or in
18  * similar or successor clauses in the FAR, or the DOD or NASA
19  * FAR Supplement, or to subparagraphs (c)(1) and (c)(2) of the
20  * Commercial Computer Software--Restricted Rights at 48 CFR
21  * 52.227-19, as applicable. Unpublished-rights reserved under
22  * the Copyright Laws of the United States.
23  * Contractor/Manufacturer is:
24  * Boston Dynamics/78 Fourth Avenue/Waltham MA 02451.
25  */
26 
27 /*********************************************************************
28  **
29  *t DI-Guy AI, Main Header File
30  **
31  *b Link against: libdiguy
32  */
33 
34 #ifndef __diguy_author_H
35 #define __diguy_author_H
36 
37 #include <diguy_constants.h>
38 #include <diguyAuthorInterface.h>
39 
40 #include <declspec_diguy.h>
41 
42 #ifdef __cplusplus
43 extern "C" {
44 #endif
45 
46 
47 /*****************************************************************************/
53 /*l
54  *b Description:
55  **
56  ** This function enables DI-Guy Author. It should be called after the
57  ** main DI-Guy initialize call.
58  **
59  ** Note that DI-Guy Author will deinitialize automatically when DI-Guy
60  ** shuts down.
61  **
62  *b Arguments:
63  **
64  *a create_func - pointer to function that creates a diguyAuthorInterface
65  *a subclass object
66  **
67  ** DI-Guy Author relies on receiving input from the Host IG that is
68  ** integrating DI-Guy Author functionality. To do this, the
69  ** diguyAuthorInterface class needs to be subclassed, with the proper
70  ** virtual functions overridden.
71  **
72  ** DI-Guy uses this indirect approach to creating objects instead of just
73  ** setting the object directly to avoid potential memory model problems
74  ** on some platforms, that can result in difficult to debug problems.
75  **
76  *b Callable From:
77  **
78  *- - C++
79  **
80  *b Returns:
81  **
82  ** 0 on success, -1 on failure
83  */
84 BDI_DECLSPEC_diguy
86 
87 /*l
88  *b Description:
89  **
90  ** This function returns whether or not DI-Guy Author functionality
91  ** is enabled.
92  **
93  *b Returns:
94  **
95  ** 1 if DI-Guy Author enabled and initialized, 0 if not
96  */
97 BDI_DECLSPEC_diguy
99 
100 /*l
101  *b Description:
102  **
103  ** This function returns a pointer to a diguyAuthorInterface object.
104  ** Member functions in this object can be used to communicate input, e.g.
105  ** mouse clicks or key presses, to DI-Guy so it can create and edit DI-Guy
106  ** characters and objects in the Host IG.
107  **
108  *b Returns:
109  **
110  ** pointer of type diguyAuthorInterface
111  */
112 BDI_DECLSPEC_diguy
114 
115 
116 #ifdef __cplusplus
117 }
118 #endif
119 
120 #endif /* __diguy_author_H */
121 
122