Skip to content

Commit a343336

Browse files
committed
Report cFAC version used to create a session
1 parent 51e9950 commit a343336

File tree

3 files changed

+19
-5
lines changed

3 files changed

+19
-5
lines changed

cfacdb/cfacdb.c

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -329,7 +329,7 @@ int cfacdb_sessions(const cfacdb_t *cdb,
329329
" FROM _sessions_v" \
330330
" ORDER BY sid";
331331
} else {
332-
sql = "SELECT sid, symbol, anum, mass, nele_min, nele_max, tstamp" \
332+
sql = "SELECT sid, symbol, anum, mass, nele_min, nele_max, version, tstamp" \
333333
" FROM _sessions_v" \
334334
" ORDER BY sid";
335335
}
@@ -351,8 +351,10 @@ int cfacdb_sessions(const cfacdb_t *cdb,
351351
cbdata.nele_min = sqlite3_column_int (stmt, 4);
352352
cbdata.nele_max = sqlite3_column_int (stmt, 5);
353353
if (cdb->db_format >= 4) {
354-
cbdata.tstamp = sqlite3_column_int (stmt, 6);
354+
cbdata.version = sqlite3_column_int(stmt, 6);
355+
cbdata.tstamp = sqlite3_column_int(stmt, 7);
355356
} else {
357+
cbdata.version = 0;
356358
cbdata.tstamp = cbdata.sid;
357359
}
358360

cfacdb/cfacdbu.c

Lines changed: 14 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -172,11 +172,22 @@ static int sessions_sink(const cfacdb_t *cdb,
172172
cdu->nsid++;
173173

174174
if (cdu->print_info) {
175-
char stime[100];
175+
char stime[100], sver[64];
176176
struct tm *tmp = localtime(&cbdata->tstamp);
177177
strftime(stime, 100, "%c", tmp);
178-
printf("Session #%lu (sid = %ld, tstamp = %s):\n",
179-
cdu->nsid, cbdata->sid, stime);
178+
179+
if (cbdata->version > 0) {
180+
int vmax, vmin, vnano;
181+
vmax = cbdata->version/10000;
182+
vmin = (cbdata->version - 10000*vmax)/100;
183+
vnano = cbdata->version - 10000*vmax - 100*vmin;
184+
sprintf(sver, " version = %d.%d.%d,", vmax, vmin, vnano);
185+
} else {
186+
sver[0] = '\0';
187+
}
188+
189+
printf("Session #%lu (sid = %ld,%s tstamp = %s):\n",
190+
cdu->nsid, cbdata->sid, sver, stime);
180191
printf("\t%s (Z = %d, mass = %.2f) nele = %d ... %d\n",
181192
cbdata->sym, cbdata->anum, cbdata->mass,
182193
cbdata->nele_min, cbdata->nele_max);

include/cfacdb.h

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -98,6 +98,7 @@ typedef struct {
9898
double mass; /*!< Atomic mass. */
9999
unsigned int nele_min; /*!< Minimal number of electrons. */
100100
unsigned int nele_max; /*!< Maximal number of electrons. */
101+
unsigned int version; /*!< cFAC version. */
101102
time_t tstamp; /*!< Time stamp. */
102103
} cfacdb_sessions_data_t;
103104

0 commit comments

Comments
 (0)