StreamManager.hpp
The StreamManager object links names to files or other streams.
- Todo:
Ideally should also work with File
Note
Status: BETA
-
class StreamManager
- #include <StreamManager.hpp>
A class to maintain files and other streams.
Public Types
Public Functions
-
inline StreamManager()
-
StreamManager(const StreamManager&) = delete
-
inline ~StreamManager()
-
template<typename T>
inline T &AddStream(const std::string &name, T &in_stream) Add a stream maintained outside of manager (do not delete without removing first!)
-
inline void SetInputDefaultFile()
-
inline void SetOutputDefaultFile()
-
inline void SetIODefaultFile()
-
inline void SetInputDefaultString()
-
inline void SetOutputDefaultString()
-
inline void SetIODefaultString()
-
inline void SetInputDefaultStandard()
-
inline void SetOutputDefaultStandard()
Protected Functions
-
inline StreamInfo &GetInfo(const std::string &name)
-
inline const StreamInfo &GetInfo(const std::string &name) const
Protected Attributes
-
std::unordered_map<std::string, Ptr<StreamInfo>> streams
-
StreamInfo_None info_none
-
class StreamInfo
- #include <StreamManager.hpp>
Subclassed by StreamManager::StreamInfo_None, StreamManager::TypedStreamInfo< T, TYPE, ACCESS >
Public Functions
-
StreamInfo(const StreamInfo&) = delete
-
inline virtual ~StreamInfo()
-
inline bool IsFile() const
-
inline bool IsString() const
-
inline bool IsOther() const
-
inline bool IsInput() const
-
inline bool IsOutput() const
-
inline bool IsIO() const
-
inline bool IsInputFile() const
-
inline bool IsOutputFile() const
-
inline bool IsIOFile() const
-
inline bool IsOtherInput() const
-
inline bool IsOtherOutput() const
-
inline bool IsOtherIO() const
-
inline bool InputOK() const
-
inline bool OutputOK() const
-
inline bool IsOwned() const
-
StreamInfo(const StreamInfo&) = delete
-
struct StreamInfo_None : public StreamManager::StreamInfo
- #include <StreamManager.hpp>
Public Functions
-
inline StreamInfo_None()
-
inline StreamInfo_None()
-
template<typename T, Type TYPE, Access ACCESS>
class TypedStreamInfo : public StreamManager::StreamInfo - #include <StreamManager.hpp>
Public Static Attributes
-
inline StreamManager()