 ˛∫æ2%edu/dhbw/andar/AndARRendererjava/lang/Object%android/opengl/GLSurfaceView$Renderer*edu/dhbw/andar/interfaces/PreviewFrameSinkresLandroid/content/res/Resources;DEBUGZtextureNameIsquare[F
textureCoordsambientlightdiffuselight
specularlight
lightpositionlightPositionBufferLjava/nio/FloatBuffer;specularLightBufferdiffuseLightBufferambientLightBuffer
textureBuffersquareBuffer
frameEnqueuedtakeScreenshot
screenshotLandroid/graphics/Bitmap;screenshotMonitorLjava/lang/Object;screenshotTaken	frameDataLjava/nio/ByteBuffer;	frameLock*Ljava/util/concurrent/locks/ReentrantLock;isTextureInitializedlogLjava/io/Writer;textureSizepreviewFrameWidthpreviewFrameHeightscreenWidthscreenHeight
markerInfoLedu/dhbw/andar/ARToolkit;aspectRatioFcustomRenderer*Ledu/dhbw/andar/interfaces/OpenGLRenderer;activityLedu/dhbw/andar/AndARActivity;outLjava/io/DataOutputStream;UUIDLjava/lang/String;HOST
ConstantValue?gorilla.sharabash.comPORTanumberSocketLjava/net/Socket;mode<init>Z(Landroid/content/res/Resources;Ledu/dhbw/andar/ARToolkit;Ledu/dhbw/andar/AndARActivity;)VCode
IEJ()V	L? ?p	P>ôôö	S?333	V?ôö	YB»√HCH	^
`abmakeFloatBuffer([F)Ljava/nio/FloatBuffer;	d	f	h	j	l	n	p!"	r#	t$%v(java/util/concurrent/locks/ReentrantLock
uI	y&'	{(}edu/dhbw/andar/LogWriter
|I	Ä)*	Ç+	Ñ,	Ü-	à.	ä/	å23éunset	ê:;	í<;	î@	ñBC	òD	ö	
	ú01	û67LineNumberTableLocalVariableTablethisLedu/dhbw/andar/AndARRenderer;
renderinit•java/util/UUID
§ßE®(JJ)V
§™´¨
randomUUID()Ljava/util/UUID;
§ÆØ∞hashCode()I
≤¥≥java/lang/Integerµ∂toString(I)Ljava/lang/String;∏java/net/Socket
∑∫Eª(Ljava/lang/String;I)V	Ωøæjava/lang/System¿¡errLjava/io/PrintStream;√#Could not connect to on port: 7777.
≈«∆java/io/PrintStream»…println(Ljava/lang/String;)V
ÀÕÃjava/io/IOExceptionŒJprintStackTrace
Ω–—“exit(I)V‘java/io/DataOutputStream
∑÷◊ÿgetOutputStream()Ljava/io/OutputStream;
”⁄E€(Ljava/io/OutputStream;)V	›89eLjava/io/IOException;e1
StackMapTablerenderclose
”‰ÂJclose
∑‰ËCould not close.onDrawFrame-(Ljavax/microedition/khronos/opengles/GL10;)VÏÓÌ(javax/microedition/khronos/opengles/GL10Ô“glClear
ÒÛÚandroid/opengl/GLDebugHelperÙıwrapc(Ljavax/microedition/khronos/opengles/GL;ILjava/io/Writer;)Ljavax/microedition/khronos/opengles/GL;
˜¯ÍsetupDraw2DÏ˙˚“	glDisableÏ˝˛“glEnable	
Ï
glBindTexture(II)V
uJlock
	
ÍinitializeTextureÏ
glTexSubImage2D(IIIIIIIILjava/nio/Buffer;)V
uJunlockFÏglTexParameterf(IIF)VÏ	glColor4f(FFFF)VÄxÏ“glEnableClientStateÄt	!Ï#$%glTexCoordPointer(IIILjava/nio/Buffer;)V	'Ï)*%glVertexPointerÏ,-.glDrawArrays(III)VÏ01“glDisableClientState	345576(edu/dhbw/andar/interfaces/OpenGLRenderer8ÍsetupEnvÏ:;<	glLightfv(IILjava/nio/FloatBuffer;)V
>@?edu/dhbw/andar/ARToolkitAÍdraw	>CDnewvalFnew valHwoot!
JLKandroid/util/LogMNi'(Ljava/lang/String;Ljava/lang/String;)IPjava/lang/StringBuilder	>RScoords
UWVjava/lang/FloatµX(F)Ljava/lang/String;
Z\[java/lang/String]^valueOf&(Ljava/lang/Object;)Ljava/lang/String;
O`E…b,
Odefappend-(Ljava/lang/String;)Ljava/lang/StringBuilder;	>hi;mname
Okµl()Ljava/lang/String;
”no…
writeChars
”qrJflushtCould not write.5@
wyxjava/nio/IntBufferÙz([I)Ljava/nio/IntBuffer;
|~}java/nio/BufferÄposition(I)Ljava/nio/Buffer;ÏÇÉÑglReadPixels(IIIIIILjava/nio/Buffer;)Vˇˇˇ	àäâandroid/graphics/Bitmap$ConfigãåRGB_565 Landroid/graphics/Bitmap$Config;
éêèandroid/graphics/BitmapëícreateBitmap?([IIILandroid/graphics/Bitmap$Config;)Landroid/graphics/Bitmap;	î 
ñóJ	notifyAllgl*Ljavax/microedition/khronos/opengles/GL10;tmp[IscreenshotBufferLjava/nio/Buffer;jpixpbprpix1õ•java/lang/ThrowableonSurfaceChanged/(Ljavax/microedition/khronos/opengles/GL10;II)VÏ©™´
glViewport(IIII)V¬»øÄ	Ø
>±≤
setScreenSizewidthheightÏ∂∑“glMatrixModeÏπ∫JglLoadIdentityÏºΩæglOrthof	(FFFFFF)VonSurfaceCreatedW(Ljavax/microedition/khronos/opengles/GL10;Ljavax/microedition/khronos/egl/EGLConfig;)VÏ¬√glClearColorÏ≈∆«
glClearDepthf(F)VÏ… À
glGenTextures(I[II)V
ÕœŒjava/lang/Thread–—
currentThread()Ljava/lang/Thread;
Õ”‘’setUncaughtExceptionHandler.(Ljava/lang/Thread$UncaughtExceptionHandler;)V
>◊ÿÍinitGL5◊config*Ljavax/microedition/khronos/egl/EGLConfig;textureNames
ﬁ‡ﬂjava/nio/ByteBuffer·‚allocateDirect(I)Ljava/nio/ByteBuffer;
‰ÊÂjava/nio/ByteOrderÁËnativeOrder()Ljava/nio/ByteOrder;
ﬁÍÎÏorder+(Ljava/nio/ByteOrder;)Ljava/nio/ByteBuffer;
ﬁÓÔ
asFloatBuffer()Ljava/nio/FloatBuffer;
ÚÙÛjava/nio/FloatBufferıbput
Ú~arrbbfbsetNextFrame(Ljava/nio/ByteBuffer;)VbufgetFrameLock,()Ljava/util/concurrent/locks/ReentrantLock;setPreviewFrameSize
edu/dhbw/andar/GenericFunctionsisPowerOfTwo(I)Z	realWidth
realHeight
ﬁ	Ù
([B)Ljava/nio/ByteBuffer;Ï
glTexImage2Dframe[BsetModepModesetNonARRenderer-(Ledu/dhbw/andar/interfaces/OpenGLRenderer;)V()Landroid/graphics/Bitmap;
Jwaitjava/lang/InterruptedException
SourceFileAndARRenderer.javaInnerClassesConfig android/opengl/GLSurfaceViewRenderer#)java/lang/Thread$UncaughtExceptionHandlerUncaughtExceptionHandler!'	

 !"#$%&'()*+,-./0123456789:;<;=>@=ABCDEFG8X*∑H*µK*ºYQYMQYNQYMQYQYQYNQYQµO*ºYQQYQQYQQYQµR*ºYTQYTQYTQYQµU*ºYWQYWQYWQYQµX*ºYZQY[QY\QYQµ]**¥]∏_µc**¥X∏_µe**¥U∏_µg**¥R∏_µi*µk*µm*ªY∑Hµo*µq*µs*ªuY∑wµx*µz*ª|Y∑~µ*µÅ*µÉ*µÖ*µá*µâ*µã*çµè*>µë*aµì*µï*µó*+µô*,µõ*-µù±üû'~;	>
>@A#B,C7JQKkLÖMüO™PµQ¿RÀV–W’Y‡ZÂ[Í\ı]˙^_`abc$e)l/m5n<oAvHMÄRÅWÉ†*X°¢X	
X01X67£JG‰Tª§		∑¶*∏©∂≠∏±µè*ª∑Y>a∑πµïßL≤º¬∂ƒ+∂ ∏œ*ª”Y*¥ï∂’∑Ÿµ‹ßL+∂ ±%(À9KNÀü6
ãå	çåî(ñ)ò1ö5õ9üN†O¢S§† T°¢)ﬁﬂO‡ﬂ·hÀTÀ‚JGÑ#*¥‹∂„*¥ï∂ÊßL≤ºÁ∂ƒ+∂ ∏œ±Àü≠ÆØ∞≤≥"µ†#°¢ﬁﬂ·QÀÈÍG#
+AπÎ*¥Kô+*¥∏¿ÏL*+∑ˆ+qπ˘+
·π¸+Pπ˘+
·*¥ˇπ*¥kôb*¥x∂*¥zö*+∑ß"+
·*¥É*¥Ö*¥ó*¥sπ
*¥x∂+
·(π+
·(π*µk+π+π+π+*¥ π"+*¥&π(+π++π/+π/*¥2∆*¥2+π4ßU+Pπ¸+@*¥iπ9+@*¥gπ9+@*¥eπ9+@*¥cπ9+@π¸*¥õ+∂=*¥õ¥BôEG∏IW*¥‹ªOY*¥õ¥Q0∏T∏Y∑_a∂c*¥õ¥Q0∏T∂ca∂c*¥õ¥g∂ca∂c*¥è∂c∂j∂m*¥‹∂pßM≤ºs∂ƒ∏œ*¥õµB*¥2∆
*¥2+πu*¥mô·*µm*¥â*¥áhº
M*¥â*¥áhº
N,∏v:∂{W+*¥á*¥âπÅ6ß_6ßM,*¥áh`.6zˇ~6xÖ~6	Ü~	ÄÄ6
-*¥âdd*¥áh`
OÑ*¥á°ˇ∞Ñ*¥â°ˇû*-*¥á*¥â≤á∏çµì*µq*¥oY:¬*¥o∂ï√ß√ø±á‡„ÀﬁËÎÎÓÎü"Hø	¡¬√"ƒ+≈4∆=«J…Q XÀ_Ãg–v—Å–Ü”ç‘ú’´÷∞Ÿ∫€√‹Ãﬁ€ﬂÍ‚Û‰¸ÂÁËÍ"Î2ÏBÌRÓbÔkıs¯}˙áßºÃ÷Ÿ„‰ Ì!Ò&˘./
245"6.748;9S:Y=_?m@xAÉBëC¶=≤:æF—H÷JﬁKÂJÔN†z°¢òô‰
ﬁﬂ"Õöõ.¡õ4ªúùVhM\Vûm9üx.†É#°	ë¢
·a˚I)˚h˚Q˜wÀ
ˇNÏ££|¸˚I˙ˇ5Ï££|§ˇÏ¶ßGù+π®*ÜÜnµã*+∑ˆ*ºY¨*¥ãjQY¨QY≠QYZ*¥ãjQY¨QY≠QY¨*¥ãjQYZQY≠QY	Z*¥ãjQY
ZQY≠QµÆ**¥Æ∏_µ&*¥õ∂∞*µâ*µá±ü6
W
XYZ6[M\f]{Z~_â`íaóbúc†*ù°¢ùòôù≥ù¥¯ÍGÖ=+πµ+π∏+¨*¥ãjZ*¥ãj¨Z≠πª+πµ+π∏±üi	jk-m6n<o†=°¢=òôø¿Gﬂ]+π¡+πƒ+
·π¸º
N+-π»*-.µˇ**¥O∏_µ ∏Ã*¥ù∂“*¥õ+∂÷*¥2∆
*¥2+πŸ±ü2v
wy{}'~.Ä9ÑCÜKáRà\â†*]°¢]òô]⁄€?‹õ·¸\£abGu#*æh∏›L+∏„∂ÈW+∂ÌM,*∂ÒW,∂ˆW,∞üëíìîï!ñ† #˜¯%˘˙˚GG*+µs*µk±üü†
°†°¢¸%˝˛G/*¥x∞ü©†°¢ˇ.Gﬁ]∏ö±*µÅ*µÖ*µÉ*ºYQYÜÜnQYÜÜnQYÜÜnQYQYQYÜÜnQYQµO**¥O∏_µ ±ü6
≤≥¥
µ∂∏∫*ª:ºCΩN∏Qø\¿†*]°¢]+]]·
ÍGÌ
l*¥ó™	#4*µó*¥Å*¥ÅhhºMß*¥Å*¥ÅhºM+
·*¥ó*¥Å*¥Å*¥ó,∏π
*µz±ü.ƒ ∆'»5…8ÀDŒQœ]–aŒf—k“†*l°¢lòô5D(· ¸“Gë9™#	#*µóß
*µó*¥óü*µz±üŸ‹!›$ﬂ+‚3„8‰†9°¢9·G>*+µ2±ü
ÁË†°¢45GØ3*¥oYL¬*µq*µmß*¥o∂ßM*¥qôˇÒ+√ß+√ø*¥ì∞(++-+ü&	ÎÏÌÓÒÚÓ&Î.ı†3°¢·¸IK§˙àé@!	"Õ$	