merge identical copying code

This commit is contained in:
Glenn Maynard
2005-12-21 04:05:08 +00:00
parent f6900259d1
commit 5efc86a81a
+29 -48
View File
@@ -241,22 +241,15 @@ static CString TransferStatsMemoryCardToMachine()
return "Stats transferred to machine."; return "Stats transferred to machine.";
} }
static CString CopyEditsMachineToMemoryCard() static void CopyEdits( const CString &sFrom, const CString &sTo, int &iNumAttempted, int &iNumSuccessful, int &iNumOverwritten )
{ {
PlayerNumber pn = GetFirstReadyMemoryCard(); iNumAttempted = 0;
if( pn == PLAYER_INVALID ) iNumSuccessful = 0;
return "Edits not copied - No memory cards ready."; iNumOverwritten = 0;
if( !MEMCARDMAN->IsMounted(pn) )
MEMCARDMAN->MountCard(pn);
int iNumAttempted = 0;
int iNumSuccessful = 0;
int iNumOverwritten = 0;
{ {
CString sFromDir = PROFILEMAN->GetProfileDir(ProfileSlot_Machine) + EDIT_STEPS_SUBDIR; CString sFromDir = sFrom + EDIT_STEPS_SUBDIR;
CString sToDir = MEM_CARD_MOUNT_POINT[pn] + (CString)PREFSMAN->m_sMemoryCardProfileSubdir + "/" + EDIT_STEPS_SUBDIR; CString sToDir = sTo + EDIT_STEPS_SUBDIR;
vector<CString> vsFiles; vector<CString> vsFiles;
GetDirListing( sFromDir+"*.edit", vsFiles, false, false ); GetDirListing( sFromDir+"*.edit", vsFiles, false, false );
@@ -272,8 +265,8 @@ static CString CopyEditsMachineToMemoryCard()
} }
{ {
CString sFromDir = PROFILEMAN->GetProfileDir(ProfileSlot_Machine) + EDIT_COURSES_SUBDIR; CString sFromDir = sFrom + EDIT_COURSES_SUBDIR;
CString sToDir = MEM_CARD_MOUNT_POINT[pn] + (CString)PREFSMAN->m_sMemoryCardProfileSubdir + "/" + EDIT_COURSES_SUBDIR; CString sToDir = sTo + EDIT_COURSES_SUBDIR;
vector<CString> vsFiles; vector<CString> vsFiles;
GetDirListing( sFromDir+"*.crs", vsFiles, false, false ); GetDirListing( sFromDir+"*.crs", vsFiles, false, false );
@@ -287,6 +280,24 @@ static CString CopyEditsMachineToMemoryCard()
iNumSuccessful++; iNumSuccessful++;
} }
} }
}
static CString CopyEditsMachineToMemoryCard()
{
PlayerNumber pn = GetFirstReadyMemoryCard();
if( pn == PLAYER_INVALID )
return "Edits not copied - No memory cards ready.";
if( !MEMCARDMAN->IsMounted(pn) )
MEMCARDMAN->MountCard(pn);
int iNumAttempted = 0;
int iNumSuccessful = 0;
int iNumOverwritten = 0;
CString sFromDir = PROFILEMAN->GetProfileDir(ProfileSlot_Machine);
CString sToDir = MEM_CARD_MOUNT_POINT[pn] + (CString)PREFSMAN->m_sMemoryCardProfileSubdir + "/";
CopyEdits( sFromDir, sToDir, iNumAttempted, iNumSuccessful, iNumOverwritten );
MEMCARDMAN->UnmountCard(pn); MEMCARDMAN->UnmountCard(pn);
MEMCARDMAN->FlushAndReset(); MEMCARDMAN->FlushAndReset();
@@ -307,40 +318,10 @@ static CString CopyEditsMemoryCardToMachine()
int iNumAttempted = 0; int iNumAttempted = 0;
int iNumSuccessful = 0; int iNumSuccessful = 0;
int iNumOverwritten = 0; int iNumOverwritten = 0;
CString sFromDir = MEM_CARD_MOUNT_POINT[pn] + (CString)PREFSMAN->m_sMemoryCardProfileSubdir + "/";
CString sToDir = PROFILEMAN->GetProfileDir(ProfileSlot_Machine);
{ CopyEdits( sFromDir, sToDir, iNumAttempted, iNumSuccessful, iNumOverwritten );
CString sFromDir = MEM_CARD_MOUNT_POINT[pn] + (CString)PREFSMAN->m_sMemoryCardProfileSubdir + "/" + EDIT_STEPS_SUBDIR;
CString sToDir = PROFILEMAN->GetProfileDir(ProfileSlot_Machine) + EDIT_STEPS_SUBDIR;
vector<CString> vsFiles;
GetDirListing( sFromDir+"*.edit", vsFiles, false, false );
FOREACH_CONST( CString, vsFiles, i )
{
iNumAttempted++;
if( DoesFileExist(sToDir+*i) )
iNumOverwritten++;
bool bSuccess = FileCopy( sFromDir+*i, sToDir+*i );
if( bSuccess )
iNumSuccessful++;
}
}
{
CString sFromDir = MEM_CARD_MOUNT_POINT[pn] + (CString)PREFSMAN->m_sMemoryCardProfileSubdir + "/" + EDIT_COURSES_SUBDIR;
CString sToDir = PROFILEMAN->GetProfileDir(ProfileSlot_Machine) + EDIT_COURSES_SUBDIR;
vector<CString> vsFiles;
GetDirListing( sFromDir+"*.crs", vsFiles, false, false );
FOREACH_CONST( CString, vsFiles, i )
{
iNumAttempted++;
if( DoesFileExist(sToDir+*i) )
iNumOverwritten++;
bool bSuccess = FileCopy( sFromDir+*i, sToDir+*i );
if( bSuccess )
iNumSuccessful++;
}
}
MEMCARDMAN->UnmountCard(pn); MEMCARDMAN->UnmountCard(pn);
MEMCARDMAN->FlushAndReset(); MEMCARDMAN->FlushAndReset();