unit U_SCSEngine; interface uses SysUtils, Windows, Messages, Classes, Graphics, Controls, Forms, Dialogs, U_SCSEngine; type TActiveDoc = class (TObject) private FDocShapes: TList {TDocShape}; end; TDocShape = class (TObject) private FSCSComponents: TList {TSCSComponent}; function GetObject(Index: Integer): TSCSComponent; function GetObjectsCount: Integer; public constructor Create; procedure AddObject(AObject: TGraphObject); procedure DelObject(AIndex: integer); procedure Free; property Objects[Index: Integer]: TSCSComponent read GetObject; property ObjectsCount: Integer read GetObjectsCount; end; TNode = class (TDocShape) private FBeginPoint: TRoute; FEndPoint: TRoute; function GetLength: Integer; public constructor Create(ABeginPoint:TBasePoint; AEndPoint: TBasePoint); procedure Free; property Length: Integer read GetLength; end; TRoute = class (TDocShape) private FCoords: TCoords; FLines: TList; public constructor Create(ACoords: TCoords); procedure Free; end; TSCSComponent = class (TObject) private FHeapIndex: Integer; FObjects: TList; function GetFHeapIndex: Integer; function GetObject(Index: Integer): TNetObject; function GetObjectCount: Integer; procedure SetFHeapIndex(AIndex: Integer); public constructor Create; procedure AddObject(AObject: TNetObject); procedure DelObject(AIndex: integer); procedure Free; property HeapIndex: Integer read GetFHeapIndex write SetFHeapIndex; property Objects[Index: Integer]: TNetObject read GetObject; property ObjectsCount: Integer read GetObjectCount; end; procedure Register; implementation procedure Register; begin end; { ********************************** TDocShape *********************************** } constructor TDocShape.Create; begin end; procedure TDocShape.AddObject(AObject: TGraphObject); begin end; procedure TDocShape.DelObject(AIndex: integer); begin end; procedure TDocShape.Free; begin end; function TDocShape.GetObject(Index: Integer): TSCSComponent; begin end; function TDocShape.GetObjectsCount: Integer; begin end; { ************************************ TNode ************************************* } constructor TNode.Create(ABeginPoint:TBasePoint; AEndPoint: TBasePoint); begin end; procedure TNode.Free; begin end; function TNode.GetLength: Integer; begin end; { ************************************ TRoute ************************************ } constructor TRoute.Create(ACoords: TCoords); begin end; procedure TRoute.Free; begin end; { ******************************** TSCSComponent ********************************* } constructor TSCSComponent.Create; begin end; procedure TSCSComponent.AddObject(AObject: TNetObject); begin end; procedure TSCSComponent.DelObject(AIndex: integer); begin end; procedure TSCSComponent.Free; begin end; function TSCSComponent.GetFHeapIndex: Integer; begin end; function TSCSComponent.GetObject(Index: Integer): TNetObject; begin end; function TSCSComponent.GetObjectCount: Integer; begin end; procedure TSCSComponent.SetFHeapIndex(AIndex: Integer); begin end; end.