roadrunner  2.6.0
Fast simulator for SBML models
rrcStringList.h
1 #ifndef rrcStringListH
2 #define rrcStringListH
3 #include <vector>
4 #include <string>
5 #include "rrc_exporter.h"
6 #include "rrConstants.h"
7 #include "rrc_types.h"
8 
9 
10 namespace rrc
11 {
12 using std::vector;
13 using std::string;
14 using std::ostream;
15 
19 class C_DECL_SPEC StringList
20 {
21  protected:
22  vector<string> mStrings;
23  vector<string>::iterator mLI;
24 
25  public:
26  StringList();
27  StringList(char** stringList, const int& count);
28  StringList(const string& str, const string& delimiters = ", ");
29  StringList(const vector<string>& strings);
30  StringList(const StringList& cp);
31  StringList(rrc::RRStringArrayPtr cp);
32  ~StringList();
33 
34  void InsertAt(const int& index, const string& item);
35  void Append(const StringList& list);
36  string AsString(const string& delimiter = ",") const;
37 
41  unsigned int size() const;
42 
43 
44  unsigned int Count() const;
45 
46 
47  StringList& operator=(const StringList& rhs);
48  StringList& operator=(const vector<string>& rhs);
49 
50  string& operator[](const int& index);
51  const string& operator[](const int& index) const;
52  StringList operator-(const StringList& rhs);
53  void removeAt(const int& index);
54  int find(const string& item);
55  int indexOf(const string& item);
56  void clear();
57  void empty();
58  bool Contains(const string& item) const;
59  bool DontContain(const string& item) const;
60  void add(const string& item);
61  vector<string>::iterator begin();
62  vector<string>::iterator end();
63  void PreFix(const string& fix);
64  void PostFix(const string& fix);
65  RR_DECLSPEC
66  friend ostream& operator<<(ostream& stream, const StringList& list);
67 
72  //operator vector<string>() const { return mStrings; }
73  operator const vector<string>&() const { return mStrings;}
74 };
78 }
79 #endif
roadRunner C wrappers 2012
roadRunner C wrappers 2012
struct RRStringArray * RRStringArrayPtr
Structure for a simple vector of strings.