libraries/qr3/src/KernLbxModel.cpp
changeset 7 184a1eb85cf2
parent 0 7f656887cf89
child 97 562156073bab
equal deleted inserted replaced
6:96d581d2147d 7:184a1eb85cf2
   287 		itemId = pid;
   287 		itemId = pid;
   288 		break;
   288 		break;
   289 		}
   289 		}
   290 	case EListCodeSeg:
   290 	case EListCodeSeg:
   291 		{
   291 		{
   292 		TTomsciCodeSegKernelInfo& info = *reinterpret_cast<TTomsciCodeSegKernelInfo*>(aInfo);
   292 		TCodeSegKernelInfo& info = *reinterpret_cast<TCodeSegKernelInfo*>(aInfo);
   293 		name.Copy(info.iName);
   293 		name.Copy(info.iName);
   294 
   294 
   295 		TBuf<16> size;
   295 		TBuf<16> size;
   296 		HR(size, info.iSize);
   296 		HR(size, info.iSize);
   297 		more.Format(_L("Size %S Ref count %i"), &size, info.iAccessCount);
   297 		more.Format(_L("Size %S Ref count %i"), &size, info.iAccessCount);
   416 		break;
   416 		break;
   417 		}
   417 		}
   418 	case EListCodeSeg:
   418 	case EListCodeSeg:
   419 		{
   419 		{
   420 		if (i == 0) clogger.Log(KCodesegDesc);
   420 		if (i == 0) clogger.Log(KCodesegDesc);
   421 		TTomsciCodeSegKernelInfo& info = *reinterpret_cast<TTomsciCodeSegKernelInfo*>(aInfo);
   421 		TCodeSegKernelInfo& info = *reinterpret_cast<TCodeSegKernelInfo*>(aInfo);
   422 		TBuf8<16> size;
   422 		TBuf8<16> size;
   423 		HR(size, info.iSize);
   423 		HR(size, info.iSize);
   424 		clogger.Log(KCodesegFmt, &info.iName, info.iSize, &size, info.iAccessCount, info.iDepCount);
   424 		clogger.Log(KCodesegFmt, &info.iName, info.iSize, &size, info.iAccessCount, info.iDepCount);
   425 		break;
   425 		break;
   426 		}
   426 		}
   596 			inf.AppendFormat(KChunk, info.iBase, &size, &maxSize, info.iControllingOwnerProcessId, name);
   596 			inf.AppendFormat(KChunk, info.iBase, &size, &maxSize, info.iControllingOwnerProcessId, name);
   597 			break;
   597 			break;
   598 			}
   598 			}
   599 		case EListCodeSeg:
   599 		case EListCodeSeg:
   600 			{
   600 			{
   601 			TTomsciCodeSegKernelInfo& info = *reinterpret_cast<TTomsciCodeSegKernelInfo*>(iInfo);
   601 			TCodeSegKernelInfo& info = *reinterpret_cast<TCodeSegKernelInfo*>(iInfo);
   602 			_LIT(KInfo, "Code segment info");
   602 			_LIT(KInfo, "Code segment info");
   603 			aTitle.Copy(KInfo);
   603 			aTitle.Copy(KInfo);
   604 			inf.Copy(info.iName);
   604 			inf.Copy(info.iName);
   605 			inf.Append(Klflf);
   605 			inf.Append(Klflf);
   606 
   606 
   983 		}
   983 		}
   984 
   984 
   985 	if (iCurrentList == EListCodeSeg)
   985 	if (iCurrentList == EListCodeSeg)
   986 		{
   986 		{
   987 		mem.AcquireCodeSegMutex();
   987 		mem.AcquireCodeSegMutex();
   988 		TTomsciCodeSegKernelInfo* inf = new(ELeave) TTomsciCodeSegKernelInfo;
   988 		TCodeSegKernelInfo* inf = new(ELeave) TCodeSegKernelInfo;
   989 		info = reinterpret_cast<TObjectKernelInfo*>(inf); // These aren't actually related classes, just convenient
   989 		info = reinterpret_cast<TObjectKernelInfo*>(inf); // These aren't actually related classes, just convenient
   990 		buf.Set(TPckg<TTomsciCodeSegKernelInfo>(*inf));
   990 		buf.Set(TPckg<TCodeSegKernelInfo>(*inf));
   991 		while (mem.GetNextCodeSegInfo(buf) == KErrNone)
   991 		while (mem.GetNextCodeSegInfo(buf) == KErrNone)
   992 			{
   992 			{
   993 			TRAPD(err, model.NewKernDataL(iCurrentList, info));
   993 			TRAPD(err, model.NewKernDataL(iCurrentList, info));
   994 			if (err)
   994 			if (err)
   995 				{
   995 				{
   996 				break;
   996 				break;
   997 				}
   997 				}
   998 			inf = NULL;
   998 			inf = NULL;
   999 			inf = new(ELeave) TTomsciCodeSegKernelInfo;
   999 			inf = new(ELeave) TCodeSegKernelInfo;
  1000 			buf.Set(TPckg<TTomsciCodeSegKernelInfo>(*inf));
  1000 			buf.Set(TPckg<TCodeSegKernelInfo>(*inf));
  1001 			info = reinterpret_cast<TObjectKernelInfo*>(inf); // These aren't actually related classes, just convenient
  1001 			info = reinterpret_cast<TObjectKernelInfo*>(inf); // These aren't actually related classes, just convenient
  1002 			}
  1002 			}
  1003 		delete inf;
  1003 		delete inf;
  1004 		mem.ReleaseCodeSegMutex();
  1004 		mem.ReleaseCodeSegMutex();
  1005 		}
  1005 		}