Skip to content

Commit 92bd2d8

Browse files
committed
Replace several char[] vars with CULSTR
1 parent d8cc2a1 commit 92bd2d8

File tree

9 files changed

+66
-69
lines changed

9 files changed

+66
-69
lines changed

src/CNDTYPES.DEF

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -152,13 +152,8 @@ TOWLOADCASE -- "enum { tldMIN, tldSP, tldMAX }"
152152
// pointer to XFILE structure (xiopak.h), added 1-94 for use in WFILE.
153153
XFILEP -- "XFILE *"
154154
//
155-
// arrays used in WFILE record, 1-94
156-
WFLOC -- "char[32]" // weather file location string (+ \0 + fill byte)
157-
WFLID -- "char[18]" // weather file location id string ( + \0 + fill byte)
158-
159155
WFileFormat -- "enum WFileFormat { UNK=-1,BSGS=1,BSGSdemo,ET1,ET2,CSW,T24DLL,EPW }"
160156
// open wthr file type (comments: wfpak.h)
161-
WFLOC2 -- "char[22]" // "location 2" field in ET1 weather files
162157
YACAMP -- "class YACAM *"
163158
WDYEARP -- "class WDYEAR *"
164159

src/CNFIELDS.DEF

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -127,11 +127,7 @@ AHMODE AHMODE LMNONE UNNONE // air handler mode enum 3-92
127127
TOWLOADCASE TOWLOADCASE LMNONE UNNONE // TOWERPLANT load case enum 9-92
128128
COILUSED COILUSED LMNONE UNNONE // AH coil used 12-92
129129

130-
WFLOC WFLOC LMNONE UNNONE // arrays used in WFILE record 1-94
131-
WFLID WFLID LMNONE UNNONE // ..
132-
133130
WFileFormat WFileFormat LMNONE UNNONE // open weather file type (see wfpak.h)
134-
WFLOC2 WFLOC2 LMNONE UNNONE // "location 2" field in E10v1+ weather files
135131
YACAMP YACAMP LMNONE UNNONE
136132
WDYEARP WDYEARP LMNONE UNNONE
137133

src/CNRECS.DEF

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -796,8 +796,8 @@ RECORD WFILE "weatherFile" *RAT // weather file info, one static instance "Wfile
796796
*declare "int wf_IsPacked() const { return wFileFormat==BSGS || wFileFormat==BSGSdemo || wFileFormat==ET1 || wFileFormat==ET2; }"
797797

798798
// Header info: from file hdr decode or computed from hourly
799-
*r WFLOC loc // char loc[] Location (for ET, is loc 1 only: city etc).
800-
*r WFLID lid // char lid[] Location ID
799+
*r CULSTR loc // Location (for ET, is loc 1 only: city etc).
800+
*r CULSTR lid // Location ID
801801
*r SI yr // Year of weather data (00 - 99, -1 if N/A)
802802
*r SI jd1 // Julian day of first weather record (-1 if not known)
803803
*r SI jdl // Julian day of last weather record (ditto)
@@ -811,7 +811,7 @@ RECORD WFILE "weatherFile" *RAT // weather file info, one static instance "Wfile
811811
*f float tMainsMinYr // annual minimum cold water temp, F
812812
*r SI solartime // TRUE if file is in solar time
813813
//additional header items for ET1 file
814-
*r WFLOC2 loc2 // char[] location 2 (state or country, etc)
814+
*r CULSTR loc2 // location 2 (state or country, etc)
815815
*r SI isLeap // non-0 if weather file is for a leap year (Feb 29 counted in dates) -- possible future use
816816
*r SI firstDdm // month 1-12 of first design day in file
817817
*r SI lastDdm // month 1-12 of last design day in file
@@ -832,7 +832,7 @@ RECORD WFILE "weatherFile" *RAT // weather file info, one static instance "Wfile
832832
// *array 12 *r float atmois // monthly aveage atmospheric moisture, for daylight calcs
833833

834834
// TDV file header info
835-
*f WFLOC wf_TDVFileTimeStamp // timestamp string
835+
*f CULSTR wf_TDVFileTimeStamp // timestamp string
836836
*f CULSTR wf_TDVFileTitle // title string (identifies file CZ, fuel, vintage, )
837837

838838
//internal

src/cuprobe.cpp

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -661,14 +661,6 @@ LOCAL RC FC lopNty4dt( // for DT- data type, get TY- type and PSOP to load it f
661661
sz = 4;
662662
break;
663663

664-
case DTWFLOC: // char arrays used in WFILE, 1-94
665-
case DTWFLID: // ..
666-
case DTWFLOC2: // 10-94
667-
lop = PSRATLODA; // record load char array: makes dm copy, leaves ptr in stack
668-
ty = TYSTR;
669-
sz = 4;
670-
break;
671-
672664
case DTCULSTR:
673665
lop = PSRATLODS; // record load string: loads pointer to CULSTR chars and leaves in stack
674666
ty = TYSTR;

src/shading.cpp

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -520,7 +520,6 @@ RC SURFGEOM::gx_SetupShading( // shading calcs setup
520520
// returns RCOK: success or no geometry specified
521521
// else RCBAD: bad geometry or addSurface fail
522522
{
523-
options;
524523
gx_pnIdx = -1; // no associated Penumbra surface
525524
RC rc = RCOK;
526525
if (gx_sgDet && !gx_IsEmpty())

src/strpak.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ static char Tmpstr[ TMPSTRSZ+2]; // buffer.
3131
// +2 extra bytes at end hold flag re overwrite check (obsolete? 7-10)
3232
static int TmpstrNx = 0; // Next available byte in Tmpstr[].
3333

34-
// == CULTSTR ==
34+
// == CULSTR ==
3535
// Persistent string type that can be manipulated in the CUL realm.
3636
// (e.g. user input data and expressions, probes etc.)
3737
// Implemented as indicies into a vector of std::string.

src/wfpak.cpp

Lines changed: 35 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1725,7 +1725,9 @@ WFILE::~WFILE()
17251725

17261726
record::Copy( pSrc, options); // verifies class (rt) same, copies whole derived class record. ancrec.cpp.
17271727

1728+
loc.FixAfterCopy();
17281729
wf_TDVFileTitle.FixAfterCopy();
1730+
wf_TDVFileTimeStamp.FixAfterCopy();
17291731

17301732
yac = new YACAM(); // overwrite yac pointer, if any
17311733
yacTDV = new YACAM();
@@ -1739,8 +1741,9 @@ void WFILE::wf_Init() // WFILE initialization function to call before each run
17391741
// DO NOT memset to 0 here: would destroy record base class header members.
17401742
{
17411743
wFileFormat = UNK;
1742-
VZero( loc, sizeof( loc));
1743-
VZero( lid, sizeof( lid));
1744+
loc.Release();
1745+
lid.Release();
1746+
loc2.Release();
17441747
yr = -1;
17451748
jd1 = -1;
17461749
jdl = -1;
@@ -1750,7 +1753,6 @@ void WFILE::wf_Init() // WFILE initialization function to call before each run
17501753
elev = 0.f;
17511754
taDbAvgYr = -999.f;
17521755
solartime = FALSE;
1753-
VZero( loc2, sizeof( loc2));
17541756
isLeap = 0;
17551757
firstDdm = 0;
17561758
lastDdm = 0;
@@ -1773,6 +1775,8 @@ void WFILE::wf_Init() // WFILE initialization function to call before each run
17731775
{ yac->close(); // insurance
17741776
yac->init(); // say no file open
17751777
}
1778+
1779+
wf_TDVInitHdrInfo();
17761780
if (yacTDV)
17771781
{ yacTDV->close();
17781782
yacTDV->init();
@@ -1892,7 +1896,7 @@ struct WFHTAB
18921896
USI hdrOffset; // offset to data item in header
18931897
UCH hdrLen; // length of data item in header
18941898
USI wfileOffset; // offset to data item in WFILE struct
1895-
UCH wfileLen; // length of item in WFILE struct -- added 10-94 to facilitate multiple header formats
1899+
UCH wfileLen; // length of item in WFILE struct
18961900
};
18971901
#define WFO(m) offsetof(WFILE,m) // WFILE member offset macro for use for WFHTAB.wfileOffeeset
18981902
#define WFS(m) (sizeof( ((WFILE *)0L)->m )) // WFILE member size macro for use for WFHTAB.wfileLen
@@ -1972,8 +1976,8 @@ static WFHTAB wfhTab_BSGS[] =
19721976
// ---header--- ---WFILE----
19731977
// dataType [#] offset & len offset & len
19741978
{
1975-
{ DTCH, 1, 53, 30, WFOS(loc), }, // location
1976-
{ DTCH, 1, 83, 11, WFOS(lid), }, // location id
1979+
{ DTCULSTR, 1, 53, 30, WFOS(loc), }, // location
1980+
{ DTCULSTR, 1, 83, 11, WFOS(lid), }, // location id
19771981
{ DTSI, 1, 94, 2, WFOS(yr), }, // year, 2 digits
19781982
{ DTFLOAT,1, 96, 6, WFOS(lat), }, // latitude
19791983
{ DTFLOAT,1, 102, 7, WFOS(lon), }, // longitude
@@ -2012,9 +2016,9 @@ static WFHTAB wfhTab_ET1[] =
20122016
// -----header------ ---WFILE----
20132017
// dataType [#] offset & length offset & len
20142018
{
2015-
{ DTCH, 1, E1OS(location1), WFOS(loc), }, // location 1
2016-
{ DTCH, 1, E1OS(location2), WFOS(loc2), }, // location 2
2017-
{ DTCH, 1, E1OS(locationID), WFOS(lid), }, // location id
2019+
{ DTCULSTR, 1,E1OS(location1), WFOS(loc), }, // location 1
2020+
{ DTCULSTR, 1,E1OS(location2), WFOS(loc2), }, // location 2
2021+
{ DTCULSTR, 1,E1OS(locationID), WFOS(lid), }, // location id
20182022
{ DTSI, 1, E1OS(wthrYear), WFOS(yr), }, // year, 4 digits
20192023
{ DTFLOAT,1, E1OS(latitude), WFOS(lat), }, // latitude
20202024
{ DTFLOAT,1, E1OS(longitude), WFOS(lon), }, // longitude
@@ -2108,16 +2112,22 @@ LOCAL RC FC decodeFld( // decode one by-column-number field to internal -- pot
21082112
char* pEnd = pBeg + srcLen; // ptr to 1st char after source data
21092113
while (pEnd > pBeg && (!pEnd[-1] || isspaceW(pEnd[-1]))) // deblank end
21102114
pEnd--;
2111-
char cSave = *pEnd; // save char after data
2115+
char cSave = *pEnd; // save char after data
21122116
*pEnd = '\0'; // and replace it with terminull -- given fields are not terminated.
2113-
while (isspaceW(*pBeg)) // deblank start
2117+
while (isspaceW(*pBeg)) // deblank start
21142118
pBeg++;
21152119

21162120
if (dt==DTCH) // if a character field
21172121
{
21182122
strncpy( (char *)dest, pBeg, destLen-1); // copy to dest with \0 at end
21192123
((char *)dest)[destLen-1] = '\0'; // ..
21202124
}
2125+
else if (dt == DTCULSTR)
2126+
{
2127+
CULSTR* pS = static_cast<CULSTR*>(dest);
2128+
pS->Set(pBeg);
2129+
2130+
}
21212131
else // DTSI or DTFLOAT -- numeric
21222132
{
21232133
// initial syntax check
@@ -2435,9 +2445,10 @@ RC WFILE::wf_CSWOpen( // open California CSW weather file
24352445
if (!rc)
24362446
{ wFileFormat = CSW; // accept that the format is CSW
24372447
// transfer location info (could be refined/improved)
2438-
strncpy0( loc, city.c_str(), sizeof( loc));
2439-
strncpy0( loc2, state.c_str(), sizeof( loc2));
2440-
strCatIf( loc2, sizeof( loc2), ", ", country.c_str());
2448+
loc = city.c_str();
2449+
char sTemp[200];
2450+
strncpy0( sTemp, state.c_str(), sizeof( sTemp));
2451+
loc2 = strCatIf( sTemp, sizeof( sTemp), ", ", country.c_str());
24412452
}
24422453
else
24432454
{ yac->close( erOp); // close file if open, nop if not open
@@ -2515,7 +2526,8 @@ RC WFILE::wf_TDVOpen( // open California Time of Day Valuation (TDV) file
25152526
#define _C( s) s,sizeof( s) // helper re getLineCSV calls
25162527
//----------------------------------------------------------------------------
25172528
void WFILE::wf_TDVInitHdrInfo()
2518-
{ memset( wf_TDVFileTimeStamp, 0, sizeof( wf_TDVFileTimeStamp));
2529+
{
2530+
wf_TDVFileTimeStamp.Release();
25192531
wf_TDVFileTitle.Release();
25202532
} // WFILE::wf_TDVInitHdrInfo
25212533
//----------------------------------------------------------------------------
@@ -2540,7 +2552,7 @@ RC WFILE::wf_TDVReadHdr( int erOp) // read / decode TDV file header
25402552
rc |= yacTDV->checkExpected( T1, "TDV Data (TDV/Btu)");
25412553
if (!rc)
25422554
// time stamp
2543-
rc = yacTDV->getLineCSV( erOp, 0, "C", _C( wf_TDVFileTimeStamp), NULL);
2555+
rc = yacTDV->getLineCSV( erOp, 0, "S", &wf_TDVFileTimeStamp, NULL);
25442556
if (!rc)
25452557
{ // title
25462558
rc = yacTDV->getLineCSV( erOp, 0, "SC", &wf_TDVFileTitle, _C( T2), NULL);
@@ -2679,9 +2691,9 @@ RC WFILE::wf_EPWOpen( // open EnergyPlus weather file
26792691
RC rc = RCOK;
26802692

26812693
// location (1st line)
2682-
char lineTag[ 200], xCity[ 100], xState[ 100], xCountry[ 100], xSource[ 100], xWMO[ 100];
2683-
rc = yac->getLineCSV( erOp, isLeap, "CCCCCCFFFF",
2684-
_C( lineTag), _C( xCity), _C( xState), _C( xCountry),
2694+
char lineTag[ 200], xState[ 100], xCountry[ 100], xSource[ 100], xWMO[ 100];
2695+
rc = yac->getLineCSV( erOp, isLeap, "CSCCCCFFFF",
2696+
_C( lineTag), &loc, _C( xState), _C( xCountry),
26852697
_C( xSource), _C( xWMO),
26862698
&lat, &lon, &tz, &elev, NULL);
26872699
elev = LSItoIP( elev); // m -> ft
@@ -2698,9 +2710,10 @@ RC WFILE::wf_EPWOpen( // open EnergyPlus weather file
26982710
if (!rc)
26992711
{ wFileFormat = EPW; // accept that the format is CSW
27002712
// transfer location info (could be refined/improved)
2701-
strncpy0( loc, xCity, sizeof( loc));
2702-
strncpy0( loc2, xState, sizeof( loc2));
2703-
strCatIf( loc2, sizeof( loc2), ", ", xCountry);
2713+
// loc, xCity, sizeof( loc));
2714+
char sTemp[200];
2715+
strncpy0( sTemp, xState, sizeof( sTemp));
2716+
loc2.Set(strCatIf(sTemp, sizeof(sTemp), ", ", xCountry));
27042717
}
27052718
else
27062719
{ yac->close( erOp); // close file if open, nop if not open

test/ref-win32-msvc/wthr01.rep

Lines changed: 24 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -2,9 +2,9 @@
22

33
Annual User-defined Report
44

5-
WF Name WF lat TOP lat WF lon TOP lon WF TZ TOP TZ WF elev TOP elev TDVDesc
6-
-------------------------------------------------- ------ ------- -------- -------- ------ ------ -------- -------- ------------------------------
7-
CA_SACRAMENTO-EXECUTIVE-AP_724830S_STYP20.epw 38.510 38.510 -121.50 -121.50 -8.00 -8.00 23.0 23.0 Test TDV data
5+
WF Name WF lat TOP lat WF lon TOP lon WF TZ TOP TZ WF elev TOP elev TDVDesc TDVTimeStamp
6+
-------------------------------------------------- ------ ------- -------- -------- ------ ------ -------- -------- -------------------- ------------------------------
7+
CA_SACRAMENTO-EXECUTIVE-AP_724830S_STYP20.epw 38.510 38.510 -121.50 -121.50 -8.00 -8.00 23.0 23.0 Test TDV data Mon 30-Jun-25 09:36:47 am
88

99

1010

@@ -2485,7 +2485,7 @@ Subhourly User-defined Report, Mon 03-Aug
24852485

24862486
! Log for Run 001:
24872487

2488-
! CSE 0.927.0-rc2 for Win32 console
2488+
! CSE 0.927.0-rc2+64bit-fixes.d8cc2a16.8.dirty for Win32 console
24892489

24902490

24912491

@@ -2692,7 +2692,8 @@ Input for Run 001:
26922692
REPORTCOL colHead="TOP TZ" [email protected] colDec=2 colWid=6
26932693
REPORTCOL colHead="WF elev" [email protected] colDec=1 colWid=8
26942694
REPORTCOL colHead="TOP elev" [email protected] colDec=1 colWid=8
2695-
REPORTCOL colHead="TDVDesc" [email protected] colWid=30
2695+
REPORTCOL colHead="TDVDesc" [email protected] colWid=20
2696+
REPORTCOL colHead="TDVTimeStamp" [email protected] colWid=30
26962697

26972698

26982699
# #define CSEBtuSF 1000
@@ -2783,9 +2784,9 @@ Input for Run 001:
27832784

27842785
Annual User-defined Report
27852786

2786-
WF Name WF lat TOP lat WF lon TOP lon WF TZ TOP TZ WF elev TOP elev TDVDesc
2787-
-------------------------------------------------- ------ ------- -------- -------- ------ ------ -------- -------- ------------------------------
2788-
CA_SACRAMENTO-EXECUTIVE-AP_724830S_STYP20.epw 38.510 38.510 -121.50 -121.50 -8.00 -8.00 23.0 23.0 Test TDV data
2787+
WF Name WF lat TOP lat WF lon TOP lon WF TZ TOP TZ WF elev TOP elev TDVDesc TDVTimeStamp
2788+
-------------------------------------------------- ------ ------- -------- -------- ------ ------ -------- -------- -------------------- ------------------------------
2789+
CA_SACRAMENTO-EXECUTIVE-AP_724830S_STYP20.epw 38.510 38.510 -121.50 -121.50 -8.00 -8.00 23.0 23.0 Test TDV data Mon 30-Jun-25 09:36:47 am
27892790

27902791

27912792

@@ -5258,7 +5259,7 @@ Subhourly User-defined Report, Mon 03-Aug
52585259

52595260
! Log for Run 002:
52605261

5261-
! CSE 0.927.0-rc2 for Win32 console
5262+
! CSE 0.927.0-rc2+64bit-fixes.d8cc2a16.8.dirty for Win32 console
52625263

52635264

52645265

@@ -5274,9 +5275,9 @@ Input for Run 002:
52745275

52755276
Annual User-defined Report
52765277

5277-
WF Name WF lat TOP lat WF lon TOP lon WF TZ TOP TZ WF elev TOP elev TDVDesc
5278-
-------------------------------------------------- ------ ------- -------- -------- ------ ------ -------- -------- ------------------------------
5279-
CA_SACRAMENTO-EXECUTIVE-AP_724830S_STYP20.epw 38.510 38.510 -121.50 -121.50 -8.00 -8.00 23.0 23.0 Test TDV data
5278+
WF Name WF lat TOP lat WF lon TOP lon WF TZ TOP TZ WF elev TOP elev TDVDesc TDVTimeStamp
5279+
-------------------------------------------------- ------ ------- -------- -------- ------ ------ -------- -------- -------------------- ------------------------------
5280+
CA_SACRAMENTO-EXECUTIVE-AP_724830S_STYP20.epw 38.510 38.510 -121.50 -121.50 -8.00 -8.00 23.0 23.0 Test TDV data Mon 30-Jun-25 09:36:47 am
52805281

52815282

52825283

@@ -7749,7 +7750,7 @@ Subhourly User-defined Report, Mon 03-Aug
77497750

77507751
! Log for Run 003:
77517752

7752-
! CSE 0.927.0-rc2 for Win32 console
7753+
! CSE 0.927.0-rc2+64bit-fixes.d8cc2a16.8.dirty for Win32 console
77537754

77547755

77557756

@@ -7765,9 +7766,9 @@ Input for Run 003:
77657766

77667767
Annual User-defined Report
77677768

7768-
WF Name WF lat TOP lat WF lon TOP lon WF TZ TOP TZ WF elev TOP elev TDVDesc
7769-
-------------------------------------------------- ------ ------- -------- -------- ------ ------ -------- -------- ------------------------------
7770-
CA_SACRAMENTO-EXECUTIVE-AP_724830S_STYP20.epw 38.510 38.510 -121.50 -121.50 -8.00 -8.00 23.0 23.0 Test TDV data
7769+
WF Name WF lat TOP lat WF lon TOP lon WF TZ TOP TZ WF elev TOP elev TDVDesc TDVTimeStamp
7770+
-------------------------------------------------- ------ ------- -------- -------- ------ ------ -------- -------- -------------------- ------------------------------
7771+
CA_SACRAMENTO-EXECUTIVE-AP_724830S_STYP20.epw 38.510 38.510 -121.50 -121.50 -8.00 -8.00 23.0 23.0 Test TDV data Mon 30-Jun-25 09:36:47 am
77717772

77727773

77737774

@@ -10240,7 +10241,7 @@ Subhourly User-defined Report, Mon 03-Aug
1024010241

1024110242
! Log for Run 004:
1024210243

10243-
! CSE 0.927.0-rc2 for Win32 console
10244+
! CSE 0.927.0-rc2+64bit-fixes.d8cc2a16.8.dirty for Win32 console
1024410245

1024510246

1024610247

@@ -10257,18 +10258,18 @@ Input for Run 004:
1025710258

1025810259

1025910260

10260-
! CSE 0.927.0-rc2 for Win32 console run(s) done: Thu 09-Oct-25 12: pm
10261+
! CSE 0.927.0-rc2+64bit-fixes.d8cc2a16.8.dirty for Win32 console run(s) done: Tue 14-Oct-25 4:1 pm
1026110262

1026210263
! Executable: d:\cse\builds\cse.exe
10263-
! 09-Oct-25 11: am (VS 14.29 3378176 bytes) (HPWH 1.26.0)
10264+
! 14-Oct-25 4:1 pm (VS 14.29 3392000 bytes) (HPWH 1.26.0)
1026410265
! Command line: -x! -t1 wthr01
1026510266
! Input file: D:\cse\test\wthr01.cse
1026610267
! Report file: D:\CSE\TEST\WTHR01.REP
1026710268

1026810269
! Timing info --
1026910270

10270-
! Input: Time = 0.21 Calls = 4 T/C = 0.0520
10271+
! Input: Time = 0.19 Calls = 4 T/C = 0.0483
1027110272
! AutoSizing: Time = 0.00 Calls = 0 T/C = 0.0000
10272-
! Simulation: Time = 2.44 Calls = 4 T/C = 0.6088
10273-
! Reports: Time = 0.02 Calls = 4 T/C = 0.0040
10274-
! Total: Time = 2.68 Calls = 1 T/C = 2.6750
10273+
! Simulation: Time = 2.00 Calls = 4 T/C = 0.4988
10274+
! Reports: Time = 0.01 Calls = 4 T/C = 0.0033
10275+
! Total: Time = 2.22 Calls = 1 T/C = 2.2180

test/wthr01.cse

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,8 @@ REPORT rpType = UDT rpFreq = YEAR rpCPL=-1
199199
REPORTCOL colHead="TOP TZ" [email protected] colDec=2 colWid=6
200200
REPORTCOL colHead="WF elev" [email protected] colDec=1 colWid=8
201201
REPORTCOL colHead="TOP elev" [email protected] colDec=1 colWid=8
202-
REPORTCOL colHead="TDVDesc" [email protected] colWid=30
202+
REPORTCOL colHead="TDVDesc" [email protected] colWid=20
203+
REPORTCOL colHead="TDVTimeStamp" [email protected] colWid=30
203204

204205

205206
#define CSEBtuSF 1000

0 commit comments

Comments
 (0)