HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PDG_DependencyHolder.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  * COMMENTS:
7  */
8 
9 #ifndef __PDG_DEPENDENCY_HOLDER_H__
10 #define __PDG_DEPENDENCY_HOLDER_H__
11 
12 #include "PDG_API.h"
13 #include "PDG_Types.h"
14 
15 #include <UT/UT_Array.h>
16 
17 class PDG_WorkItem;
18 class UT_WorkBuffer;
19 
20 /**
21  * Factory object for adding dependency pairs between work items. Used for
22  * mapping and for adding sibling dependencies.
23  * */
25 {
26 
27 public:
30  const PDG_WorkItemSet& valid);
32  const PDG_WorkItemArray& valid);
33 
34  bool addDependency(
35  PDG_WorkItem* dependent,
36  PDG_WorkItem* dependency,
37  UT_WorkBuffer& errors);
40  { return myDependencyPairs; }
41 
42 protected:
43  bool isValid(PDG_WorkItem* work_item) const;
44 
47 };
48 
49 #endif
#define PDG_API
Definition: PDG_API.h:23
PDG_WorkItemPairArray myDependencyPairs
const PDG_WorkItemPairArray & dependencyPairs() const
PDG_WorkItemSet myValidSet