OpenVDB  12.1.0
Public Member Functions | List of all members
Arguments Struct Reference

Arbitrary, potentially "non-native" arguments. This wrapper struct can be used when generating function which cannot be called from AX itself (e.g. VDB accessor functions or Volume/Point kernels etc). They do not support implicit function signature matching or casting. More...

#include <openvdb_ax/codegen/FunctionTypes.h>

Public Member Functions

 Arguments ()=default
 
 Arguments (const NativeArguments &args)
 
 Arguments (Arguments &&)=default
 
 Arguments (const Arguments &)=default
 
Argumentsoperator= (Arguments &&)=default
 
Argumentsoperator= (const Arguments &)=default
 
size_t size () const
 
bool AreNativeValues () const
 
Value AsNativeValue (const size_t i) const
 
NativeArguments AsNativeValues () const
 
const llvm::ArrayRef< llvm::Value * > AsLLVMValues () const
 
const ArgInfoGetArgInfo (size_t pos) const
 
const ArgInfoVectorGetArgInfo () const
 
llvm::Value * operator[] (size_t pos) const
 
void AddArg (llvm::Value *val, const ArgInfo &type)
 
void AddArg (const Value &val)
 
void PrependArg (const Value &val)
 

Detailed Description

Arbitrary, potentially "non-native" arguments. This wrapper struct can be used when generating function which cannot be called from AX itself (e.g. VDB accessor functions or Volume/Point kernels etc). They do not support implicit function signature matching or casting.

Constructor & Destructor Documentation

Arguments ( )
default
Arguments ( const NativeArguments args)
inlineexplicit

Create a set of arguments from native arguments. The function framework typically works on generic arguments types.

Arguments ( Arguments &&  )
default
Arguments ( const Arguments )
default

Member Function Documentation

void AddArg ( llvm::Value *  val,
const ArgInfo type 
)
inline
void AddArg ( const Value val)
inline
bool AreNativeValues ( ) const
inline
const llvm::ArrayRef<llvm::Value*> AsLLVMValues ( ) const
inline
Value AsNativeValue ( const size_t  i) const
inline
NativeArguments AsNativeValues ( ) const
inline
const ArgInfo& GetArgInfo ( size_t  pos) const
inline
const ArgInfoVector& GetArgInfo ( ) const
inline
Arguments& operator= ( Arguments &&  )
default
Arguments& operator= ( const Arguments )
default
llvm::Value* operator[] ( size_t  pos) const
inline
void PrependArg ( const Value val)
inline
size_t size ( ) const
inline