src/config-store/model/raw-text-config.h
author Mitch Watrous <watrous@u.washington.edu>
Thu, 24 Mar 2011 09:23:44 -0700
changeset 6941 9d2c79c992d7
parent 4273 src/contrib/raw-text-config.h@fb4423206618
child 7234 0572de06ae29
permissions -rw-r--r--
Split contrib module into config-store and tools
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
4273
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     1
#ifndef RAW_TEXT_CONFIG_H
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     2
#define RAW_TEXT_CONFIG_H
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     3
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     4
#include <string>
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     5
#include <fstream>
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     6
#include "file-config.h"
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     7
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     8
namespace ns3 {
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
     9
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    10
class RawTextConfigSave : public FileConfig
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    11
{
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    12
public:
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    13
  RawTextConfigSave ();
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    14
  virtual ~RawTextConfigSave ();
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    15
  virtual void SetFilename (std::string filename);
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    16
  virtual void Default (void);
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    17
  virtual void Global (void);
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    18
  virtual void Attributes (void);
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    19
private:
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    20
  std::ofstream *m_os;
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    21
};
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    22
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    23
class RawTextConfigLoad : public FileConfig
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    24
{
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    25
public:
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    26
  RawTextConfigLoad ();
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    27
  virtual ~RawTextConfigLoad ();
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    28
  virtual void SetFilename (std::string filename);
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    29
  virtual void Default (void);
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    30
  virtual void Global (void);
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    31
  virtual void Attributes (void);
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    32
private:
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    33
  std::string Strip (std::string value);
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    34
  std::ifstream *m_is;
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    35
};
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    36
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    37
} // namespace ns3
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    38
fb4423206618 xml support for ConfigStore
Mathieu Lacage <mathieu.lacage@sophia.inria.fr>
parents:
diff changeset
    39
#endif /* RAW_TEXT_CONFIG_H */