#ifndef __SFJP_ROAST_EX__file__iso9660__eltorito_HPP__
#define __SFJP_ROAST_EX__file__iso9660__eltorito_HPP__
+#include <fstream>
+#include "roast/lexical/string_rule.hpp"
+
namespace roast
{
namespace iso9660
{
+ namespace eltorito
+ {
+ using namespace ::roast::lexical::rule;
+
+ typedef soft_repeat< unibyte<0>, 0x8800 > rule;
+ }
+
+ class eltorito_writer
+ {
+ public:
+ bool write(const char* filename, const unsigned char* boot_img, size_t size )
+ {
+ ::std::fstream fs(filename, std::ios::out | std::ios::binary);
+ if ( fs.fail() )
+ return false;
+
+ eltorito::rule rl;
+ rl.generate(fs, boot_img);
+ return true;
+ }
+ };
}
}