X3DInterpolatorNode : X3DChildNode { 
  SFFloat      [in]     set_fraction       (-Inf,Inf)
  MFFloat      [in,out] key           []   (-Inf,Inf)
  MF<type>     [in,out] keyValue      []
  SFNode       [in,out] metadata      NULL [X3DMetadataObject]
  [S|M]F<type> [out]    value_changed
}

ColorInterpolator : X3DInterpolatorNode {
  SFFloat [in]     set_fraction       (-Inf,Inf)
  MFFloat [in,out] key           []   (-Inf,Inf)
  MFColor [in,out] keyValue      []   [0,1]
  SFNode  [in,out] metadata      NULL [X3DMetadataObject]
  SFColor [out]    value_changed
}

CoordinateInterpolator : X3DInterpolatorNode {
  SFFloat [in]     set_fraction       (-Inf,Inf)
  MFFloat [in,out] key           []   (-Inf,Inf)
  MFVec3f [in,out] keyValue      []   (-Inf,Inf)
  SFNode  [in,out] metadata      NULL [X3DMetadataObject]
  MFVec3f [out]    value_changed
}

CoordinateInterpolator2D : X3DInterpolatorNode {
  SFFloat [in]     set_fraction       (-Inf,Inf)
  MFFloat [in,out] key           []   (-Inf,Inf)
  MFVec2f [in,out] keyValue      []   (-Inf,Inf)
  SFNode  [in,out] metadata      NULL [X3DMetadataObject]
  MFVec2f [out]    value_changed
}

EaseInEaseOut : X3DNode {
  SFFloat [in]     set_fraction                  (-Inf,Inf)
  MFVec2f [in,out] easeInEaseOut            []   (-Inf,Inf)
  MFFloat [in,out] key                      []   (-Inf,Inf) 
  SFNode  [in,out] metadata                 NULL [X3DMetadataObject]
  SFFloat [out]    modifiedFraction_changed
}

NormalInterpolator : X3DInterpolatorNode {
  SFFloat [in]     set_fraction       (-Inf,Inf)
  MFFloat [in,out] key           []   (-Inf,Inf)
  MFVec3f [in,out] keyValue      []   (-Inf,Inf)
  SFNode  [in,out] metadata      NULL [X3DMetadataObject]
  MFVec3f [out]    value_changed
}

OrientationInterpolator : X3DInterpolatorNode {
  SFFloat    [in]     set_fraction       (-Inf,Inf)
  MFFloat    [in,out] key           []   (-Inf,Inf)
  MFRotation [in,out] keyValue      []   [-1,1] or (-Inf,Inf)
  SFNode     [in,out] metadata      NULL [X3DMetadataObject]
  SFRotation [out]    value_changed
}

PositionInterpolator : X3DInterpolatorNode {
  SFFloat [in]     set_fraction       (-Inf,Inf)
  MFFloat [in,out] key           []   (-Inf,Inf)
  MFVec3f [in,out] keyValue      []   (-Inf,Inf)
  SFNode  [in,out] metadata      NULL [X3DMetadataObject]
  SFVec3f [out]    value_changed
}

PositionInterpolator2D : X3DInterpolatorNode {
  SFFloat [in]     set_fraction       (-Inf,Inf)
  MFFloat [in,out] key           []   (-Inf,Inf)
  MFVec2f [in,out] keyValue      []   (-Inf,Inf)
  SFNode  [in,out] metadata      NULL [X3DMetadataObject]
  SFVec2f [out]    value_changed
}

ScalarInterpolator : X3DInterpolatorNode {
  SFFloat [in]     set_fraction       (-Inf,Inf)
  MFFloat [in,out] key           []   (-Inf,Inf)
  MFFloat [in,out] keyValue      []   (-Inf,Inf)
  SFNode  [in,out] metadata      NULL [X3DMetadataObject]
  SFFloat [out]    value_changed
}

SplinePositionInterpolator : X3DInterpolatorNode {
  SFFloat [in]     set_fraction            (-Inf,Inf)
  SFBool  [in,out] closed            FALSE
  MFFloat [in,out] key               []    (-Inf,Inf)
  MFVec3f [in,out] keyValue          []    (-Inf,Inf)
  MFVec3f [in,out] keyVelocity       []    (-Inf,Inf)
  SFNode  [in,out] metadata          NULL  [X3DMetadataObject]
  SFBool  [in,out] normalizeVelocity FALSE
  SFVec3f [out]    value_changed
}

SplinePositionInterpolator2D : X3DInterpolatorNode {
  SFFloat [in]     set_fraction            (-Inf,Inf)
  SFBool  [in,out] closed            FALSE
  MFFloat [in,out] key               []    (-Inf,Inf)
  MFVec2f [in,out] keyValue          []    (-Inf,Inf)
  MFVec2f [in,out] keyVelocity       []    (-Inf,Inf)
  SFNode  [in,out] metadata          NULL  [X3DMetadataObject]
  SFBool  [in,out] normalizeVelocity FALSE
  SFVec2f [out]    value_changed
}

SplineScalarInterpolator : X3DInterpolatorNode {
  SFFloat [in]     set_fraction            (-Inf,Inf)
  SFBool  [in,out] closed            FALSE
  MFFloat [in,out] key               []    (-Inf,Inf)
  MFFloat [in,out] keyValue          []    (-Inf,Inf)
  MFFloat [in,out] keyVelocity       []    (-Inf,Inf)
  SFNode  [in,out] metadata          NULL  [X3DMetadataObject]
  SFBool  [in,out] normalizeVelocity FALSE
  SFFloat [out]    value_changed
}

SquadOrientationInterpolator : X3DInterpolatorNode {
  SFFloat    [in]     set_fraction            (-Inf,Inf)
  MFFloat    [in,out] key               []    (-Inf,Inf)
  MFRotation [in,out] keyValue          []    (-Inf,Inf)
  SFNode     [in,out] metadata          NULL  [X3DMetadataObject]
  SFBool     [in,out] normalizeVelocity FALSE
  SFRotation [out]    value_changed
}
