libIntegra
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Macros Pages
command_result.h
Go to the documentation of this file.
1 /* libIntegra modular audio framework
2  *
3  * Copyright (C) 2007 Birmingham City University
4  *
5  * This program is free software; you can redistribute it and/or modify
6  * it under the terms of the GNU General Public License as published by
7  * the Free Software Foundation; either version 2 of the License, or
8  * (at your option) any later version.
9  *
10  * This program is distributed in the hope that it will be useful,
11  * but WITHOUT ANY WARRANTY; without even the implied warranty of
12  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13  * GNU General Public License for more details.
14  *
15  * You should have received a copy of the GNU General Public License
16  * along with this program; if not, write to the Free Software
17  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301,
18  * USA.
19  */
20 
21 
34 #ifndef COMMAND_RESULT_API_H
35 #define COMMAND_RESULT_API_H
36 
37 #include "guid_helper.h"
38 
39 
40 namespace integra_api
41 {
42  class INode;
43 
44 
50  class INTEGRA_API CCommandResult
51  {
52  protected:
53  CCommandResult() {};
54  public:
55  virtual ~CCommandResult() {};
56  };
57 
58 
65  class INTEGRA_API CNewCommandResult : public CCommandResult
66  {
67  public:
68  CNewCommandResult() { m_created_node = NULL; }
69  ~CNewCommandResult() {};
70 
74  const INode *get_created_node() const { return m_created_node; }
75 
78  void set_created_node( const INode *created_node ) { m_created_node = created_node; }
79 
80  private:
81  const INode *m_created_node;
82  };
83 
84 
90  class INTEGRA_API CLoadCommandResult : public CCommandResult
91  {
92  public:
93  CLoadCommandResult() {};
94  ~CLoadCommandResult() {};
95 
109  const guid_set &get_new_embedded_module_ids() const { return m_new_embedded_module_ids; }
110 
113  void set_new_embedded_module_ids( const guid_set &ids ) { m_new_embedded_module_ids = ids; }
114 
115  private:
116  guid_set m_new_embedded_module_ids;
117 
118  };
119 }
120 
121 
122 #endif
void set_created_node(const INode *created_node)
InTeRnAl uSe oNlY.
Definition: command_result.h:78
Represents a node.
Definition: node.h:49
const INode * get_created_node() const
Retrieve a pointer to the newly created node.
Definition: command_result.h:74
void set_new_embedded_module_ids(const guid_set &ids)
internal use only
Definition: command_result.h:113
Defines class CGuidHelper, and guid containers.
Represents return information for INewCommand.
Definition: command_result.h:65
const guid_set & get_new_embedded_module_ids() const
retrieve the ids of new embedded modules
Definition: command_result.h:109
Base class for all command result classes.
Definition: command_result.h:50
Represents return information for ILoadCommand.
Definition: command_result.h:90