| Quintiq file version 2.0 | 
| #parent: #root | 
| Method Log (String description, LibOpt_Snapshot snapshot) as LibOpt_SnapshotInfo | 
| { | 
|   Description: | 
|   [* | 
|     Creates a new `LibOpt_SnapshotInfo` snapshot. | 
|     This snapshot can be found in the 'Snapshots' form as a child of `snapshot`.  | 
|     If `snapshot` is null, then the `LibOpt_SnapshotInfo` snapshot will be a child of the `this.SnapshotComponent()` snapshot. | 
|   *] | 
|   TextBody: | 
|   [* | 
|     owner := this.Run(); | 
|      | 
|     result := null( LibOpt_SnapshotInfo ); | 
|     if( owner.HasSnapshots() ) | 
|     {   | 
|       if( isnull( snapshot ) ) | 
|       { | 
|         snapshot := this.SnapshotComponent(); | 
|       } | 
|       result := owner.Snapshot( relnew, LibOpt_SnapshotInfo, | 
|                                         Description := description, | 
|                                         Parent := snapshot ); | 
|     } | 
|      | 
|     return result; | 
|   *] | 
| } |