summaryrefslogtreecommitdiff
path: root/2.3-1/macros/CCodeGeneration/C_GenerateFunName.sci
blob: 54c641f22940c955b1368481673999bfd5450060 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
function CFunName = C_GenerateFunName(FunctionName,InArg,NInArg,OutArg,NOutArg)
// function CFunName = C_GenerateFunName(FunctionName,InArg,NInArg,OutArg,NOutArg)
// -----------------------------------------------------------------
// //NUT: add description here
//
// Input data:
// //NUT: add description here
//
// Output data:
// //NUT: add description here
//
// Status:
// 26-Oct-2007 -- Raffaele Nutricato: Author.
// 26-Oct-2007 -- Alberto Morea: Test Ok.
// 11-Nov-2007 -- Raffaele Nutricato: changed naming rule.
//
// Copyright 2007 Raffaele Nutricato.
// Contact: raffaele.nutricato@tiscali.it
// -----------------------------------------------------------------

// ------------------------------
// --- Check input arguments. ---
// ------------------------------
SCI2CNInArgCheck(argn(2),5,5);
CFunName = '';
if((IsAVRSupportFunction(FunctionName)) | (IsRPISupportFunction(FunctionName)))
//If current function is an AVR or RPi function, then function name can be just 
//plain function name without any input/output arguments types

	CFunName = CFunName+FunctionName;

else

	for tmpcnt = 1:NInArg
	   if (InArg(tmpcnt).Dimension == 1)
		  CFunName = CFunName+InArg(tmpcnt).Type+'2';
	   else
		  CFunName = CFunName+InArg(tmpcnt).Type+SCI2Cstring(InArg(tmpcnt).Dimension);
	   end
	end

	CFunName = CFunName+FunctionName;

	for tmpcnt = 1:NOutArg
	   if (OutArg(tmpcnt).Dimension == 1)
		  CFunName = CFunName+OutArg(tmpcnt).Type+'2';
	   else
		  CFunName = CFunName+OutArg(tmpcnt).Type+SCI2Cstring(OutArg(tmpcnt).Dimension);
	   end
	end
end
endfunction