IMP logo
IMP Reference Guide  develop.4056850,2019/07/19
The Integrative Modeling Platform
object_macros.h File Reference

Various general useful macros for IMP. More...

#include <IMP/kernel_config.h>
#include "doxygen_macros.h"
#include "ref_counted_macros.h"
#include "Vector.h"
#include "Pointer.h"
#include "WeakPointer.h"
#include "SetLogState.h"
+ Include dependency graph for object_macros.h:
+ This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Macros

#define IMP_GENERIC_OBJECT(Name, lcname, targument, carguments, cparguments)
 
#define IMP_NEW(Typename, varname, args)   IMP::Pointer<Typename> varname(new Typename args)
 Declare a ref counted pointer to a new object. More...
 
#define IMP_OBJECT_METHODS(Name)
 Define the basic things needed by any Object. More...
 
#define IMP_OBJECTS(Name, PluralName)
 Define the types for storing lists of object pointers. More...
 

Detailed Description

Various general useful macros for IMP.

Copyright 2007-2019 IMP Inventors. All rights reserved.

Definition in file object_macros.h.

Macro Definition Documentation

#define IMP_NEW (   Typename,
  varname,
  args 
)    IMP::Pointer<Typename> varname(new Typename args)

Declare a ref counted pointer to a new object.

Parameters
[in]TypenameThe namespace qualified type being declared
[in]varnameThe name for the ref counted pointer
[in]argsThe arguments to the constructor, or () if there are none. Please read the documentation for IMP::Pointer before using.
Examples:
core/simple.cpp.

Definition at line 64 of file object_macros.h.

#define IMP_OBJECT_METHODS (   Name)

Define the basic things needed by any Object.

This defines

Definition at line 25 of file object_macros.h.

#define IMP_OBJECTS (   Name,
  PluralName 
)

Define the types for storing lists of object pointers.

The macro defines the types PluralName and PluralNameTemp, which are vectors of either reference-counting or non reference-counting pointers to Name objects, respectively. PluralName should be Names unless the English spelling is different.

Definition at line 44 of file object_macros.h.