updateParam method
Implementation
int updateParam( ClipParam parentParam, ClipParam childParam ){
int i, j;
int index;
j = childParam.updateParamCodeArray().length;
for( i = 0; i < j; i++ ){
if( childParam.updateParam(i) ){
switch( childParam.updateParamCode(i) ){
case ClipGlobal.codeVariable:
index = childParam.updateParamIndex(i);
if( parentParam.repVal( index, childParam.variable().val( i + ClipMath.charCode0 ), true ) ){
if( index == 0 ){
_updateMatrix( childParam, parentParam.array().matrix(index) );
} else {
_updateValue( childParam, parentParam.variable().val( index ) );
}
}
break;
case ClipGlobal.codeAutoVar:
index = childParam.updateParamIndex(i);
if( parentParam.repVal( index, childParam.variable().val( i + ClipMath.charCode0 ), false ) ){
if( index == 0 ){
_updateMatrix( childParam, parentParam.array().matrix(index) );
} else {
_updateValue( childParam, parentParam.variable().val( index ) );
}
}
break;
case ClipGlobal.codeGlobalVar:
index = childParam.updateParamIndex(i);
if( globalParam().repVal( index, childParam.variable().val( i + ClipMath.charCode0 ), false ) ){
if( index == 0 ){
_updateMatrix( childParam, globalParam().array().matrix(index) );
} else {
_updateValue( childParam, globalParam().variable().val( index ) );
}
}
break;
case ClipGlobal.codeArray:
childParam.array().rep( parentParam.array(), i + ClipMath.charCode0, childParam.updateParamIndex(i), true );
break;
case ClipGlobal.codeAutoArray:
childParam.array().rep( parentParam.array(), i + ClipMath.charCode0, childParam.updateParamIndex(i), false );
break;
case ClipGlobal.codeGlobalArray:
childParam.array().rep( globalParam().array(), i + ClipMath.charCode0, childParam.updateParamIndex(i), false );
break;
}
}
}
return ClipGlobal.noErr;
}