/** * \file ListCLASSNAMEContainer.h \brief Store a list of PLURALVARIABLETYPE * * This file is generated by a script (core/tools/make-container). * Do not edit directly. * * Copyright 2007-2010 IMP Inventors. All rights reserved. */ #ifndef IMPCONTAINER_LIST_HEADERNAME_CONTAINER_H #define IMPCONTAINER_LIST_HEADERNAME_CONTAINER_H #include "container_config.h" #include IMPCONTAINER_BEGIN_NAMESPACE //! Store a list of PLURALVARIABLETYPE /** \note The indexes can change when particles are inserted as the list is maintained in sorted order. */ class IMPCONTAINEREXPORT ListCLASSNAMEContainer: #if defined(IMP_DOXYGEN) || defined(SWIG) public CLASSNAMEContainer #else public core::internal::CoreListCLASSNAMEContainer #endif { typedef core::internal::CoreListCLASSNAMEContainer P; // for the change versions ListCLASSNAMEContainer(); public: //! construct and pass an initial set of CLASSNAMEs ListCLASSNAMEContainer(const PLURALVARIABLETYPE &ps, std::string name= "ListCLASSNAMEContainer %1%"); ListCLASSNAMEContainer(Model *m, std::string name= "ListCLASSNAMEContainer %1%"); ListCLASSNAMEContainer(Model *m, const char *name); #if defined(IMP_DOXYGEN) || defined(SWIG) /** @name Methods to control the contained objects This container stores a list of CLASSNAME objects. To manipulate the list use these methods. */ /**@{*/ void add_FUNCTIONNAME(ARGUMENTTYPE vt); void add_FUNCTIONNAMEs(const PLURALVARIABLETYPE &c); void set_FUNCTIONNAMEs(PLURALVARIABLETYPE c); IMP_NO_DOXYGEN(void add_FUNCTIONNAMEs(const PLURALSTORAGETYPE &c) { add_FUNCTIONNAMEs(static_cast(c)); }) IMP_NO_DOXYGEN(void set_FUNCTIONNAMEs(const PLURALSTORAGETYPE &c) { set_FUNCTIONNAMEs(static_cast(c)); }) void clear_FUNCTIONNAMEs(); /**@}*/ IMP_NO_DOXYGEN(bool get_is_up_to_date() const); IMP_HEADERNAME_CONTAINER(ListCLASSNAMEContainer); #else static ListCLASSNAMEContainer *create_untracked_container() { ListCLASSNAMEContainer *lsc = new ListCLASSNAMEContainer(); return lsc; } IMP_OBJECT(ListCLASSNAMEContainer); #endif }; IMP_OBJECTS(ListCLASSNAMEContainer,ListCLASSNAMEContainers); IMPCONTAINER_END_NAMESPACE #endif /* IMPCONTAINER_LIST_HEADERNAME_CONTAINER_H */