OpenShadingLanguage 1.00
# Compiled by oslc 1.15.3.0
# options: -q -O2 -I/build/blender/src/blender/intern/cycles/kernel/osl/shaders -I/usr/share/OSL/shaders -o /build/blender/src/build/intern/cycles/kernel/osl/shaders/node_raycast.oso
shader node_raycast
param	point	Position	0 0 0		%read{6,6} %write{0,0} %derivs %initexpr
param	normal	Direction	0 0 0		%read{6,6} %write{1,1} %derivs %initexpr
param	float	Length	1		%read{2,6} %write{2147483647,-1}
param	int	only_local	0		%read{3,3} %write{2147483647,-1}
oparam	float	IsHit	0		%read{2147483647,-1} %write{8,8}
oparam	float	SelfHit	0		%read{2147483647,-1} %write{9,9}
oparam	float	HitDistance	0		%read{2147483647,-1} %write{2,10} %initexpr
oparam	point	HitPosition	0 0 0		%read{2147483647,-1} %write{11,11}
oparam	normal	HitNormal	0 0 0		%read{2147483647,-1} %write{12,12}
global	point	P	%read{0,0} %write{2147483647,-1} %derivs
global	normal	N	%read{1,1} %write{2147483647,-1} %derivs
temp	int	$tmp1	%read{7,7} %write{6,6}
const	string	$const1	"maxdist"		%read{6,6} %write{2147483647,-1}
const	string	$const2	"traceset"		%read{6,6} %write{2147483647,-1}
temp	string	$tmp2	%read{6,6} %write{4,5}
const	string	$const3	"__only_local__"		%read{4,4} %write{2147483647,-1}
const	string	$const4	""		%read{5,5} %write{2147483647,-1}
const	float	$const5	1		%read{8,8} %write{2147483647,-1}
temp	int	$tmp3	%read{2147483647,-1} %write{9,9}
const	string	$const6	"trace"		%read{9,12} %write{2147483647,-1}
const	string	$const7	"hitself"		%read{9,9} %write{2147483647,-1}
temp	int	$tmp4	%read{2147483647,-1} %write{10,10}
const	string	$const8	"hitdist"		%read{10,10} %write{2147483647,-1}
temp	int	$tmp5	%read{2147483647,-1} %write{11,11}
const	string	$const9	"P"		%read{11,11} %write{2147483647,-1}
temp	int	$tmp6	%read{2147483647,-1} %write{12,12}
const	string	$const10	"N"		%read{12,12} %write{2147483647,-1}
code Position
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl:7
# shader node_raycast(point Position = P,
	assign		Position P 	%filename{"/build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl"} %line{7} %argrw{"wr"}
code Direction
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl:8
#                     normal Direction = N,
	assign		Direction N 	%filename{"/build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl"} %line{8} %argrw{"wr"}
code HitDistance
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl:13
#                     output float HitDistance = Length,
	assign		HitDistance Length 	%filename{"/build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl"} %line{13} %argrw{"wr"}
code ___main___
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl:18
#           Position, Direction, "maxdist", Length, "traceset", only_local ? "__only_local__" : ""))
	if		only_local 5 6 	%filename{"/build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl"} %line{18} %argrw{"r"}
	assign		$tmp2 $const3 	%argrw{"wr"}
	assign		$tmp2 $const4 	%argrw{"wr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl:17
#   if (trace(
	trace		$tmp1 Position Direction $const1 Length $const2 $tmp2 	%line{17} %argrw{"wrrrrrr"} %argderivs{1,2}
	if		$tmp1 13 13 	%argrw{"r"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl:20
#     IsHit = 1.0;
	assign		IsHit $const5 	%line{20} %argrw{"wr"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl:21
#     getmessage("trace", "hitself", SelfHit);
	getmessage	$tmp3 $const6 $const7 SelfHit 	%line{21} %argrw{"wrrw"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl:22
#     getmessage("trace", "hitdist", HitDistance);
	getmessage	$tmp4 $const6 $const8 HitDistance 	%line{22} %argrw{"wrrw"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl:23
#     getmessage("trace", "P", HitPosition);
	getmessage	$tmp5 $const6 $const9 HitPosition 	%line{23} %argrw{"wrrw"}
# /build/blender/src/blender/intern/cycles/kernel/osl/shaders/node_raycast.osl:24
#     getmessage("trace", "N", HitNormal);
	getmessage	$tmp6 $const6 $const10 HitNormal 	%line{24} %argrw{"wrrw"}
	end
