ardour
Public Types | Public Member Functions | Public Attributes | List of all members
ARDOUR::Transform::Value Struct Reference

#include <transform.h>

Public Types

enum  Source {
  NOWHERE, THIS_NOTE, PREV_NOTE, INDEX,
  N_NOTES, LITERAL, RANDOM
}
 

Public Member Functions

 Value ()
 
 Value (Source s)
 
 Value (const Variant &v)
 
 Value (double v)
 
Variant eval (const Context &context) const
 

Public Attributes

Source source
 Source of value. More...
 
Variant value
 Value for LITERAL. More...
 
Property prop
 Property for all other sources. More...
 

Detailed Description

Value in a transformation expression.

Definition at line 71 of file transform.h.

Member Enumeration Documentation

Value source. Some of these would be better modeled as properties, like note.index or sequence.size, but until the sequence stuff is more fundamentally property based, we special-case them here.

Enumerator
NOWHERE 

Null.

THIS_NOTE 

Value from this note.

PREV_NOTE 

Value from the previous note.

INDEX 

Index of the current note.

N_NOTES 

Total number of notes to process.

LITERAL 

Given literal value.

RANDOM 

Random normal.

Definition at line 75 of file transform.h.

Constructor & Destructor Documentation

ARDOUR::Transform::Value::Value ( )
inline

Definition at line 85 of file transform.h.

ARDOUR::Transform::Value::Value ( Source  s)
inline

Definition at line 86 of file transform.h.

ARDOUR::Transform::Value::Value ( const Variant v)
inline

Definition at line 87 of file transform.h.

ARDOUR::Transform::Value::Value ( double  v)
inline

Definition at line 88 of file transform.h.

Member Function Documentation

Variant ARDOUR::Transform::Value::eval ( const Context context) const

Calculate and return value.

Definition at line 44 of file transform.cc.

Member Data Documentation

Property ARDOUR::Transform::Value::prop

Property for all other sources.

Definition at line 95 of file transform.h.

Source ARDOUR::Transform::Value::source

Source of value.

Definition at line 93 of file transform.h.

Variant ARDOUR::Transform::Value::value

Value for LITERAL.

Definition at line 94 of file transform.h.


The documentation for this struct was generated from the following files: