Exemplo n.º 1
0
/* Entry function for state "test" in state set "pvGetCancel" */
static void seqg_entry_pvGetCancel_0_test(SS_ID seqg_env)
{
# line 37 "../pvGetCancel.st"
	testOk1(seq_pvGetTmo(seqg_env, 0/*x*/ + (CH_ID)(0), ASYNC, DEFAULT_TIMEOUT) == pvStatOK);
# line 38 "../pvGetCancel.st"
	testOk1(seq_pvGetTmo(seqg_env, 0/*x*/ + (CH_ID)(1), ASYNC, DEFAULT_TIMEOUT) == pvStatOK);
# line 39 "../pvGetCancel.st"
	seq_pvArrayGetCancel(seqg_env, 0/*x*/, 2);
# line 40 "../pvGetCancel.st"
	seqg_vars_pvGetCancel.x[0] = seqg_vars_pvGetCancel.x[1] = 0;
# line 41 "../pvGetCancel.st"
	seqg_vars_pvGetCancel.y[0] = seqg_vars_pvGetCancel.y[1] = 1;
# line 42 "../pvGetCancel.st"
	testOk1(seq_pvPutTmo(seqg_env, 2/*y*/ + (CH_ID)(0), SYNC, DEFAULT_TIMEOUT) == pvStatOK);
# line 43 "../pvGetCancel.st"
	testOk1(seq_pvPutTmo(seqg_env, 2/*y*/ + (CH_ID)(1), SYNC, DEFAULT_TIMEOUT) == pvStatOK);
# line 44 "../pvGetCancel.st"
	testOk1(seq_pvGetTmo(seqg_env, 0/*x*/ + (CH_ID)(0), ASYNC, DEFAULT_TIMEOUT) == pvStatOK);
# line 45 "../pvGetCancel.st"
	testOk1(seq_pvGetTmo(seqg_env, 0/*x*/ + (CH_ID)(1), ASYNC, DEFAULT_TIMEOUT) == pvStatOK);
}
Exemplo n.º 2
0
/* Action function for state "get" in state set "read_anon_sync" */
static void seqg_action_read_anon_sync_3_get(SS_ID seqg_env, int seqg_trn, int *seqg_pnst)
{
	switch(seqg_trn)
	{
	case 0:
		{
# line 155 "../pvGet.st"
			seq_efSet(seqg_env, ef_read_anon_sync);
		}
		return;
	case 1:
		{
# line 158 "../pvGet.st"
			epicsMutexMustLock(mutex);
# line 159 "../pvGet.st"
			seqg_var->seqg_vars_read_anon_sync.expected = shared;
# line 160 "../pvGet.st"
			seq_pvGetTmo(seqg_env, 0/*anon*/, SYNC, DEFAULT_TIMEOUT);
# line 161 "../pvGet.st"
			epicsMutexUnlock(mutex);
# line 163 "../pvGet.st"
			testOk(seqg_var->seqg_vars_read_anon_sync.expected == seqg_var->anon, "synchronous get:           expected=%d==%d=anon", seqg_var->seqg_vars_read_anon_sync.expected, seqg_var->anon);
# line 164 "../pvGet.st"
			epicsThreadSleep(0.1);
# line 165 "../pvGet.st"
			epicsMutexMustLock(mutex);
# line 166 "../pvGet.st"
			seqg_var->seqg_vars_read_anon_sync.expected = shared;
# line 167 "../pvGet.st"
			seq_pvGetTmo(seqg_env, 0/*anon*/, SYNC, DEFAULT_TIMEOUT);
# line 168 "../pvGet.st"
			epicsMutexUnlock(mutex);
# line 170 "../pvGet.st"
			testOk(seqg_var->seqg_vars_read_anon_sync.expected == seqg_var->anon, "repeat get after delay:    expected=%d==%d=anon", seqg_var->seqg_vars_read_anon_sync.expected, seqg_var->anon);
		}
		return;
	}
}
Exemplo n.º 3
0
/* Action function for state "get" in state set "read_named_sync" */
static void seqg_action_read_named_sync_2_get(SS_ID seqg_env, int seqg_trn, int *seqg_pnst)
{
	switch(seqg_trn)
	{
	case 0:
		{
# line 119 "../pvGet.st"
			seq_efSet(seqg_env, ef_read_named_sync);
		}
		return;
	case 1:
		{
# line 122 "../pvGet.st"
			epicsMutexMustLock(mutex);
# line 123 "../pvGet.st"
			seqg_var->seqg_vars_read_named_sync.expected = shared;
# line 124 "../pvGet.st"
			seq_pvGetTmo(seqg_env, 2/*named*/, SYNC, DEFAULT_TIMEOUT);
# line 125 "../pvGet.st"
			epicsMutexUnlock(mutex);
# line 127 "../pvGet.st"
			testOk(seqg_var->seqg_vars_read_named_sync.expected == seqg_var->seqg_vars_read_named_sync.named, "synchronous get:           expected=%d==%d=named", seqg_var->seqg_vars_read_named_sync.expected, seqg_var->seqg_vars_read_named_sync.named);
# line 128 "../pvGet.st"
			epicsThreadSleep(0.1);
# line 129 "../pvGet.st"
			epicsMutexMustLock(mutex);
# line 130 "../pvGet.st"
			seqg_var->seqg_vars_read_named_sync.expected = shared;
# line 131 "../pvGet.st"
			seq_pvGetTmo(seqg_env, 2/*named*/, SYNC, DEFAULT_TIMEOUT);
# line 132 "../pvGet.st"
			epicsMutexUnlock(mutex);
# line 134 "../pvGet.st"
			testOk(seqg_var->seqg_vars_read_named_sync.expected == seqg_var->seqg_vars_read_named_sync.named, "repeat get after delay:    expected=%d==%d=named", seqg_var->seqg_vars_read_named_sync.expected, seqg_var->seqg_vars_read_named_sync.named);
		}
		return;
	}
}
Exemplo n.º 4
0
/* Action function for state "get" in state set "read_anon" */
static void seqg_action_read_anon_1_get(SS_ID seqg_env, int seqg_trn, int *seqg_pnst)
{
	switch(seqg_trn)
	{
	case 0:
		{
# line 77 "../pvGet.st"
			seq_efSet(seqg_env, ef_read_anon);
		}
		return;
	case 1:
		{
# line 80 "../pvGet.st"
			epicsMutexMustLock(mutex);
# line 81 "../pvGet.st"
			seqg_var->seqg_vars_read_anon.expected = shared;
# line 82 "../pvGet.st"
			seq_pvGetTmo(seqg_env, 0/*anon*/, ASYNC, DEFAULT_TIMEOUT);
# line 83 "../pvGet.st"
			epicsMutexUnlock(mutex);
# line 84 "../pvGet.st"
			if (seq_pvGetComplete(seqg_env, 0/*anon*/))
			{
# line 86 "../pvGet.st"
				testOk(seqg_var->seqg_vars_read_anon.expected == seqg_var->anon, "immediate completion:      expected=%d==%d=anon", seqg_var->seqg_vars_read_anon.expected, seqg_var->anon);
			}
			else
			{
# line 88 "../pvGet.st"
				testPass("no immediate completion");
			}
# line 90 "../pvGet.st"
			epicsThreadSleep(0.1);
# line 91 "../pvGet.st"
			if (seq_pvGetComplete(seqg_env, 0/*anon*/))
			{
# line 93 "../pvGet.st"
				testOk(seqg_var->seqg_vars_read_anon.expected == seqg_var->anon, "completion after delay:    expected=%d==%d=anon", seqg_var->seqg_vars_read_anon.expected, seqg_var->anon);
			}
			else
			{
# line 95 "../pvGet.st"
				testPass("no completion after delay");
			}
		}
		return;
	}
}
Exemplo n.º 5
0
/* Action function for state "get" in state set "read_named" */
static void seqg_action_read_named_0_get(SS_ID seqg_env, int seqg_trn, int *seqg_pnst)
{
	switch(seqg_trn)
	{
	case 0:
		{
# line 37 "../pvGet.st"
			seq_efSet(seqg_env, ef_read_named);
		}
		return;
	case 1:
		{
# line 40 "../pvGet.st"
			epicsMutexMustLock(mutex);
# line 41 "../pvGet.st"
			seqg_var->seqg_vars_read_named.expected = shared;
# line 42 "../pvGet.st"
			seq_pvGetTmo(seqg_env, 1/*named*/, ASYNC, DEFAULT_TIMEOUT);
# line 43 "../pvGet.st"
			epicsMutexUnlock(mutex);
# line 44 "../pvGet.st"
			if (seq_pvGetComplete(seqg_env, 1/*named*/))
			{
# line 46 "../pvGet.st"
				testOk(seqg_var->seqg_vars_read_named.expected == seqg_var->seqg_vars_read_named.named, "immediate completion:      expected=%d==%d=named", seqg_var->seqg_vars_read_named.expected, seqg_var->seqg_vars_read_named.named);
			}
			else
			{
# line 48 "../pvGet.st"
				testPass("no immediate completion");
			}
# line 50 "../pvGet.st"
			epicsThreadSleep(0.1);
# line 51 "../pvGet.st"
			if (seq_pvGetComplete(seqg_env, 1/*named*/))
			{
# line 53 "../pvGet.st"
				testOk(seqg_var->seqg_vars_read_named.expected == seqg_var->seqg_vars_read_named.named, "completion after delay:    expected=%d==%d=named", seqg_var->seqg_vars_read_named.expected, seqg_var->seqg_vars_read_named.named);
			}
			else
			{
# line 55 "../pvGet.st"
				testPass("no completion after delay");
			}
		}
		return;
	}
}
Exemplo n.º 6
0
Arquivo: seq_if.c Projeto: ukaea/epics
/*
 * Get value from a channel.
 */
epicsShareFunc pvStat seq_pvGet(SS_ID ss, CH_ID chId, enum compType compType)
{
	return seq_pvGetTmo(ss, chId, compType, DEFAULT_TIMEOUT);
}