00001
00002
00003
00004
00005
00006
00007
00008
00009
00010 #ifndef IMPCONTAINER_LIST_TRIPLET_CONTAINER_H
00011 #define IMPCONTAINER_LIST_TRIPLET_CONTAINER_H
00012
00013 #include "container_config.h"
00014 #include <IMP/core/internal/CoreListTripletContainer.h>
00015
00016 IMPCONTAINER_BEGIN_NAMESPACE
00017
00018
00019
00020
00021
00022 class IMPCONTAINEREXPORT ListTripletContainer:
00023 #if defined(IMP_DOXYGEN) || defined(SWIG)
00024 public TripletContainer
00025 #else
00026 public core::internal::CoreListTripletContainer
00027 #endif
00028 {
00029 typedef core::internal::CoreListTripletContainer P;
00030
00031 ListTripletContainer(bool);
00032 public:
00033
00034 ListTripletContainer(const ParticleTriplets &ps,
00035 std::string name= "ListTripletContainer %1%");
00036
00037 ListTripletContainer(std::string name= "ListTripletContainer %1%");
00038 ListTripletContainer(const char *name);
00039
00040 #if defined(IMP_DOXYGEN) || defined(SWIG)
00041
00042
00043
00044
00045
00046
00047 void add_particle_triplet(const ParticleTriplet& vt);
00048 void add_particle_triplets(const ParticleTripletsTemp &c);
00049 void set_particle_triplets(ParticleTripletsTemp c);
00050 IMP_NO_DOXYGEN(void add_particle_triplets(const ParticleTriplets &c) {
00051 add_particle_triplets(static_cast<const ParticleTripletsTemp&>(c));
00052 })
00053 IMP_NO_DOXYGEN(void set_particle_triplets(const ParticleTriplets &c) {
00054 set_particle_triplets(static_cast<ParticleTripletsTemp>(c));
00055 })
00056 void clear_particle_triplets();
00057
00058 IMP_TRIPLET_CONTAINER(ListTripletContainer);
00059 #else
00060 static ListTripletContainer *create_untracked_container() {
00061 ListTripletContainer *lsc = new ListTripletContainer(false);
00062 return lsc;
00063 }
00064 IMP_OBJECT(ListTripletContainer);
00065 #endif
00066 };
00067
00068
00069 IMPCONTAINER_END_NAMESPACE
00070
00071 #endif