csaRecord.h Source File

- Main Page
- Namespaces
- Classes
- Files

- File List
- File Members

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
csaRecord.h
Go to the documentation of this file.
1 #ifndef OSL_CSARECORD_H
2 #define OSL_CSARECORD_H
3
4 #include "osl/record/record.h"
5 #include "osl/record/csa.h"
6 #include "osl/state/numEffectState.h"
7 #include <boost/shared_ptr.hpp>
8 #include <string>
9 #include <iosfwd>
10 namespace osl
11 {
12 namespace record
13 {
14 namespace csa
15 {
16 class InputStream : public IRecordStream
17 {
18 private:
19 std::istream& is;
20 SimpleState state;
21 boost::shared_ptr<RecordVisitor> rv;
22 public:
23 InputStream(std::istream& is);
24 InputStream(std::istream& is, boost::shared_ptr<RecordVisitor> rv);
25 virtual ~InputStream();
26
28 virtual void load(Record*);
29 const SimpleState& getState() const { return state;}
30 };
31
32 class CsaFile
33 {
34 private:
35 Record rec;
36 public:
37 CsaFile(const std::string& fileName);
38 ~CsaFile();
39
40 Record const& getRecord() const;
41 const NumEffectState getInitialState() const;
42 };
43
44 } // namespace csa
45 } // namespace record
46 using record::csa::CsaFile;
47
48 } // namespace osl
49 #endif /* OSL_CSARECORD_H */
50 // ;;; Local Variables:
51 // ;;; mode:c++
52 // ;;; c-basic-offset:2
53 // ;;; End: