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_WorkItemTypes.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_WorkItemArray& valid);
31 
32  bool addDependency(
33  PDG_WorkItem* dependent,
34  PDG_WorkItem* dependency,
35  UT_WorkBuffer& errors);
38  { return myDependencyPairs; }
39 
40 protected:
41  bool isValid(PDG_WorkItem* work_item) const;
42 
45 };
46 
47 #endif
PDG_WorkItemIDSet myValidSet
#define PDG_API
Definition: PDG_API.h:23
PDG_WorkItemPairArray myDependencyPairs
const PDG_WorkItemPairArray & dependencyPairs() const