• Home
  • Raw
  • Download

Lines Matching refs:hookData

49 bool ParseCommand(std::vector<std::string> args, HookData& hookData)  in ParseCommand()  argument
54 hookData.fileName = args[idx + 1].c_str(); in ParseCommand()
57 hookData.pids.insert(pids.begin(), pids.end()); in ParseCommand()
58 for (auto iter = hookData.pids.begin(); iter != hookData.pids.end();) { in ParseCommand()
60 iter = hookData.pids.erase(iter); in ParseCommand()
66 if (hookData.pids.empty()) { in ParseCommand()
71 hookData.processName = args[idx + 1]; in ParseCommand()
73 hookData.smbSize = std::stoi(args[idx + 1], nullptr); in ParseCommand()
74 if (std::to_string(hookData.smbSize) != args[idx + 1]) { in ParseCommand()
78 hookData.filterSize = std::stoi(args[idx + 1], nullptr); in ParseCommand()
79 if (std::to_string(hookData.filterSize) != args[idx + 1]) { in ParseCommand()
82 if (hookData.filterSize > MAX_UNWIND_DEPTH) { in ParseCommand()
86 hookData.maxStackDepth = std::stoi(args[idx + 1], nullptr); in ParseCommand()
87 if (std::to_string(hookData.maxStackDepth) != args[idx + 1]) { in ParseCommand()
92 hookData.duration = std::stoull(args[idx + 1]); in ParseCommand()
96 hookData.performanceFilename = args[idx + 1]; in ParseCommand()
101 hookData.fpUnwind = false; in ParseCommand()
103 hookData.fpUnwind = true; in ParseCommand()
109 hookData.statisticsInterval = std::stoi(args[idx + 1], nullptr); in ParseCommand()
110 if (std::to_string(hookData.statisticsInterval) != args[idx + 1]) { in ParseCommand()
114 hookData.sampleInterval = std::stoi(args[idx + 1], nullptr); in ParseCommand()
115 if (std::to_string(hookData.sampleInterval) != args[idx + 1]) { in ParseCommand()
121 hookData.offlineSymbolization = false; in ParseCommand()
123 hookData.offlineSymbolization = true; in ParseCommand()
131 hookData.callframeCompress = false; in ParseCommand()
133 hookData.callframeCompress = true; in ParseCommand()
141 hookData.stringCompressed = false; in ParseCommand()
143 hookData.stringCompressed = true; in ParseCommand()
151 hookData.rawString = false; in ParseCommand()
153 hookData.rawString = true; in ParseCommand()
161 hookData.responseLibraryMode = false; in ParseCommand()
163 hookData.responseLibraryMode = true; in ParseCommand()
177 bool VerifyCommand(std::vector<std::string> args, HookData& hookData) in VerifyCommand() argument
182 if (!ParseCommand(args, hookData)) { in VerifyCommand()
185 if ((hookData.smbSize % SMBSIZE_BASE) != 0) { in VerifyCommand()
189 if (!hookData.fileName.empty() && (!hookData.processName.empty() || hookData.pids.size() > 0)) { in VerifyCommand()
195 void GetHookedProceInfo(HookData& hookData) in GetHookedProceInfo() argument
197 …printf("Record file = %s, apply sharememory size = %u\n", hookData.fileName.c_str(), hookData.smbS… in GetHookedProceInfo()
198 if (hookData.pids.size() > 0) { in GetHookedProceInfo()
199 for (const auto& pid : hookData.pids) { in GetHookedProceInfo()
202 } else if (!hookData.processName.empty()) { in GetHookedProceInfo()
204 const std::string processName = hookData.processName; in GetHookedProceInfo()
207 hookData.startupMode = true; in GetHookedProceInfo()
208 printf("startup mode ,Please start process %s\n", hookData.processName.c_str()); in GetHookedProceInfo()
210 hookData.pids.emplace(std::to_string(pidValue)); in GetHookedProceInfo()
214 if (hookData.maxStackDepth > 0) { in GetHookedProceInfo()
215 printf("depth greater than %u will not display\n", hookData.maxStackDepth); in GetHookedProceInfo()
217 if (hookData.filterSize > 0) { in GetHookedProceInfo()
218 printf("malloc size smaller than %u will not record\n", hookData.filterSize); in GetHookedProceInfo()
221 if (!OHOS::Developtools::Profiler::Hook::StartHook(hookData)) { in GetHookedProceInfo()
254 HookData hookData; in main() local
255 if (VerifyCommand(args, hookData)) { in main()
256 GetHookedProceInfo(hookData); in main()