IMP Reference Guide
2.17.0
The Integrative Modeling Platform
|
Helper macros for implementing IMP
Objects.
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"
Go to the source code of this file.
Macros | |
#define | IMP_GENERIC_OBJECT(Name, lcname, targument, carguments, cparguments) |
Typedefs a default instantiation for a generic (templated) object. More... | |
#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... | |
Helper macros for implementing IMP
Objects.
Copyright 2007-2022 IMP Inventors. All rights reserved.
Definition in file object_macros.h.
#define IMP_GENERIC_OBJECT | ( | Name, | |
lcname, | |||
targument, | |||
carguments, | |||
cparguments | |||
) |
Typedefs a default instantiation for a generic (templated) object.
Define type [Name] to be an an instantiation of of Generic[Name] with template targument, and a function create_[lcname]() that generates a newly allocated object of type [Name], taking parameters [crguments] and internally paassing [cparguments] to the constructor.
Definition at line 60 of file object_macros.h.
#define IMP_NEW | ( | Typename, | |
varname, | |||
args | |||
) | IMP::Pointer<Typename> varname(new Typename args) |
Declare a ref counted pointer to a new object.
[in] | Typename | The namespace qualified type being declared |
[in] | varname | The name for the ref counted pointer |
[in] | args | The arguments to the constructor, or () if there are none. Please read the documentation for IMP::Pointer before using. |
Definition at line 74 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.