+ self.IncludeFileList = []\r
+ self.Level = 1 # first level include file\r
+ \r
+ def GetTotalLines(self):\r
+ TotalLines = self.InsertAdjust + len(self.FileLinesList)\r
+\r
+ for Profile in self.IncludeFileList:\r
+ TotalLines += Profile.GetTotalLines()\r
+\r
+ return TotalLines\r
+\r
+ def IsLineInFile(self, Line):\r
+ if Line >= self.InsertStartLineNumber and Line < self.InsertStartLineNumber + self.GetTotalLines():\r
+ return True\r
+\r
+ return False\r
+\r
+ def GetLineInFile(self, Line):\r
+ if not self.IsLineInFile (Line):\r
+ return (self.FileName, -1)\r
+ \r
+ InsertedLines = self.InsertStartLineNumber\r
+\r
+ for Profile in self.IncludeFileList:\r
+ if Profile.IsLineInFile(Line):\r
+ return Profile.GetLineInFile(Line)\r
+ elif Line >= Profile.InsertStartLineNumber:\r
+ InsertedLines += Profile.GetTotalLines()\r
+\r
+ return (self.FileName, Line - InsertedLines + 1)\r
+\r
+\r