package Ġde . fab max . k ool . modules . k sl . lang Ċ Ċ abstract Ġclass ĠK sl Inter Stage Var < T : ĠK sl Type >( ĊĠĠĠ Ġopen Ġval Ġinput : ĠK sl Value < T >, ĊĠĠĠ Ġopen Ġval Ġoutput : ĠK sl Value < T >, ĊĠĠĠ Ġval Ġoutput Stage : ĠK sl Shader Stage Type , ĊĠĠĠ Ġval Ġinterpolation : ĠK sl Inter Stage Interpolation ) Ċ Ċ enum Ġclass ĠK sl Inter Stage Interpolation Ġ{ ĊĠĠĠ ĠSm ooth , ĊĠĠĠ ĠFlat , ĊĠĠĠ ĠNo Perspective Ċ } Ċ Ċ class ĠK sl Inter Stage Scalar < S >( input : ĠK sl Var Scalar < S >, Ġoutput : ĠK sl Var Scalar < S >, Ġoutput Stage : ĠK sl Shader Stage Type , Ġinterpolation : ĠK sl Inter Stage Interpolation ) ĊĠĠĠ Ġ: ĠK sl Inter Stage Var < S >( input , Ġoutput , Ġoutput Stage , Ġinterpolation ) Ġwhere ĠS : ĠK sl Type , ĠS : ĠK sl Scalar Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġinput : ĠK sl Var Scalar < S > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġsuper . input Ġas ĠK sl Var Scalar < S > ĊĊĠĠĠ Ġoverride Ġval Ġoutput : ĠK sl Var Scalar < S > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġsuper . output Ġas ĠK sl Var Scalar < S > Ċ } Ċ Ċ class ĠK sl Inter Stage Vector < V , ĠS >( input : ĠK sl Var Vector < V , ĠS >, Ġoutput : ĠK sl Var Vector < V , ĠS >, Ġoutput Stage : ĠK sl Shader Stage Type , Ġinterpolation : ĠK sl Inter Stage Interpolation ) ĊĠĠĠ Ġ: ĠK sl Inter Stage Var < V >( input , Ġoutput , Ġoutput Stage , Ġinterpolation ) Ġwhere ĠV : ĠK sl Type , ĠV : ĠK sl Vector < S >, ĠS : ĠK sl Type , ĠS : ĠK sl Scalar Ġ{ ĊĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠ Ġoverride Ġval Ġinput : ĠK sl Var Vector < V , ĠS > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġsuper . input Ġas ĠK sl Var Vector < V , ĠS > ĊĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠ Ġoverride Ġval Ġoutput : ĠK sl Var Vector < V , ĠS > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġsuper . output Ġas ĠK sl Var Vector < V , ĠS > Ċ } Ċ Ċ class ĠK sl Inter Stage Scalar Array < S >( input : ĠK sl Array Scalar < S >, Ġoutput : ĠK sl Array Scalar < S >, Ġoutput Stage : ĠK sl Shader Stage Type , Ġinterpolation : ĠK sl Inter Stage Interpolation ) ĊĠĠĠ Ġ: ĠK sl Inter Stage Var < K sl Type Array < S >>( input , Ġoutput , Ġoutput Stage , Ġinterpolation ) Ġwhere ĠS : ĠK sl Type , ĠS : ĠK sl Scalar Ġ{ ĊĊĠĠĠ Ġoverride Ġval Ġinput : ĠK sl Array Scalar < S > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġsuper . input Ġas ĠK sl Array Scalar < S > ĊĊĠĠĠ Ġoverride Ġval Ġoutput : ĠK sl Array Scalar < S > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġsuper . output Ġas ĠK sl Array Scalar < S > Ċ } Ċ Ċ class ĠK sl Inter Stage Vector Array < V , ĠS >( input : ĠK sl Array Vector < V , ĠS >, Ġoutput : ĠK sl Array Vector < V , ĠS >, Ġoutput Stage : ĠK sl Shader Stage Type , Ġinterpolation : ĠK sl Inter Stage Interpolation ) ĊĠĠĠ Ġ: ĠK sl Inter Stage Var < K sl Type Array < V >>( input , Ġoutput , Ġoutput Stage , Ġinterpolation ) Ġwhere ĠV : ĠK sl Type , ĠV : ĠK sl Vector < S >, ĠS : ĠK sl Type , ĠS : ĠK sl Scalar Ġ{ ĊĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠ Ġoverride Ġval Ġinput : ĠK sl Array Vector < V , ĠS > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġsuper . input Ġas ĠK sl Array Vector < V , ĠS > ĊĊĠĠĠ Ġ@ Suppress (" UN CHECK ED _ CAST ") ĊĠĠĠ Ġoverride Ġval Ġoutput : ĠK sl Array Vector < V , ĠS > ĊĠĠĠĠĠĠĠ Ġget () Ġ= Ġsuper . output Ġas ĠK sl Array Vector < V , ĠS > Ċ } Ċ