xc
ActionsFamily.h
1 // -*-c++-*-
2 //----------------------------------------------------------------------------
3 // xc utils library; general purpose classes and functions.
4 //
5 // Copyright (C) Luis C. PĂ©rez Tato
6 //
7 // XC utils is free software: you can redistribute it and/or modify
8 // it under the terms of the GNU General Public License as published by
9 // the Free Software Foundation, either version 3 of the License, or
10 // (at your option) any later version.
11 //
12 // This software is distributed in the hope that it will be useful, but
13 // WITHOUT ANY WARRANTY; without even the implied warranty of
14 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 // GNU General Public License for more details.
16 //
17 // You should have received a copy of the GNU General Public License
18 // along with this program.
19 // If not, see <http://www.gnu.org/licenses/>.
20 //----------------------------------------------------------------------------
21 //ActionsFamily.h
22 
23 
24 #ifndef FAMILIAACCIONES_H
25 #define FAMILIAACCIONES_H
26 
27 #include "utility/load_combinations/actions/ActionWrapperList.h"
28 
29 namespace cmb_acc{
30 class LoadCombinationVector;
31 class CombinationFactorsMap;
32 class ActionsAndFactors;
33 class LeadingActionInfo;
34 
36 //
45  {
46  private:
48 
49  protected:
50  friend class ActionsAndFactors;
51  public:
52  ActionsFamily(const std::string &nmb="");
53  inline virtual ~ActionsFamily(void) {}
54  ActionWrapper &insert(const Action &,const std::string &, const std::string &);
55  ActionWrapper &insertGroup(const std::vector<Action> &, const std::vector<std::string> &, const std::string &);
56  ActionWrapper &insertGroupPy(const boost::python::list &, const std::string &);
57 
59  inline const ActionWrapperList &getActions(void) const
60  { return actions; }
63  { return actions; }
65  inline void setActions(const ActionWrapperList &acc)
66  { actions= acc; }
67 
69  inline bool empty(void) const
70  { return actions.empty(); }
71 
72  const ActionsAndFactors *getActionsAndFactors(void) const;
75  };
76 } //fin namespace nmb_acc.
77 
78 #endif
List of representative values of actions (ActionWrapper objects).
Definition: ActionWrapperList.h:42
Contenedor de coeficientes de simultaneidad de acciones.
Definition: CombinationFactorsMap.h:39
Partial safety factors container.
Definition: PartialSafetyFactorsMap.h:37
Routines to generate combinations of actions.
Container for all the action families.
Definition: ActionsAndFactors.h:34
const PartialSafetyFactorsMap * getPtrPartialSafetyFactors(void) const
Return a pointer to the partial safety factors container.
Definition: ActionsFamily.cc:60
const ActionsAndFactors * getActionsAndFactors(void) const
Return the container that contains this object.
Definition: ActionsFamily.cc:38
bool empty(void) const
brief Return true if no actions in the family.
Definition: ActionsFamily.h:69
ActionsFamily(const std::string &nmb="")
Default constructor.
Definition: ActionsFamily.cc:31
const ActionWrapperList & getActions(void) const
Return the actions in the family.
Definition: ActionsFamily.h:59
void setActions(const ActionWrapperList &acc)
Set the actions in the family.
Definition: ActionsFamily.h:65
Action or linear combination of actions.
Definition: Action.h:44
ActionWrapper & insertGroupPy(const boost::python::list &, const std::string &)
Insert the group of actions being passed as parameter and sets its combination and partial safety fac...
Definition: ActionsFamily.cc:101
const CombinationFactorsMap * getPtrCombinationFactors(void) const
Return a pointer to the combination factors container.
Definition: ActionsFamily.cc:50
ActionWrapper & insertGroup(const std::vector< Action > &, const std::vector< std::string > &, const std::string &)
Insert the group of actions being passed as parameter and sets its combination and partial safety fac...
Definition: ActionsFamily.cc:88
ActionWrapper & insert(const Action &, const std::string &, const std::string &)
Insert the action argument and sets the its combination and partial safety factors.
Definition: ActionsFamily.cc:76
Base class for action design values and action groups.
Definition: ActionWrapper.h:42
Object identified by a name.
Definition: NamedEntity.h:37
Definition: __init__.py:1
Family of actions (permanent, variable, accidental,...)
Definition: ActionsFamily.h:44
ActionWrapperList & getActions(void)
Return the actions in the family.
Definition: ActionsFamily.h:62