Index: src/ch/CustomCopyDlg.cpp =================================================================== diff -u -rfb4c4006dee5aaf815d08bc3e89312445b994307 -r25b3c85ea493809ee084271d5101a015d349da95 --- src/ch/CustomCopyDlg.cpp (.../CustomCopyDlg.cpp) (revision fb4c4006dee5aaf815d08bc3e89312445b994307) +++ src/ch/CustomCopyDlg.cpp (.../CustomCopyDlg.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -19,7 +19,7 @@ #include "stdafx.h" #include #include "resource.h" -#include "../libchcore/FileInfo.h" +#include "../libchcore/TFileInfo.h" #include "CustomCopyDlg.h" #include "structs.h" #include "dialogs.h" Index: src/ch/FeedbackFileErrorDlg.cpp =================================================================== diff -u -rd12e49decb8a3df3e28f6786d38542390484ac07 -r25b3c85ea493809ee084271d5101a015d349da95 --- src/ch/FeedbackFileErrorDlg.cpp (.../FeedbackFileErrorDlg.cpp) (revision d12e49decb8a3df3e28f6786d38542390484ac07) +++ src/ch/FeedbackFileErrorDlg.cpp (.../FeedbackFileErrorDlg.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -3,7 +3,7 @@ #include "stdafx.h" #include "ch.h" -#include "../libchcore/FileInfo.h" +#include "../libchcore/TFileInfo.h" #include "FeedbackFileErrorDlg.h" #include "FeedbackHandler.h" Index: src/ch/FeedbackHandler.cpp =================================================================== diff -u -r4d20d0e58f37f06ac91287015b960308db54d47e -r25b3c85ea493809ee084271d5101a015d349da95 --- src/ch/FeedbackHandler.cpp (.../FeedbackHandler.cpp) (revision 4d20d0e58f37f06ac91287015b960308db54d47e) +++ src/ch/FeedbackHandler.cpp (.../FeedbackHandler.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -17,7 +17,7 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ #include "stdafx.h" -#include "../libchcore/FileInfo.h" +#include "../libchcore/TFileInfo.h" #include "FeedbackHandler.h" #include "FeedbackReplaceDlg.h" #include "FeedbackFileErrorDlg.h" Index: src/ch/FeedbackNotEnoughSpaceDlg.cpp =================================================================== diff -u -rd12e49decb8a3df3e28f6786d38542390484ac07 -r25b3c85ea493809ee084271d5101a015d349da95 --- src/ch/FeedbackNotEnoughSpaceDlg.cpp (.../FeedbackNotEnoughSpaceDlg.cpp) (revision d12e49decb8a3df3e28f6786d38542390484ac07) +++ src/ch/FeedbackNotEnoughSpaceDlg.cpp (.../FeedbackNotEnoughSpaceDlg.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -18,7 +18,7 @@ ***************************************************************************/ #include "stdafx.h" #include "ch.h" -#include "../libchcore/FileInfo.h" +#include "../libchcore/TFileInfo.h" #include "FeedbackNotEnoughSpaceDlg.h" #include "StringHelpers.h" #include "FeedbackHandler.h" Index: src/ch/FeedbackReplaceDlg.cpp =================================================================== diff -u -r2aea3ad6f3c68be709ac65c70d9646eafe3b034c -r25b3c85ea493809ee084271d5101a015d349da95 --- src/ch/FeedbackReplaceDlg.cpp (.../FeedbackReplaceDlg.cpp) (revision 2aea3ad6f3c68be709ac65c70d9646eafe3b034c) +++ src/ch/FeedbackReplaceDlg.cpp (.../FeedbackReplaceDlg.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -3,10 +3,10 @@ #include "stdafx.h" #include "ch.h" -#include "../libchcore/FileInfo.h" +#include "../libchcore/TFileInfo.h" #include "FeedbackReplaceDlg.h" #include "../libictranslate/ResourceManager.h" -#include "../libchcore/FileInfo.h" +#include "../libchcore/TFileInfo.h" #include "FeedbackHandler.h" // CFeedbackReplaceDlg dialog Index: src/ch/FilterDlg.cpp =================================================================== diff -u -r2aea3ad6f3c68be709ac65c70d9646eafe3b034c -r25b3c85ea493809ee084271d5101a015d349da95 --- src/ch/FilterDlg.cpp (.../FilterDlg.cpp) (revision 2aea3ad6f3c68be709ac65c70d9646eafe3b034c) +++ src/ch/FilterDlg.cpp (.../FilterDlg.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -17,7 +17,7 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ #include "stdafx.h" -#include "../libchcore/FileInfo.h" +#include "../libchcore/TFileInfo.h" #include "../libchcore/FileFilter.h" #include "ch.h" #include "FilterDlg.h" Index: src/libchcore/ErrorCodes.h =================================================================== diff -u -r0cf74c78280b58c363868caafb9bf493a57aa006 -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/ErrorCodes.h (.../ErrorCodes.h) (revision 0cf74c78280b58c363868caafb9bf493a57aa006) +++ src/libchcore/ErrorCodes.h (.../ErrorCodes.h) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -33,6 +33,7 @@ eErr_InternalProblem = 4, eErr_UseOfUninitializedObject = 5, eErr_InvalidData = 6, + eErr_InvalidPointer = 7, // shared memory (500+) eErr_CannotOpenSharedMemory = 500, Index: src/libchcore/FileFilter.cpp =================================================================== diff -u -rbe30619d750d8663d54cf02e7d4bde2ed2dd8d05 -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/FileFilter.cpp (.../FileFilter.cpp) (revision be30619d750d8663d54cf02e7d4bde2ed2dd8d05) +++ src/libchcore/FileFilter.cpp (.../FileFilter.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -17,7 +17,7 @@ * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * ***************************************************************************/ #include "stdafx.h" -#include "FileInfo.h" +#include "TFileInfo.h" #include "FileFilter.h" #include "TConfig.h" #include "TBinarySerializer.h" Index: src/libchcore/FileFilter.h =================================================================== diff -u -rbe30619d750d8663d54cf02e7d4bde2ed2dd8d05 -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/FileFilter.h (.../FileFilter.h) (revision be30619d750d8663d54cf02e7d4bde2ed2dd8d05) +++ src/libchcore/FileFilter.h (.../FileFilter.h) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -20,13 +20,14 @@ #define __FILEFILTER_H__ #include "libchcore.h" -#include "FileInfo.h" #include #include "TDateTime.h" BEGIN_CHCORE_NAMESPACE class TConfig; +class TFileInfo; +typedef boost::shared_ptr TFileInfoPtr; class LIBCHCORE_API TFileFilter { Index: src/libchcore/TFileInfo.cpp =================================================================== diff -u --- src/libchcore/TFileInfo.cpp (revision 0) +++ src/libchcore/TFileInfo.cpp (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -0,0 +1,163 @@ +/*************************************************************************** +* Copyright (C) 2001-2008 by Jozef Starosczyk * +* ixen@copyhandler.com * +* * +* This program is free software; you can redistribute it and/or modify * +* it under the terms of the GNU Library General Public License * +* (version 2) as published by the Free Software Foundation; * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +* GNU General Public License for more details. * +* * +* You should have received a copy of the GNU Library General Public * +* License along with this program; if not, write to the * +* Free Software Foundation, Inc., * +* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * +***************************************************************************/ +// File was originally based on FileInfo.cpp by Antonio Tejada Lacaci. +// Almost everything has changed since then. +#include "stdafx.h" +#include "TFileInfo.h" +#include "TBinarySerializer.h" +#include "SerializationHelpers.h" + +BEGIN_CHCORE_NAMESPACE + +////////////////////////////////////////////////////////////////////// +// Construction/Destruction +////////////////////////////////////////////////////////////////////// + +TFileInfo::TFileInfo() : + m_pBasePaths(NULL), + m_pathFile(), + m_stSrcIndex(std::numeric_limits::max()), + m_dwAttributes(0), + m_uhFileSize(0), + m_uiFlags(0) +{ + m_ftCreation.dwHighDateTime = m_ftCreation.dwLowDateTime = 0; + m_ftLastAccess.dwHighDateTime = m_ftLastAccess.dwLowDateTime = 0; + m_ftLastWrite.dwHighDateTime = m_ftLastWrite.dwLowDateTime = 0; +} + +TFileInfo::TFileInfo(const TFileInfo& finf) : + m_pathFile(finf.m_pathFile), + m_stSrcIndex(finf.m_stSrcIndex), + m_dwAttributes(finf.m_dwAttributes), + m_uhFileSize(finf.m_uhFileSize), + m_ftCreation(finf.m_ftCreation), + m_ftLastAccess(finf.m_ftLastAccess), + m_ftLastWrite(finf.m_ftLastWrite), + m_uiFlags(finf.m_uiFlags), + m_pBasePaths(finf.m_pBasePaths) +{ +} + +TFileInfo::~TFileInfo() +{ +} + +void TFileInfo::Init(const TSmartPath& rpathFile, size_t stSrcIndex, const TPathContainer* pBasePaths, + DWORD dwAttributes, ULONGLONG uhFileSize, FILETIME ftCreation, FILETIME ftLastAccess, FILETIME ftLastWrite, + uint_t uiFlags) +{ + m_pathFile = rpathFile; + m_stSrcIndex = stSrcIndex; + m_pBasePaths = pBasePaths; + m_dwAttributes = dwAttributes; + m_uhFileSize = uhFileSize; + m_ftCreation = ftCreation; + m_ftLastAccess = ftLastAccess; + m_ftLastWrite = ftLastWrite; + m_uiFlags = uiFlags; + + if(m_pBasePaths && m_stSrcIndex != std::numeric_limits::max()) + m_pathFile.MakeRelativePath(m_pBasePaths->GetAt(m_stSrcIndex)); // cut path from clipboard +} + +void TFileInfo::Init(const TSmartPath& rpathFile, DWORD dwAttributes, ULONGLONG uhFileSize, FILETIME ftCreation, FILETIME ftLastAccess, FILETIME ftLastWrite, + uint_t uiFlags) +{ + m_pathFile = rpathFile; + m_stSrcIndex = std::numeric_limits::max(); + m_pBasePaths = NULL; + m_dwAttributes = dwAttributes; + m_uhFileSize = uhFileSize; + m_ftCreation = ftCreation; + m_ftLastAccess = ftLastAccess; + m_ftLastWrite = ftLastWrite; + m_uiFlags = uiFlags; +} + +void TFileInfo::SetParentObject(size_t stIndex, const TPathContainer* pBasePaths) +{ + // cannot set parent object if there is already one specified + if(m_pBasePaths && m_stSrcIndex != std::numeric_limits::max()) + THROW_CORE_EXCEPTION(eErr_InvalidArgument); + + m_stSrcIndex = stIndex; + m_pBasePaths = pBasePaths; + + if(m_pBasePaths && m_stSrcIndex != std::numeric_limits::max()) + m_pathFile.MakeRelativePath(m_pBasePaths->GetAt(m_stSrcIndex)); +} + +bool TFileInfo::operator==(const TFileInfo& rInfo) +{ + return (rInfo.m_dwAttributes == m_dwAttributes && rInfo.m_ftCreation.dwHighDateTime == m_ftCreation.dwHighDateTime && rInfo.m_ftCreation.dwLowDateTime == m_ftCreation.dwLowDateTime + && rInfo.m_ftLastWrite.dwHighDateTime == m_ftLastWrite.dwHighDateTime && rInfo.m_ftLastWrite.dwLowDateTime == m_ftLastWrite.dwLowDateTime && rInfo.m_uhFileSize == m_uhFileSize); +} + +TSmartPath TFileInfo::GetFullFilePath() const +{ + if(m_stSrcIndex != std::numeric_limits::max()) + { + BOOST_ASSERT(m_pBasePaths); + if(!m_pBasePaths) + THROW_CORE_EXCEPTION(eErr_InvalidPointer); + + TSmartPath pathCombined = m_pBasePaths->GetAt(m_stSrcIndex); + pathCombined += m_pathFile; + return pathCombined; + } + else + return m_pathFile; +} + +void TFileInfo::Serialize(TReadBinarySerializer& rSerializer) +{ + using Serializers::Serialize; + + Serialize(rSerializer, m_pathFile); + Serialize(rSerializer, m_stSrcIndex); + Serialize(rSerializer, m_dwAttributes); + Serialize(rSerializer, m_uhFileSize); + Serialize(rSerializer, m_ftCreation.dwHighDateTime); + Serialize(rSerializer, m_ftCreation.dwLowDateTime); + Serialize(rSerializer, m_ftLastAccess.dwHighDateTime); + Serialize(rSerializer, m_ftLastAccess.dwLowDateTime); + Serialize(rSerializer, m_ftLastWrite.dwHighDateTime); + Serialize(rSerializer, m_ftLastWrite.dwLowDateTime); + Serialize(rSerializer, m_uiFlags); +} + +void TFileInfo::Serialize(TWriteBinarySerializer& rSerializer) const +{ + using Serializers::Serialize; + + Serialize(rSerializer, m_pathFile); + Serialize(rSerializer, m_stSrcIndex); + Serialize(rSerializer, m_dwAttributes); + Serialize(rSerializer, m_uhFileSize); + Serialize(rSerializer, m_ftCreation.dwHighDateTime); + Serialize(rSerializer, m_ftCreation.dwLowDateTime); + Serialize(rSerializer, m_ftLastAccess.dwHighDateTime); + Serialize(rSerializer, m_ftLastAccess.dwLowDateTime); + Serialize(rSerializer, m_ftLastWrite.dwHighDateTime); + Serialize(rSerializer, m_ftLastWrite.dwLowDateTime); + Serialize(rSerializer, m_uiFlags); +} + +END_CHCORE_NAMESPACE Fisheye: tag be30619d750d8663d54cf02e7d4bde2ed2dd8d05 is not in file src/libchcore/TFileInfo.h Fisheye: Tag 25b3c85ea493809ee084271d5101a015d349da95 refers to a dead (removed) revision in file `src/libchcore/FileInfo.h'. Fisheye: No comparison available. Pass `N' to diff? Index: src/libchcore/TFileInfoArray.cpp =================================================================== diff -u --- src/libchcore/TFileInfoArray.cpp (revision 0) +++ src/libchcore/TFileInfoArray.cpp (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -0,0 +1,167 @@ +/*************************************************************************** +* Copyright (C) 2001-2008 by Jozef Starosczyk * +* ixen@copyhandler.com * +* * +* This program is free software; you can redistribute it and/or modify * +* it under the terms of the GNU Library General Public License * +* (version 2) as published by the Free Software Foundation; * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +* GNU General Public License for more details. * +* * +* You should have received a copy of the GNU Library General Public * +* License along with this program; if not, write to the * +* Free Software Foundation, Inc., * +* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * +***************************************************************************/ +// File was originally based on FileInfo.cpp by Antonio Tejada Lacaci. +// Almost everything has changed since then. +#include "stdafx.h" +#include +#include "TFileInfoArray.h" +#include "../libicpf/exception.h" +#include "TBinarySerializer.h" +#include "SerializationHelpers.h" +#include "TFileInfo.h" + +BEGIN_CHCORE_NAMESPACE + +/////////////////////////////////////////////////////////////////////// +// Array +TFileInfoArray::TFileInfoArray(const TPathContainer& rBasePaths) : + m_rBasePaths(rBasePaths) +{ +} + +TFileInfoArray::~TFileInfoArray() +{ +} + +void TFileInfoArray::AddFileInfo(const TFileInfoPtr& spFileInfo) +{ + boost::unique_lock lock(m_lock); + m_vFiles.push_back(spFileInfo); +} + +size_t TFileInfoArray::GetSize() const +{ + boost::shared_lock lock(m_lock); + return m_vFiles.size(); +} + +TFileInfoPtr TFileInfoArray::GetAt(size_t stIndex) const +{ + boost::shared_lock lock(m_lock); + + if(stIndex >= m_vFiles.size()) + THROW(_T("Out of bounds"), 0, 0, 0); + + return m_vFiles.at(stIndex); +} + +TFileInfo TFileInfoArray::GetCopyAt(size_t stIndex) const +{ + boost::shared_lock lock(m_lock); + + if(stIndex >= m_vFiles.size()) + THROW(_T("Out of bounds"), 0, 0, 0); + const TFileInfoPtr& spInfo = m_vFiles.at(stIndex); + if(!spInfo) + THROW(_T("Invalid pointer"), 0, 0, 0); + + return *spInfo; +} + +void TFileInfoArray::Clear() +{ + boost::unique_lock lock(m_lock); + m_vFiles.clear(); +} + +unsigned long long TFileInfoArray::CalculateTotalSize() +{ + unsigned long long ullSize = 0; + + boost::shared_lock lock(m_lock); + BOOST_FOREACH(TFileInfoPtr& spFileInfo, m_vFiles) + { + ullSize += spFileInfo->GetLength64(); + } + + return ullSize; +} + +void TFileInfoArray::Serialize(TReadBinarySerializer& rSerializer, bool bOnlyFlags) +{ + using Serializers::Serialize; + + size_t stCount; + Serialize(rSerializer, stCount); + + if(!bOnlyFlags) + { + m_vFiles.clear(); + m_vFiles.reserve(stCount); + } + else if(stCount != m_vFiles.size()) + THROW(_T("Invalid count of flags received"), 0, 0, 0); + + TFileInfoPtr spFileInfo; + + uint_t uiFlags = 0; + for(size_t stIndex = 0; stIndex < stCount; stIndex++) + { + if(bOnlyFlags) + { + TFileInfoPtr& rspFileInfo = m_vFiles.at(stIndex); + Serialize(rSerializer, uiFlags); + rspFileInfo->SetFlags(uiFlags); + } + else + { + spFileInfo.reset(new TFileInfo); + spFileInfo->SetClipboard(&m_rBasePaths); + Serialize(rSerializer, *spFileInfo); + m_vFiles.push_back(spFileInfo); + } + } +} + +void TFileInfoArray::Serialize(TWriteBinarySerializer& rSerializer, bool bOnlyFlags) const +{ + using Serializers::Serialize; + + size_t stCount = m_vFiles.size(); + Serialize(rSerializer, stCount); + + for(std::vector::const_iterator iterFile = m_vFiles.begin(); iterFile != m_vFiles.end(); ++iterFile) + { + if(bOnlyFlags) + { + uint_t uiFlags = (*iterFile)->GetFlags(); + Serialize(rSerializer, uiFlags); + } + else + Serialize(rSerializer, *(*iterFile)); + } +} + +unsigned long long TFileInfoArray::CalculatePartialSize(size_t stCount) +{ + unsigned long long ullSize = 0; + + boost::shared_lock lock(m_lock); + if(stCount > m_vFiles.size()) + THROW(_T("Invalid argument"), 0, 0, 0); + + for(std::vector::iterator iter = m_vFiles.begin(); iter != m_vFiles.begin() + stCount; ++iter) + { + ullSize += (*iter)->GetLength64(); + } + + return ullSize; +} + +END_CHCORE_NAMESPACE Index: src/libchcore/TFileInfoArray.h =================================================================== diff -u --- src/libchcore/TFileInfoArray.h (revision 0) +++ src/libchcore/TFileInfoArray.h (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -0,0 +1,81 @@ +/*************************************************************************** +* Copyright (C) 2001-2008 by Jozef Starosczyk * +* ixen@copyhandler.com * +* * +* This program is free software; you can redistribute it and/or modify * +* it under the terms of the GNU Library General Public License * +* (version 2) as published by the Free Software Foundation; * +* * +* This program is distributed in the hope that it will be useful, * +* but WITHOUT ANY WARRANTY; without even the implied warranty of * +* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * +* GNU General Public License for more details. * +* * +* You should have received a copy of the GNU Library General Public * +* License along with this program; if not, write to the * +* Free Software Foundation, Inc., * +* 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. * +***************************************************************************/ +// File was originally based on FileInfo.h by Antonio Tejada Lacaci. +// Almost everything has changed since then. + +#ifndef __TFILEINFOARRAY_H__ +#define __TFILEINFOARRAY_H__ + +#include "libchcore.h" +#include "TPath.h" + +BEGIN_CHCORE_NAMESPACE + +// CFileInfo flags +// flag stating that file has been processed (used to determine if file can be deleted at the end of copying) +#define FIF_PROCESSED 0x00000001 + +class TFileInfo; +typedef boost::shared_ptr TFileInfoPtr; + +class LIBCHCORE_API TFileInfoArray +{ +public: + TFileInfoArray(const TPathContainer& rBasePaths); + ~TFileInfoArray(); + + // Adds a new object info to this container + void AddFileInfo(const TFileInfoPtr& spFileInfo); + + /// Retrieves count of elements in this object + size_t GetSize() const; + + /// Retrieves an element at the specified index + TFileInfoPtr GetAt(size_t stIndex) const; + + /// Retrieves a copy of the element at a specified index + TFileInfo GetCopyAt(size_t stIndex) const; + + /// Removes all elements from this object + void Clear(); + + // specialized operations on contents of m_vFiles + /// Calculates the size of the first stCount file info objects + unsigned long long CalculatePartialSize(size_t stCount); + + /// Calculates the size of all file info objects inside this object + unsigned long long CalculateTotalSize(); + + /// Stores infos about elements in the archive + void Serialize(TReadBinarySerializer& rSerializer, bool bOnlyFlags); + void Serialize(TWriteBinarySerializer& rSerializer, bool bOnlyFlags) const; + +protected: + const TPathContainer& m_rBasePaths; + +#pragma warning(push) +#pragma warning(disable: 4251) + std::vector m_vFiles; + mutable boost::shared_mutex m_lock; +#pragma warning(pop) +}; + +END_CHCORE_NAMESPACE + +#endif Index: src/libchcore/TLocalFilesystem.cpp =================================================================== diff -u -rfb4c4006dee5aaf815d08bc3e89312445b994307 -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/TLocalFilesystem.cpp (.../TLocalFilesystem.cpp) (revision fb4c4006dee5aaf815d08bc3e89312445b994307) +++ src/libchcore/TLocalFilesystem.cpp (.../TLocalFilesystem.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -24,7 +24,7 @@ #include "TLocalFilesystem.h" #include #include "TAutoHandles.h" -#include "FileInfo.h" +#include "TFileInfo.h" #include "DataBuffer.h" #include Index: src/libchcore/TSubTaskBase.cpp =================================================================== diff -u -r4d20d0e58f37f06ac91287015b960308db54d47e -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/TSubTaskBase.cpp (.../TSubTaskBase.cpp) (revision 4d20d0e58f37f06ac91287015b960308db54d47e) +++ src/libchcore/TSubTaskBase.cpp (.../TSubTaskBase.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -28,6 +28,7 @@ #include "TTaskDefinition.h" #include "TTaskConfiguration.h" #include +#include "TFileInfo.h" BEGIN_CHCORE_NAMESPACE Index: src/libchcore/TSubTaskBase.h =================================================================== diff -u -r4d20d0e58f37f06ac91287015b960308db54d47e -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/TSubTaskBase.h (.../TSubTaskBase.h) (revision 4d20d0e58f37f06ac91287015b960308db54d47e) +++ src/libchcore/TSubTaskBase.h (.../TSubTaskBase.h) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -24,11 +24,13 @@ #define __TSUBTASKBASE_H__ #include "libchcore.h" -#include "FileInfo.h" +#include "TPath.h" BEGIN_CHCORE_NAMESPACE class TSubTaskContext; +class TFileInfo; +typedef boost::shared_ptr TFileInfoPtr; /////////////////////////////////////////////////////////////////////////// // TSubTaskBase Index: src/libchcore/TSubTaskCopyMove.cpp =================================================================== diff -u -r4d20d0e58f37f06ac91287015b960308db54d47e -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/TSubTaskCopyMove.cpp (.../TSubTaskCopyMove.cpp) (revision 4d20d0e58f37f06ac91287015b960308db54d47e) +++ src/libchcore/TSubTaskCopyMove.cpp (.../TSubTaskCopyMove.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -36,6 +36,8 @@ #include #include "TBasePathData.h" #include +#include "TFileInfo.h" +#include "TFileInfoArray.h" BEGIN_CHCORE_NAMESPACE Index: src/libchcore/TSubTaskDelete.cpp =================================================================== diff -u -r4d20d0e58f37f06ac91287015b960308db54d47e -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/TSubTaskDelete.cpp (.../TSubTaskDelete.cpp) (revision 4d20d0e58f37f06ac91287015b960308db54d47e) +++ src/libchcore/TSubTaskDelete.cpp (.../TSubTaskDelete.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -32,6 +32,8 @@ #include "..\libicpf\log.h" #include "FeedbackHandlerBase.h" #include +#include "TFileInfoArray.h" +#include "TFileInfo.h" BEGIN_CHCORE_NAMESPACE Index: src/libchcore/TSubTaskScanDirectory.cpp =================================================================== diff -u -r4d20d0e58f37f06ac91287015b960308db54d47e -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/TSubTaskScanDirectory.cpp (.../TSubTaskScanDirectory.cpp) (revision 4d20d0e58f37f06ac91287015b960308db54d47e) +++ src/libchcore/TSubTaskScanDirectory.cpp (.../TSubTaskScanDirectory.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -33,6 +33,8 @@ #include "TTaskLocalStats.h" #include #include "..\libicpf\log.h" +#include "TFileInfoArray.h" +#include "TFileInfo.h" BEGIN_CHCORE_NAMESPACE Index: src/libchcore/TTask.cpp =================================================================== diff -u -r1d8d51e0dd4d8ebcf0bd457d01fab984585220c0 -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/TTask.cpp (.../TTask.cpp) (revision 1d8d51e0dd4d8ebcf0bd457d01fab984585220c0) +++ src/libchcore/TTask.cpp (.../TTask.cpp) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -37,6 +37,7 @@ #include "../libicpf/exception.h" #include #include "DataBuffer.h" +#include "TFileInfo.h" BEGIN_CHCORE_NAMESPACE Index: src/libchcore/TTask.h =================================================================== diff -u -r1d8d51e0dd4d8ebcf0bd457d01fab984585220c0 -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/TTask.h (.../TTask.h) (revision 1d8d51e0dd4d8ebcf0bd457d01fab984585220c0) +++ src/libchcore/TTask.h (.../TTask.h) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -30,6 +30,7 @@ #include "TBasicProgressInfo.h" #include "..\libicpf\log.h" #include "TLocalFilesystem.h" +#include "TFileInfoArray.h" BEGIN_CHCORE_NAMESPACE Index: src/libchcore/libchcore.vc90.vcproj =================================================================== diff -u -r1d8d51e0dd4d8ebcf0bd457d01fab984585220c0 -r25b3c85ea493809ee084271d5101a015d349da95 --- src/libchcore/libchcore.vc90.vcproj (.../libchcore.vc90.vcproj) (revision 1d8d51e0dd4d8ebcf0bd457d01fab984585220c0) +++ src/libchcore/libchcore.vc90.vcproj (.../libchcore.vc90.vcproj) (revision 25b3c85ea493809ee084271d5101a015d349da95) @@ -356,34 +356,42 @@ > + + + +