Loading...
Searching...
No Matches
AttributeRegistry Class Reference

This class stores a list of access names, types and their dependency connections. More...

`#include <openvdb_ax/compiler/AttributeRegistry.h>`

## Classes

struct | AccessData
| Registered access details, including its name, type and whether a write handle is required. More...

## Public Types

using | Ptr = std::shared_ptr<AttributeRegistry>
using | ConstPtr = std::shared_ptr<const AttributeRegistry>
using | AccessDataVec = std::vector<AccessData>

## Public Member Functions

bool | isReadable (const std::string &name, const ast::tokens::CoreType type) const
bool | isWritable (const std::string &name, const ast::tokens::CoreType type) const
| Returns whether or not an access is required to be written to. If no access with this name has been registered, returns false.
std::pair< bool, bool > | accessPattern (const std::string &name, const ast::tokens::CoreType type) const
bool | isRegistered (const std::string &name, const ast::tokens::CoreType type) const
| Returns whether or not an access is registered.
int64_t | accessIndex (const std::string &name, const ast::tokens::CoreType type) const
| Returns whether or not an access is registered.
const AccessData * | get (const std::string &name, const ast::tokens::CoreType type) const
const AccessDataVec & | data () const
| Returns a const reference to the vector of registered accesss.
void | print (std::ostream &os) const

## Static Public Member Functions

static AttributeRegistry::Ptr | create (const ast::Tree &tree)

## Detailed Description

This class stores a list of access names, types and their dependency connections.

## Member Typedef Documentation

## AccessDataVec

using AccessDataVec = std::vector<AccessData>

## ConstPtr

using ConstPtr = std::shared_ptr<const AttributeRegistry>

## Ptr

using Ptr = std::shared_ptr<AttributeRegistry>

## Member Function Documentation

## accessIndex()

int64_t accessIndex | ( | const std::string & | name,
|  | const ast::tokens::CoreType | type ) const

inline

Returns whether or not an access is registered.

Parameters

  name | The name of the access
  type | The type of the access

## accessPattern()

std::pair< bool, bool > accessPattern | ( | const std::string & | name,
|  | const ast::tokens::CoreType | type ) const

inline

## create()

AttributeRegistry::Ptr create | ( | const ast::Tree & | tree | ) |

inline static

## data()

const AccessDataVec & data | ( |  | ) | const

inline

Returns a const reference to the vector of registered accesss.

## get()

const AccessData * get | ( | const std::string & | name,
|  | const ast::tokens::CoreType | type ) const

inline

## isReadable()

bool isReadable | ( | const std::string & | name,
|  | const ast::tokens::CoreType | type ) const

inline

## isRegistered()

bool isRegistered | ( | const std::string & | name,
|  | const ast::tokens::CoreType | type ) const

inline

Returns whether or not an access is registered.

Parameters

  name | The name of the access
  type | The type of the access

## isWritable()

bool isWritable | ( | const std::string & | name,
|  | const ast::tokens::CoreType | type ) const

inline

Returns whether or not an access is required to be written to. If no access with this name has been registered, returns false.

Parameters

  name | The name of the access
  type | The type of the access

## print()

void print | ( | std::ostream & | os | ) | const

inline