00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019 #ifndef TORC_BITSTREAM_OUTPUTSTREAMHELPERS_HPP
00020 #define TORC_BITSTREAM_OUTPUTSTREAMHELPERS_HPP
00021
00022 #include <boost/cstdint.hpp>
00023 #include <iosfwd>
00024
00025 namespace torc {
00026 namespace bitstream {
00027
00028 class Bitstream;
00029 class Spartan6Bitstream;
00030
00031 class Spartan3E;
00032 class Spartan6;
00033
00034 class Virtex;
00035 class Virtex2;
00036 class Virtex4;
00037 class Virtex5;
00038 class Virtex6;
00039 class Virtex7;
00040
00041
00042 std::ostream& operator <<(std::ostream& os, const Spartan6Bitstream& rhs);
00043
00044 std::ostream& operator <<(std::ostream& os, const Bitstream& rhs);
00045
00046 std::ostream& operator <<(std::ostream& os, const Spartan3E& rhs);
00047
00048 std::ostream& operator <<(std::ostream& os, const Spartan6& rhs);
00049
00050 std::ostream& operator <<(std::ostream& os, const Virtex& rhs);
00051
00052 std::ostream& operator <<(std::ostream& os, const Virtex2& rhs);
00053
00054 std::ostream& operator <<(std::ostream& os, const Virtex4& rhs);
00055
00056 std::ostream& operator <<(std::ostream& os, const Virtex5& rhs);
00057
00058 std::ostream& operator <<(std::ostream& os, const Virtex6& rhs);
00059
00060 std::ostream& operator <<(std::ostream& os, const Virtex7& rhs);
00061
00062 class Hex16 {
00063 boost::uint16_t mWord;
00064 public:
00065 Hex16(boost::uint16_t rhs) : mWord(rhs) {};
00066 friend std::ostream& operator <<(std::ostream& os, const Hex16& rhs);
00067 };
00068
00069 class Hex32 {
00070 boost::uint32_t mWord;
00071 public:
00072 Hex32(boost::uint32_t rhs) : mWord(rhs) {};
00073 friend std::ostream& operator <<(std::ostream& os, const Hex32& rhs);
00074 };
00075
00076
00077 std::ostream& operator <<(std::ostream& os, const Hex16& rhs);
00078
00079
00080 std::ostream& operator <<(std::ostream& os, const Hex32& rhs);
00081
00082 }
00083 }
00084
00085 #endif // TORC_BITSTREAM_OUTPUTSTREAMHELPERS_HPP