secureswitools/swisistools/source/sisxlibrary/sisprerequisites.cpp
changeset 26 04d4a7bbc3e0
parent 0 ba25891c3a9e
equal deleted inserted replaced
25:98b66e4fb0be 26:04d4a7bbc3e0
    38 			}
    38 			}
    39 		}
    39 		}
    40 	return false;
    40 	return false;
    41 	}
    41 	}
    42 
    42 
    43 void CSISPrerequisites::AddPackageEntry(std::wostream& aStream, bool aVerbose) const
    43 void CSISPrerequisites::AddPackageEntry(std::wostream& aStream, bool aVerbose, bool aCompatible) const
    44 	{
    44 	{
    45 	if (iTargetDevices.size())
    45 	if (iTargetDevices.size())
    46 		{
    46 		{
    47 		// Since iTargetDevices and iDependencies are of same type and they
    47 		// Since iTargetDevices and iDependencies are of same type and they
    48 		// have different structure in the package (pkg) file we need to set
    48 		// have different structure in the package (pkg) file we need to set
    54 		
    54 		
    55 		if (aVerbose)
    55 		if (aVerbose)
    56 			{
    56 			{
    57 			aStream << L"; Target dependencies" << std::endl;
    57 			aStream << L"; Target dependencies" << std::endl;
    58 			}
    58 			}
    59 		iTargetDevices.AddPackageEntry(aStream, aVerbose);
    59 		iTargetDevices.AddPackageEntry(aStream, aVerbose, aCompatible);
    60 		}
    60 		}
    61 
    61 
    62 	if (iDependencies.size())
    62 	if (iDependencies.size())
    63 		{
    63 		{
    64 		if (aVerbose)
    64 		if (aVerbose)
    65 			{
    65 			{
    66 			aStream << L"; Dependencies" << std::endl;
    66 			aStream << L"; Dependencies" << std::endl;
    67 			}
    67 			}
    68 		iDependencies.AddPackageEntry(aStream, aVerbose);
    68 		iDependencies.AddPackageEntry(aStream, aVerbose, aCompatible);
    69 		}
    69 		}
    70 	}
    70 	}
    71 
    71 
       
    72 void CSISPrerequisites::AddIbyEntry(std::wostream& aStream, bool aVerbose, bool aCompatible) const
       
    73 	{
       
    74 	if (iTargetDevices.size())
       
    75 		{
       
    76 		// Since iTargetDevices and iDependencies are of same type and they
       
    77 		// have different structure in the package (pkg) file we need to set
       
    78 		// 
       
    79 		for(int i = 0; i < iTargetDevices.size(); ++i)
       
    80 			{
       
    81 			iTargetDevices[i].SetDependencyType(CSISDependency::ETargetDependency);
       
    82 			}
       
    83 		
       
    84 		if (aVerbose)
       
    85 			{
       
    86 			aStream << L"; Target dependencies" << std::endl;
       
    87 			}
       
    88 		iTargetDevices.AddIbyEntry(aStream, aVerbose, aCompatible);
       
    89 		}
       
    90 
       
    91 	if (iDependencies.size())
       
    92 		{
       
    93 		if (aVerbose)
       
    94 			{
       
    95 			aStream << L"; Dependencies" << std::endl;
       
    96 			}
       
    97 		iDependencies.AddIbyEntry(aStream, aVerbose, aCompatible);
       
    98 		}
       
    99 	}