diff --git a/stepmania/src/CourseWriterCRS.cpp b/stepmania/src/CourseWriterCRS.cpp index f85b353242..c35a08f695 100644 --- a/stepmania/src/CourseWriterCRS.cpp +++ b/stepmania/src/CourseWriterCRS.cpp @@ -5,12 +5,11 @@ #include "RageLog.h" #include "RageUtil.h" #include "song.h" +#include "RageFileDriverMemory.h" bool CourseWriterCRS::Write( const Course &course, const CString &sPath, bool bSavingCache ) { - ASSERT( !course.m_bIsAutogen ); - RageFile f; if( !f.Open( sPath, RageFile::WRITE ) ) { @@ -18,6 +17,20 @@ bool CourseWriterCRS::Write( const Course &course, const CString &sPath, bool bS return false; } + return CourseWriterCRS::Write( course, f, bSavingCache ); +} + +void CourseWriterCRS::GetEditFile( const Course *pCourse, CString &sOut ) +{ + RageFileObjMem mem; + CourseWriterCRS::Write( *pCourse, mem, true ); + sOut = mem.GetString(); +} + +bool CourseWriterCRS::Write( const Course &course, RageFileBasic &f, bool bSavingCache ) +{ + ASSERT( !course.m_bIsAutogen ); + f.PutLine( ssprintf("#COURSE:%s;", course.m_sMainTitle.c_str()) ); if( course.m_sMainTitleTranslit != "" ) f.PutLine( ssprintf("#COURSETRANSLIT:%s;", course.m_sMainTitleTranslit.c_str()) ); @@ -137,11 +150,6 @@ bool CourseWriterCRS::Write( const Course &course, const CString &sPath, bool bS return true; } -void CourseWriterCRS::GetEditFile( const Course *pCourse, CString &sOut ) -{ - -} - /* * (c) 2001-2004 Chris Danford, Glenn Maynard diff --git a/stepmania/src/CourseWriterCRS.h b/stepmania/src/CourseWriterCRS.h index 1c9ee300a2..d38e6702c9 100644 --- a/stepmania/src/CourseWriterCRS.h +++ b/stepmania/src/CourseWriterCRS.h @@ -4,10 +4,12 @@ #define CourseWriterCRS_H class Course; +class RageFileBasic; class CourseWriterCRS { public: + static bool Write( const Course &course, RageFileBasic &f, bool bSavingCache ); static bool Write( const Course &course, const CString &sPath, bool bSavingCache ); static void GetEditFile( const Course *pCourse, CString &sOut ); };