HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
DS_CommandList.h
Go to the documentation of this file.
1 /*
2  * PROPRIETARY INFORMATION. This software is proprietary to
3  * Side Effects Software Inc., and is not to be reproduced,
4  * transmitted, or disclosed in any way without written permission.
5  *
6  * NAME: DS library (C++)
7  *
8  * COMMENTS: List of commands
9  */
10 
11 #ifndef __DS_CommandList_h__
12 #define __DS_CommandList_h__
13 
14 #include "PRM_API.h"
15 #include <UT/UT_NonCopyable.h>
16 #include <UT/UT_String.h>
17 #include <UT/UT_ValArray.h>
18 
19 class DS_Command;
20 
22 {
23 public:
24  enum
25  {
26  DS_COMMAND_NONE, // Plain syntax
27  DS_COMMAND_RMAN, // RenderMan Syntax
28  DS_COMMAND_VEX // Toggles have value with them
29  };
30  DS_CommandList(const char *filename);
31  DS_CommandList(const char * const filename[]); // Multiple filenames
32  ~DS_CommandList();
33 
35 
36  int findCommand(const char *name);
37  DS_Command *getCommand(const char *name);
38  DS_Command *getCommand(int i) { return myCommands(i); }
39  int getNCommands() { return myCommands.entries(); }
40  const char *getFileName() const { return myFileName; }
41  void enforceOptions();
42 
43  void setSyntax(int syntax);
44 
45 private:
46  void load(const char *filename);
47  void defaultEntry();
48 
49  UT_ValArray<DS_Command *> myCommands;
50  UT_String myFileName;
51 };
52 
53 #endif
typedef int(APIENTRYP RE_PFNGLXSWAPINTERVALSGIPROC)(int)
GT_API const UT_StringHolder filename
const char * getFileName() const
#define UT_NON_COPYABLE(CLASS)
Define deleted copy constructor and assignment operator inside a class.
GLuint const GLchar * name
Definition: glcorearb.h:786
#define PRM_API
Definition: PRM_API.h:10