HDK
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
topology.h
Go to the documentation of this file.
1 //
2 // Copyright 2016 Pixar
3 //
4 // Licensed under the terms set forth in the LICENSE.txt file available at
5 // https://openusd.org/license.
6 //
7 #ifndef PXR_IMAGING_HD_TOPOLOGY_H
8 #define PXR_IMAGING_HD_TOPOLOGY_H
9 
10 #include "pxr/pxr.h"
11 #include "pxr/imaging/hd/api.h"
12 #include "pxr/imaging/hd/version.h"
13 #include "pxr/base/arch/inttypes.h"
14 
15 #include <ostream>
16 
18 
19 class HdTopology {
20 public:
21  typedef uint64_t ID;
22 
23  HdTopology() {};
24  virtual ~HdTopology() {};
25 
26  /// Returns the hash value of this topology to be used for instancing.
27  virtual ID ComputeHash() const = 0;
28 };
29 
30 HD_API
31 std::ostream& operator << (std::ostream &out, HdTopology const &);
32 
33 
35 
36 #endif // PXR_IMAGING_HD_TOPOLOGY_H
37 
uint64_t ID
Definition: topology.h:21
virtual ~HdTopology()
Definition: topology.h:24
#define HD_API
Definition: api.h:23
HdTopology()
Definition: topology.h:23
virtual ID ComputeHash() const =0
Returns the hash value of this topology to be used for instancing.
PXR_NAMESPACE_CLOSE_SCOPE PXR_NAMESPACE_OPEN_SCOPE
Definition: path.h:1425
#define PXR_NAMESPACE_CLOSE_SCOPE
Definition: pxr.h:74
HD_API std::ostream & operator<<(std::ostream &out, HdTopology const &)