#//============================================================================	
#//ȗȂ
#//============================================================================	
def Long1
	on	set		goto	.1_0			#//ðقĂꂽɤLong1_0s
	on	trg1		goto	.1_1			#//ض1sꂽLong1_1s
	on	trg2		goto	.1_2	lock	150	#//ض2sꂽLong1_2s顂̌150ڰъԂͤضނsĂsJnx点
	on	trg3	unlock	goto	.1_3			#//ض3sꂽLong1_3s顂lockԒꍇlockđs
	on	trg4	unlock	goto	.1_4	lock	150	#//ض4sꂽLong1_4slock̋ƤVlock𤗼w肷ł
	on	clr		goto	.1_255			#//ðقرꂽ⎟ðقĂꂽ(ðق̍ľĂ܂)ɤLong1_255s
end
#//----------------------------------------------------------------------------	
def .1_0							#//̂悤ɤoݽ۰قŒ`ƕ֗ł۰قƂĒ`鎖\ł͂܂#defineɏo͂Ă܂̂Ōhł
	act	100						#//oԍ100s
	wait	30						#//30ڰё҂¡
	act	200						#//oԍ200s顂sOɓݽ~ꂽ礂̍s͎sȂ
end
#//----------------------------------------------------------------------------	
def .1_1
	act	101						#//oԍ101s
	wait	30						#//30ڰё҂¡
	act	201	flush					#//oԍ201s顂sOɓݽ~ꂽ礑̍ss
end
#//----------------------------------------------------------------------------	
def .1_2
	repeat							#//ȉ̋Ԃ𖳌ɌJԂ
		act	102					#//oԍ102s
		wait	30					#//30ڰё҂¡
	end
end
#//----------------------------------------------------------------------------	
def .1_3
	call	@F						#//'@@'Ăяo
	repeat	10						#//ȉ̋Ԃ10JԂ
		act	102					#//oԍ102s
		wait	30					#//30ڰё҂¡
	end
end
#//----------------------------------------------------------------------------	
def @@								#//۰~۰ق̊Ԃɤʏ`ꍇͤ'@'۰قgƕ֗ł(܂肻͖Ǝv܂c)
	wait	100
end
#//----------------------------------------------------------------------------	
def .1_4
	call	@B						#//O'@@'Ăяo
	repeat	10						#//ȉ̋Ԃ10JԂ
		act	103	flush				#//oԍ102s顓ݽ~鎞ͤJԂ𖳎1񂾂sďI
		wait	30					#//30ڰё҂¡
	end
end
#//----------------------------------------------------------------------------	
def .1_255
	act	104						#//oԍ104s
end
#//============================================================================	
#//ȗ
#//============================================================================	
Short1
	on	set			.1_0			#//ðقĂꂽɤShort1_0s
	on	trg1			.1_1			#//ض1sꂽShort1_1s
	on	trg2			.1_2		150	#//ض2sꂽShort1_2s顂̌150ڰъԂͤضނsĂsJnx点
	on	trg3	unlock		.1_3			#//ض3sꂽShort1_3s顂lockԒꍇlockđs
	on	trg4	unlock		.1_4		150	#//ض4sꂽShort1_4slock̋ƤVlock𤗼w肷ł
	on	clr			.1_255			#//ðقرꂽ⎟ðقĂꂽ(ðق̍ľĂ܂)ɤShort1_255s
end
#//----------------------------------------------------------------------------	
.1_0								#//̂悤ɤoݽ۰قŒ`ƕ֗ł۰قƂĒ`鎖\ł͂܂#defineɏo͂Ă܂̂Ōhł
	act	100						#//oԍ100s
	wait	30						#//30ڰё҂¡
	act	200						#//oԍ200s顂sOɓݽ~ꂽ礂̍s͎sȂ
end
#//----------------------------------------------------------------------------	
.1_1
	act	101						#//oԍ101s
	wait	30						#//30ڰё҂¡
	act	201	flush					#//oԍ201s顂sOɓݽ~ꂽ礑̍ss
end
#//----------------------------------------------------------------------------	
.1_2
	repeat							#//ȉ̋Ԃ𖳌ɌJԂ
		act	102					#//oԍ102s
		wait	30					#//30ڰё҂¡
	end
end
#//----------------------------------------------------------------------------	
.1_3
	call	@F						#//'@@'Ăяo
	repeat	10						#//ȉ̋Ԃ10JԂ
		act	102					#//oԍ102s
		wait	30					#//30ڰё҂¡
	end
end
#//----------------------------------------------------------------------------	
@@								#//۰~۰ق̊Ԃɤʏ`ꍇͤ'@'۰قgƕ֗ł(܂肻͖Ǝv܂c)
	wait	100
end
#//----------------------------------------------------------------------------	
.1_4
	call	@B						#//O'@@'Ăяo
	repeat	10						#//ȉ̋Ԃ10JԂ
		act	103	flush				#//oԍ102s顓ݽ~鎞ͤJԂ𖳎1񂾂sďI
		wait	30					#//30ڰё҂¡
	end
end
#//----------------------------------------------------------------------------	
.1_255
	act	104						#//oԍ104s
end
#//============================================================================	
#//Ŏn܂ق̏
#//============================================================================	
def `123							#//Ŏn܂ق`ꍇͤ擪'`'Ă'`'ٖɂ͊܂܂܂
	on	set	@F
end
`456								#//Ť'def'ȗł
	on	set	@F
end
@@
	wait	1
end
#//============================================================================	
#//acẗɉoԍłȂow肷@(2016/09/10ǉ)
#//============================================================================	
Test1
	on	set	@F
end
@@
	act	Foo
	wait	30
	act	Bar
	wait	30
	#//
	act	Foo
	wait	30
	act	Bar
	wait	30
	#//
	act	Baz	flush
end
#//============================================================================	
#//}`Xe[gg(2016/10/02ǉ)
#//============================================================================	
Test2
	on	set	@F
end
@@
	act	Foo	;	wait	30
	act	Bar	;	wait	30
	#//
	act	Foo	;	wait	30
	act	Bar	;	wait	30
	#//
	act	Baz	flush
end
#//============================================================================	
#//acẗƂāAwo悤ɂ܂B(2017/03/02ǉ)
#//============================================================================	
Test3
	on	set	@F
end
@@
	act	"application-specific command string 1"
	act	"application-specific command string 2"
	act	"application-specific command string 1"		flush
	act	"application-specific command string 3"
end
#//============================================================================	
#//fork߂ǉ܂B(2017/05/13)
#//============================================================================	
Test4
	on	`set	.set
end
.set
	act	100
	wait	5
	fork
		act	200
		fork			#//fork̃ReLXgAfork鎖\łB
			wait	10
			act	300
		end
		wait	10
		act	201
	end
	act	101
	wait	5
	act	102
end
#//--- app.c ---
#//int iFrame;
#//void fnAct(struct _ST_DirSeq* pDirSeq, int iCh, int ActNo, int bOverFlow) { printf("%2d: %d\n", iFrame, ActNo); }
#//int app_main(int argc, char* argv[]) {
#//	ST_DirSeq* pDirSeq = DirSeq_New(fnAct, 1, 3);
#//	DirSeqCh_SetTblNo(pDirSeq, 0, TBL_DirTblNo, DirTblNo_Test4);
#//	while(DirSeq_GetStat(pDirSeq)) { iFrame++; DirSeq_Exec(pDirSeq); }
#//	return 0;
#//}
#//---  ---
#// 0: 100
#// 5: 200	fork̃ReLXg1t[ڂ́Afork̒ŎsB]āAfork̉o(101)fork̉o(200)^C~OȂ΁Afork̉o(200)ɎsB
#// 5: 101	̎dl͎̓słKRł͂ȂAXNvgłfork̉o̕ɏ̂ŁAfork̉oɎsՂĎRȂ̂łŗǂƎvB
#//10: 102	fork̃[gReLXgIĂAforkReLXgcĂ΃V[PX͏IȂBIɂAforkfork̋ʂ͖ASɑΓłB
#//15: 300	fork̃ReLXg̓Xg̐擪ɒǉ̂ŁAforkuԂ̃t[(q)łȂAȍ~̃t[łAfork̃ReLXg̕ɎsB
#//15: 201	]āAforkforkœ^C~Oŉoꍇ́Afork̉o̕ɎsB
#//ʓIɂ͏L̂悤fork̏CCŏgՂƎv܂Afork̏ꍇ͈ȉ̂悤callgfork̏𕪂鎖\łBsʂ͓łB
#//Test4
#//	on	`set	.set
#//end
#//.set
#//	act	100
#//	wait	5
#//	fork
#//		call	.subr
#//	end
#//	act	101
#//	wait	5
#//	act	102
#//end
#//.subr
#//	act	200
#//	fork
#//		wait	10
#//		act	300
#//	end
#//	wait	10
#//	act	201
#//end
#//============================================================================	
#//join߂ǉ܂B(2017/06/20)
#//============================================================================	
Test5
	on	`set	.set
end
.set
	fork
		wait	30					#//1Ԗڂ̕÷Ă30ڰъ|
		act	400
	end
	fork
		wait	90					#//2Ԗڂ̕÷Ă90ڰъ|
		act	401
	end
	fork
		wait	60					#//3Ԗڂ̕÷Ă60ڰъ|
		act	402
	end
	join							#//SĂ̕÷ĂÎ҂¡90ڰё҂¡
	act	403
end
#//============================================================================	
#//if߂ǉ܂B(2017/09/03)
#//============================================================================	
Test6
	on	`set	.set
end
.set
	if	100000						#//Iȏԍ𒼐ڎw肷ᡓ°قɂԍ̊蓖ĕͤoԍƓlɤ1~65536ɑ΂鎩蓖ĂƂȂĂ̂ŤIȏԍƂĂ65537ȍ~p̂]܂
		act	500
		wait	30
	end
	act	501
	wait	30
	if	Cond1						#//w肷ᡏɑ΂ԍͤ1~65536͈̔͂Ť°قIɊ蓖Ă
		act	502
		wait	30
	end
	act	503
	wait	30
	if	"application-specific condition string 1"	#//w肷ᡎg͉oƓlł
		act	504
		wait	30
	end
end
#//============================================================================	
#//actif̈ƂāABLOBwo悤ɂ܂B(2017/09/17)
#//============================================================================	
Test7
	on	`set	.set
end
.set
	if		{half 0x1234,5,6,7,8}			#//if̈ƂBLOBw肷B
		act	{half 0xABCD,fp16 640.0,fp16 480.0}	#//acẗƂBLOBw肷B
	end
	if		Qux         {5,6,7,8}			#//BLOB̐擪ɏ܂߂T[rX̏Buif  name{...}v́uif  {half DirCnd_name,...}vƓłBnameƂĊmɓo^邽߂ɂ̃T[rX̏gKvL܂B
		act	Quux        {fp16 640.0,fp16 480.0}	#//BLOB̐擪ɉo܂߂T[rX̏Buact name{...}v́uact {half DirAct_name,...}vƓłBnameoƂĊmɓo^邽߂ɂ̃T[rX̏gKvL܂B
	end
end
