Specifications of representations of structured values, such as those of the {@linkplain tv.amwa.maj.meta.TypeDefinitionRecord AAF record data types}. {@linkplain tv.amwa.maj.industry.PropertyValue Property values} of the record type consist of values for an ordered set of fields, where each field has a name and type.
Included in this package are:
A generic means of mapping the public fields of any Java class to an AAF record type definition is provided by the {@link tv.amwa.maj.meta.TypeDefinitionRecord#createValueFromObject(Object) createValueFromObject()} and {@link tv.amwa.maj.meta.TypeDefinitionRecord#getObject(tv.amwa.maj.industry.PropertyValue) getObject()} methods of a {@linkplain tv.amwa.maj.meta.TypeDefinitionRecord record type definition}.
The interfaces defined in this package are derived from structures defined for the
C-based AAF SDK in file "AAFTypes.h
".
The structure has been converted to a Java interface with every element of the C struct
represented by a pair of get
and set
methods.
For example, the AAF rational data type is defined in the AAF SDK by the following structure:
typedef struct _aafRational_t { aafInt32 numerator; aafInt32 denominator; } aafRational_t;
This has been translated to the Java interface called {@link tv.amwa.maj.record.Rational Rational} as follows:
public interface Rational { @Int32 getNumerator(); void setNumerator(@Int32 int numerator); @Int32 getDenominator(); void setDenominator(@Int32 int denominator); }@see tv.amwa.maj.meta.TypeDefinitionRecord