--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/imgtools/imgcheck/inc/depchecker.h Tue Oct 27 16:36:35 2009 +0000
@@ -0,0 +1,80 @@
+/*
+* Copyright (c) 2007-2009 Nokia Corporation and/or its subsidiary(-ies).
+* All rights reserved.
+* This component and the accompanying materials are made available
+* under the terms of the License "Eclipse Public License v1.0"
+* which accompanies this distribution, and is available
+* at the URL "http://www.eclipse.org/legal/epl-v10.html".
+*
+* Initial Contributors:
+* Nokia Corporation - initial contribution.
+*
+* Contributors:
+*
+* Description:
+* DepChecker class declaration
+* @internalComponent
+* @released
+*
+*/
+
+
+#ifndef DEPCHECKER_H
+#define DEPCHECKER_H
+
+#include "imgcheckmanager.h"
+#include "hash.h"
+
+/**
+Typedefs locally used
+
+@internalComponent
+@released
+*/
+typedef std::map<unsigned int, String> AddressVsExeName;
+
+/**
+If multiple images are specified as the input, then this value must be
+high to acheive effective searching
+
+@internalComponent
+@released
+*/
+const int KHashTableSize = 2000;
+
+/**
+The possibilities for more number of hidden files are less, so this
+much size of Hash pointer is more than enough
+
+@internalComponent
+@released
+*/
+const int KHiddenExeHashSize = 100; //Hidden
+/**
+class Dependency Checker
+
+@internalComponent
+@released
+*/
+class DepChecker : public Checker
+{
+public:
+ DepChecker(CmdLineHandler* aCmdPtr, ImageReaderPtrList& aImageReaderList, bool aNoRomImage);
+ ~DepChecker(void);
+ void Check(ImgVsExeStatus& aImgVsExeStatus);
+ void PrepareAndWriteData(ExeContainer* aExeContainer);
+
+private:
+ void DeleteHiddenExeFromExecutableList(ImageReader* aImageReader, StringList& aHiddenExeList);
+ void CollectDependencyStatus(String& aString, String& aStatus) const;
+ void PrepareImageExeList(ImageReader* aImageReader);
+ void RomImagePassed(void) const;
+
+private:
+ AddressVsExeName iAddressVsExeName; //ROM specific
+ HashTable* iHashPtr; //Used to search the dependencies effectively
+ HashTable* iHiddenExeHashPtr;
+ bool iNoRomImage;
+};
+
+#endif //DEPCHECKER_H