Loading...
Searching...
No Matches
CombineArgs< AValueType, BValueType > Class Template Reference

This struct collects both input and output arguments to "grid combiner" functors used with the tree::TypedGrid::combineExtended() and combine2Extended() methods. AValueType and BValueType are the value types of the two grids being combined. More...

`#include <openvdb/Types.h>`

## Public Types

using | AValueT = AValueType
using | BValueT = BValueType

## Public Member Functions

| CombineArgs ()
| CombineArgs (const AValueType &a, const BValueType &b, AValueType &result, bool aOn=false, bool bOn=false)
| Use this constructor when the result value is stored externally.
| CombineArgs (const AValueType &a, const BValueType &b, bool aOn=false, bool bOn=false)
| Use this constructor when the result value should be stored in this struct.
const AValueType & | a () const
| Get the A input value.
const BValueType & | b () const
| Get the B input value.
const AValueType & | result () const
| Get the output value.
AValueType & | result ()
CombineArgs & | setResult (const AValueType &val)
| Set the output value.
CombineArgs & | setARef (const AValueType &a)
| Redirect the A value to a new external source.
CombineArgs & | setBRef (const BValueType &b)
| Redirect the B value to a new external source.
CombineArgs & | setResultRef (AValueType &val)
| Redirect the result value to a new external destination.
bool | aIsActive () const
bool | bIsActive () const
bool | resultIsActive () const
CombineArgs & | setAIsActive (bool b)
| Set the active state of the A value.
CombineArgs & | setBIsActive (bool b)
| Set the active state of the B value.
CombineArgs & | setResultIsActive (bool b)
| Set the active state of the output value.

## Protected Member Functions

void | updateResultActive ()

## Protected Attributes

const AValueType * | mAValPtr
const BValueType * | mBValPtr
AValueType | mResultVal
AValueType * | mResultValPtr
bool | mAIsActive
bool | mBIsActive
bool | mResultIsActive

## Detailed Description

template<typename AValueType, typename BValueType = AValueType>
class openvdb::v10_0::CombineArgs< AValueType, BValueType >

This struct collects both input and output arguments to "grid combiner" functors used with the tree::TypedGrid::combineExtended() and combine2Extended() methods. AValueType and BValueType are the value types of the two grids being combined.

See also
  openvdb/tree/Tree.h for usage information.

Setter methods return references to this object, to facilitate the following usage:

CombineArgs<float> args;
myCombineOp(args.setARef(aVal).setBRef(bVal).setAIsActive(true).setBIsActive(false));
openvdb::v10_0::CombineArgs::setARef
CombineArgs & setARef(const AValueType &a)
Redirect the A value to a new external source.
Definition Types.h:582
openvdb::v10_0::CombineArgs::setBIsActive
CombineArgs & setBIsActive(bool b)
Set the active state of the B value.
Definition Types.h:598
openvdb::v10_0::CombineArgs::setBRef
CombineArgs & setBRef(const BValueType &b)
Redirect the B value to a new external source.
Definition Types.h:584
openvdb::v10_0::CombineArgs::CombineArgs
CombineArgs()
Definition Types.h:535
openvdb::v10_0::CombineArgs::setAIsActive
CombineArgs & setAIsActive(bool b)
Set the active state of the A value.
Definition Types.h:596

## Member Typedef Documentation

## AValueT

template<typename AValueType, typename BValueType = AValueType>

using AValueT = AValueType

## BValueT

template<typename AValueType, typename BValueType = AValueType>

using BValueT = BValueType

## Constructor & Destructor Documentation

## CombineArgs() [1/3]

template<typename AValueType, typename BValueType = AValueType>

CombineArgs | ( |  | ) |

inline

## CombineArgs() [2/3]

template<typename AValueType, typename BValueType = AValueType>

CombineArgs | ( | const AValueType & | a,
|  | const BValueType & | b,
|  | AValueType & | result,
|  | bool | aOn = false,
|  | bool | bOn = false )

inline

Use this constructor when the result value is stored externally.

## CombineArgs() [3/3]

template<typename AValueType, typename BValueType = AValueType>

CombineArgs | ( | const AValueType & | a,
|  | const BValueType & | b,
|  | bool | aOn = false,
|  | bool | bOn = false )

inline

Use this constructor when the result value should be stored in this struct.

## Member Function Documentation

## a()

template<typename AValueType, typename BValueType = AValueType>

const AValueType & a | ( |  | ) | const

inline

Get the A input value.

## aIsActive()

template<typename AValueType, typename BValueType = AValueType>

bool aIsActive | ( |  | ) | const

inline

Returns
  true if the A value is active

## b()

template<typename AValueType, typename BValueType = AValueType>

const BValueType & b | ( |  | ) | const

inline

Get the B input value.

## bIsActive()

template<typename AValueType, typename BValueType = AValueType>

bool bIsActive | ( |  | ) | const

inline

Returns
  true if the B value is active

## result() [1/2]

template<typename AValueType, typename BValueType = AValueType>

AValueType & result | ( |  | ) |

inline

## result() [2/2]

template<typename AValueType, typename BValueType = AValueType>

const AValueType & result | ( |  | ) | const

inline

Get the output value.

## resultIsActive()

template<typename AValueType, typename BValueType = AValueType>

bool resultIsActive | ( |  | ) | const

inline

Returns
  true if the output value is active

## setAIsActive()

template<typename AValueType, typename BValueType = AValueType>

CombineArgs & setAIsActive | ( | bool | b | ) |

inline

Set the active state of the A value.

## setARef()

template<typename AValueType, typename BValueType = AValueType>

CombineArgs & setARef | ( | const AValueType & | a | ) |

inline

Redirect the A value to a new external source.

## setBIsActive()

template<typename AValueType, typename BValueType = AValueType>

CombineArgs & setBIsActive | ( | bool | b | ) |

inline

Set the active state of the B value.

## setBRef()

template<typename AValueType, typename BValueType = AValueType>

CombineArgs & setBRef | ( | const BValueType & | b | ) |

inline

Redirect the B value to a new external source.

## setResult()

template<typename AValueType, typename BValueType = AValueType>

CombineArgs & setResult | ( | const AValueType & | val | ) |

inline

Set the output value.

## setResultIsActive()

template<typename AValueType, typename BValueType = AValueType>

CombineArgs & setResultIsActive | ( | bool | b | ) |

inline

Set the active state of the output value.

## setResultRef()

template<typename AValueType, typename BValueType = AValueType>

CombineArgs & setResultRef | ( | AValueType & | val | ) |

inline

Redirect the result value to a new external destination.

## updateResultActive()

template<typename AValueType, typename BValueType = AValueType>

void updateResultActive | ( |  | ) |

inline protected

By default, the result value is active if either of the input values is active, but this behavior can be overridden by calling setResultIsActive().

## Member Data Documentation

## mAIsActive

template<typename AValueType, typename BValueType = AValueType>

bool mAIsActive

protected

## mAValPtr

template<typename AValueType, typename BValueType = AValueType>

const AValueType* mAValPtr

protected

## mBIsActive

template<typename AValueType, typename BValueType = AValueType>

bool mBIsActive

protected

## mBValPtr

template<typename AValueType, typename BValueType = AValueType>

const BValueType* mBValPtr

protected

## mResultIsActive

template<typename AValueType, typename BValueType = AValueType>

bool mResultIsActive

protected

## mResultVal

template<typename AValueType, typename BValueType = AValueType>

AValueType mResultVal

protected

## mResultValPtr

template<typename AValueType, typename BValueType = AValueType>

AValueType* mResultValPtr

protected