#include <CdbBdbNTupleConversionRules.hh>
Public Types | |
| typedef long | Transient |
| typedef long long | Persistent |
Static Public Member Functions | |
| const Persistent | to_persistent (const Transient &value) |
| const Transient | to_transient (const Persistent &value) |
Accordint to Objectivity/DDL documentation the 'long' type is 32 bit integer on all platforms except DEC Alpha. And it's 64 bit integer on DEC Alpha.
In GNU C++ compiler (at least before and including 2.95.3) the 'long' is typedef-ed as 'long int', which would confuse DDL compiler. The DDL won't be able to map this type any any of known elementary persistent types of predefined width.
SOLUTION: Map C++ 'long' into DDL 'long long', which is known to DDL as 64 bit type.
Definition at line 66 of file CdbBdbNTupleConversionRules.hh.
|
|
Definition at line 69 of file CdbBdbNTupleConversionRules.hh. |
|
|
Definition at line 68 of file CdbBdbNTupleConversionRules.hh. |
|
|
Definition at line 71 of file CdbBdbNTupleConversionRules.hh. |
|
|
Definition at line 72 of file CdbBdbNTupleConversionRules.hh. |
1.3-rc3