X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=DEVELOPPER;h=fd8a67964977e52c0eae3955c520a58f77b13ed1;hb=14900333988858a95935ec735224433cf308c21c;hp=4a3399383c2a394dae0420cbcad046f414818510;hpb=456a52cb5a324dc4cd4b4b3e0a4b155605bfcc21;p=gdcm.git diff --git a/DEVELOPPER b/DEVELOPPER index 4a339938..fd8a6796 100644 --- a/DEVELOPPER +++ b/DEVELOPPER @@ -1,5 +1,5 @@ The following comments are intended for core gdcm developpers. - + * Compiling gdcm: - Checkout the sources to an arbitrary directory noted GDCM (e.g. ~/cvs/gdcm). - Checkout the test images to an arbitrary directory noted GDCMDATA @@ -343,12 +343,23 @@ gdcm coding style and religious/agnostic beliefs (proposition) typedef Header* HeaderPointer; HeaderPointer MyHeaderPointer; - One notorious counter example for non using C style inclusion concerns - exact-width intergers (since there seem to be no equivalent for C++). + exact-width integers (since there seem to be no equivalent for C++). When using exact-width integers use the typedef names defined by the Basic ISO C99: 7.18 Integer types i.e. int8_t int16_t int32_t int64_t (signed integers) and uint8_t uint16_t uint32_t uint64_t (unsigned integers). + Conversion table is then: + unsigned char -> uint8_t; + unsigned short -> uint16_t; + unsigned int -> uint32_t; + unsigned long -> uint32_t; + unsigned long long -> uint64_t; + (signed) char -> int8_t; + short -> int16_t; + int -> int32_t; + long -> int32_t; + long long -> int64_t; Hence do not use declarations like "unsigned int". With g++, accessing those typedef is achieved by the following #include