HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PDG_FileDependency.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_FILE_DEPENDENCY_H__
10 #define __PDG_FILE_DEPENDENCY_H__
11 
12 #include "PDG_API.h"
13 #include "PDG_Dependency.h"
14 
15 #include <UT/UT_StringHolder.h>
16 
17 class PDG_Scheduler;
18 class PDG_TypeRegistry;
19 
21 {
22 public:
23  static void registerTypes(PDG_TypeRegistry* registry);
24 
26  const PDG_BaseType* type,
27  const PDGT_ValueArgs& extra_args,
28  const UT_StringHolder& file_name);
29 
30  int64 getMemoryUsage(bool inclusive) const override;
31 
32  bool isResolved(
33  PDG_GraphContext* context,
34  PDG_Node* node) const override;
35  bool onResolve(
36  PDG_GraphContext* context,
37  PDG_Node* node) override;
38 
39 private:
40  void expandKey(UT_StringHolder& expanded_key) const;
41 };
42 
43 #endif
virtual bool onResolve(PDG_GraphContext *, PDG_Node *)=0
#define PDG_API
Definition: PDG_API.h:23
virtual bool isResolved(PDG_GraphContext *context, PDG_Node *node) const
long long int64
Definition: SYS_Types.h:116
int64 getMemoryUsage(bool inclusive) const override
type
Definition: core.h:1059