8 #ifndef IMPKERNEL_VERSION_INFO_H 
    9 #define IMPKERNEL_VERSION_INFO_H 
   11 #include <IMP/kernel_config.h> 
   18 #include <cereal/access.hpp> 
   21 IMPKERNEL_BEGIN_NAMESPACE
 
   32   VersionInfo(std::string module, std::string version);
 
   36   std::string get_module()
 const { 
return module_; }
 
   38   std::string get_version()
 const { 
return version_; }
 
   41                     "Attempting to use uninitialized version info");
 
   42     out << module_ << 
" " << version_;
 
   47   std::string module_, version_;
 
   48   friend class cereal::access;
 
   50   template<
class Archive> 
void serialize(Archive &ar) {
 
   51     ar(module_, version_);
 
   56 IMPKERNEL_END_NAMESPACE
 
#define IMP_COMPARISONS_2(Name, f0, f1)
Implement comparison in a class using field as the variable to compare. 
 
#define IMP_SHOWABLE_INLINE(Name, how_to_show)
Declare the methods needed by an object that can be printed. 
 
Helper macros for implementing comparisons of IMP objects. 
 
Exception definitions and assertions. 
 
A more IMP-like version of the std::vector. 
 
Base class for a simple primitive-like type. 
 
#define IMP_VALUES(Name, PluralName)
Define the type for storing sets of values. 
 
Version and module information for Objects. 
 
Helper macros for throwing and handling exceptions. 
 
Base class for a simple primitive-like type. 
 
#define IMP_USAGE_CHECK(expr, message)
A runtime test for incorrect usage of a class or method. 
 
Macros to help in implementing Value objects. 
 
Macros to help with objects that can be printed to a stream.