Skip to content
This repository was archived by the owner on Mar 25, 2025. It is now read-only.
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
91 commits
Select commit Hold shift + click to select a range
7736419
Merge pull request #5 from TcOpenGroup/dev
PTKu Jan 26, 2021
47d7316
version info in project files
Feb 5, 2021
c4a586b
vbump
Feb 5, 2021
145b9d0
Major additions to TcoCore; Tc.Prober source moved here
Feb 22, 2021
527349f
ivc as direct dependency
Feb 23, 2021
0b4e33b
Tc.Prober - GenerateAssemblyInfo set to false in csproj file due to d…
Feb 23, 2021
4f4e1d0
small cle~anup
Feb 23, 2021
a57049a
another small cleanup
Feb 23, 2021
5923f82
TcoSequencer documentation
Feb 24, 2021
7afdca1
Messenger moved from TcoState and TcoTask into TcoObject, TcoContext …
Feb 25, 2021
49ecac8
TcoObject api docu~
Feb 25, 2021
3a1d928
Merge branch 'dev' into feature/Exploratory_examples
Feb 26, 2021
563f001
TcoState api docu
Feb 26, 2021
59f4d27
Merge pull request #9 from Inxton/feature/Exploratory_examples
PTKu Feb 27, 2021
9a3bd4d
Update issue templates
PTKu Feb 27, 2021
9d479aa
gen files removed from source control
Mar 1, 2021
6f012b9
(ammend) fixed build issues after removing inxton generated files fro…
Mar 1, 2021
3646e5a
Merge pull request #13 from Inxton/structure/remove_gen_meta_file_fro…
PTKu Mar 1, 2021
b7e3831
package update to 1.9.5-nightly.207
Mar 1, 2021
886c49b
skimming in-code documentation
Mar 2, 2021
55fd688
doc cont.
Mar 2, 2021
71af07c
docu
Mar 2, 2021
2d4b261
synched with documentation/docu_reviews
Mar 2, 2021
dcf6213
Unit test comments + TcoSequencer.PostStepComplete() and TcoSequencer…
Mar 2, 2021
feaf52f
Merge pull request #15 from Inxton/feature/UnitTest_comments
TomKovac Mar 2, 2021
fd009d8
simple manipulator example
Mar 3, 2021
9b8f5d5
Merge pull request #16 from Inxton/documentation/tco_core_examples
PTKu Mar 3, 2021
d8f9073
Open Close made internal on TcoSequencer
Mar 3, 2021
d65bd5e
Open Close internal on sequencer 2nd attempt
Mar 3, 2021
871b619
- corleone context example
Mar 3, 2021
a969206
Context docu links
Mar 3, 2021
5c136c3
TcoTask method CheckIfAutoRestoreEnabledByParent made private
Mar 4, 2021
eb9ae5d
some more comments to corleone context/identity example
Mar 4, 2021
97418cd
sequencer example moved to 'Sequencer' folder
Mar 4, 2021
b164c0f
Object tree viewer moved to TcoCore.Wpf library
Mar 4, 2021
b6a790c
Object tree viewer moved to TcoCore.Wpf library
Mar 4, 2021
0e1569d
(examples) sequencers have separate instances of components
Mar 4, 2021
66183d0
(examples) sequencers have not shared instances of components
Mar 4, 2021
1ba1a2c
synched with origin
Mar 4, 2021
0248ddb
Links to code examples research
Mar 5, 2021
dfba692
sync with remote
Mar 5, 2021
a578864
merged with remote
Mar 5, 2021
f2f443b
Merge pull request #14 from Inxton/documenation/doc_reviews
PTKu Mar 5, 2021
6431044
test publish in trx format
Mar 5, 2021
d7d4046
#17 TcoSequencer.Step method protected, OnSequencerError() Sequencer.…
Mar 5, 2021
465b0f4
Merge branch 'init-dev' of https://github.com/Inxton/TcOpen into init…
Mar 5, 2021
b5ae9a5
TcoTask API docu, eTaskState refactoring, all tests passed, some comm…
Mar 5, 2021
52fc0ec
Merge branch 'init-dev' of https://github.com/Inxton/TcOpen into init…
Mar 5, 2021
f9bb113
TcoTask._taskState=> Readonly
Mar 8, 2021
e0024ea
Merge branch 'init-dev' of https://github.com/Inxton/TcOpen into init…
Mar 9, 2021
c1d01b8
TcoTask Enabled property added
Mar 9, 2021
e88aca5
Merge branch 'init-dev' of https://github.com/Inxton/TcOpen into init…
Mar 9, 2021
dadca91
#12
Mar 9, 2021
4e94faf
TcoMessenger performance tests
Mar 10, 2021
e70a399
packages update 1.9.6-nightly.260
Mar 10, 2021
2a239a0
Time sync research
Mar 11, 2021
a010951
fix after update to 1.9.4-nightly.260, implementation of missing GetK…
Mar 11, 2021
2dd38f7
fixed binding exception on 'TcoContextView'
Mar 11, 2021
85898cc
Time research
Mar 15, 2021
6da41e8
merge
Mar 15, 2021
4f66992
RTC
Mar 16, 2021
e1f7cd5
TcoRTC + tests, Messenger tests timestamp modification
Mar 16, 2021
451f4c2
TcoRtc + tests
Mar 17, 2021
a59a15b
small cleanup in messenger test instance
Mar 18, 2021
0842ec8
Output text logs to xml
Mar 18, 2021
5059ddb
TcoRtc - Clock PRG removed, Update method implementation moved to Tco…
Mar 18, 2021
d06d68e
Merge branch 'init-dev' of https://github.com/Inxton/TcOpen into init…
Mar 18, 2021
6a42d92
rtc refactoring - start @TomKovac continues
Abcd4321 Mar 18, 2021
63df5b3
task example started, not finished yet
Mar 18, 2021
d1908b7
Merge branch 'init-dev' of https://github.com/Inxton/TcOpen into init…
Mar 18, 2021
b411855
Sync with mebad/rtc_simplification_attempts
Mar 18, 2021
f6f7731
TcoRtc diff in _messenger.Mime.Timestamp issue
Mar 19, 2021
9d40742
Messanger performence tests commented out due to Rtc issues~
Mar 19, 2021
7b6967a
Rtc my fucking last attempt to solve this fucking issue
Mar 19, 2021
ad245dd
minor clup
Abcd4321 Mar 22, 2021
eca4f8c
before modyfying T801-T812 tests
Mar 22, 2021
75196be
Messenger tests-added cyclicall call of the rtcupdate
Mar 22, 2021
bf4ee2b
test publishing
Abcd4321 Mar 23, 2021
8a34be5
messaging feature and compatibility aligment
Abcd4321 Mar 24, 2021
4f4ed3a
task example
Mar 24, 2021
c49d5bf
sync
Mar 24, 2021
fdbb621
solving compatibility issues VortexCore
Abcd4321 Mar 25, 2021
c905123
before sync
Mar 29, 2021
fd09940
Merge branch 'init-dev' of https://github.com/Inxton/TcOpen into init…
Mar 29, 2021
80b836c
#12 cont. messaging
Abcd4321 Mar 29, 2021
5edd735
sync
Mar 29, 2021
f6ab2df
before restorer added
Mar 31, 2021
f5eae33
restorer added + rtc issues
Apr 1, 2021
f68a084
get ready for nuget publish on TcOpenGroup config
Abcd4321 Apr 6, 2021
f190c8b
generated meta file removed from tracking
Abcd4321 Apr 6, 2021
8106cc8
removes generate and meta, fixed an issue with TcoCoreExamples slnf (…
Abcd4321 Apr 6, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
10 changes: 10 additions & 0 deletions .github/ISSUE_TEMPLATE/development.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
name: Development
about: Suggestion for improvement in development process
title: ''
labels: ''
assignees: ''

---


10 changes: 10 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -27,6 +27,9 @@ bld/
*.VisualState.xml
TestResult.xml

# dotnet test results
*.trx

# Build Results of an ATL Project
[Dd]ebugPS/
[Rr]eleasePS/
Expand Down Expand Up @@ -216,6 +219,12 @@ _Vortex/
CompilerCache.md
log.txt
pal.txt
_meta/
_generated/
*.g.cs
*.lbz
version.info
*.plcproj.version.update

# IVF Tools
_toolz/
Expand All @@ -226,3 +235,4 @@ nugets/



*.TcCD
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@
[![Open Source? Yes!](https://badgen.net/badge/Open%20Source%20%3F/Yes%21/blue?icon=github)](https://github.com/TcOpenGroup/TcOpen)
[![TcOpen Slack ](https://img.shields.io/badge/Slack-channel-ff69b4.svg)](https://tcopendevelopment.slack.com/)
[![Awesome Badges](https://img.shields.io/badge/badges-awesome-green.svg)](https://github.com/TcOpenGroup/TcOpen#awesome-twincat-3-projects-)
![Azure DevOps builds (branch)](https://img.shields.io/azure-devops/build/petokurhajec0964/tc3/TcOpenGroup.TcOpen/dev)
[![Build Status](https://dev.azure.com/petokurhajec0964/tc3/_apis/build/status/TcOpenGroup.TcOpen?branchName=dev)](https://dev.azure.com/petokurhajec0964/tc3/_build/latest?definitionId=6&branchName=dev)

# TcOpen

Expand Down
7 changes: 5 additions & 2 deletions TcOpen.build.slnf
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,10 @@
"solution": {
"path": "TcOpen.sln",
"projects": [
"src\\Tc.Prober\\src\\Tc.Prober\\Tc.Prober.csproj",
"src\\Tc.Prober\\tests\\PlcTcProberTestsConnector\\PlcTcProberTestsConnector.csproj",
"src\\Tc.Prober\\tests\\Tc.ProberTest\\Tc.ProberTest.csproj",
"src\\Tc.Prober\\tests\\TcProber\\TcProber.tsproj",
"src\\TcoCore\\src\\TcoCore.Wpf\\TcoCore.Wpf.csproj",
"src\\TcoCore\\src\\TcoCoreConnector\\TcoCoreConnector.csproj",
"src\\TcoCore\\src\\XaeTcoCore\\XaeTcoCore.tsproj",
Expand All @@ -14,8 +18,7 @@
"src\\TcoIoBeckhoff\\src\\XaeTcoIoBeckhoff\\XaeTcoIoBeckhoff.tsproj",
"src\\TcoPneumatics\\src\\TcoPneumatics.Wpf\\TcoPneumatics.Wpf.csproj",
"src\\TcoPneumatics\\src\\TcoPneumaticsConnector\\TcoPneumaticsConnector.csproj",
"src\\TcoPneumatics\\src\\XaeTcoPneumatics\\XaeTcoPneumatics.tsproj",
"src\\TcoPneumatics\\tests\\Sandbox\\PlcOpen.Wpf.Sandbox\\TcoPneumatics.Wpf.Sandbox.csproj",
"src\\TcoPneumatics\\src\\XaeTcoPneumatics\\XaeTcoPneumatics.tsproj",
"src\\TcoPneumatics\\tests\\TcoPneumaticsTestsConnector\\TcoPneumaticsTestsConnector.csproj",
"src\\TcoPneumatics\\tests\\TcoPneumaticsTests_nUnit\\TcoPneumaticsTests_nUnit.csproj"
]
Expand Down
1 change: 1 addition & 0 deletions TcOpen.plc.slnf
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
"solution": {
"path": "TcOpen.sln",
"projects": [
"src\\Tc.Prober\\tests\\TcProber\\TcProber.tsproj",
"src\\TcoCore\\src\\XaeTcoCore\\XaeTcoCore.tsproj",
"src\\TcoIoBeckhoff\\src\\XaeTcoIoBeckhoff\\XaeTcoIoBeckhoff.tsproj",
"src\\TcoPneumatics\\src\\XaeTcoPneumatics\\XaeTcoPneumatics.tsproj"
Expand Down
410 changes: 382 additions & 28 deletions TcOpen.sln

Large diffs are not rendered by default.

Binary file modified _Vortex/builder/uvn.exe
Binary file not shown.
4 changes: 4 additions & 0 deletions ivc.ps1
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
.\_Vortex\builder\vortex.compiler.console.exe -s .\src\TcoCore\TcoCore.slnf
.\_Vortex\builder\vortex.compiler.console.exe -s .\src\TcoIoBeckhoff\TcoIoBeckhoff.slnf
.\_Vortex\builder\vortex.compiler.console.exe -s .\src\TcoPneumatics\TcoPneumatics.slnf
.\_Vortex\builder\vortex.compiler.console.exe -s .\src\TcoApplicationExamples\TcoApplicationExamples.slnf
5 changes: 2 additions & 3 deletions pipelines/azure-pipelines.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,8 @@ queue:
steps:
- powershell : >
./pipelines/runbuild.ps1 -properties @{
"publishNugets"=$false;
"publishNugets"=$true;
"updateAssemblyInfo" = $true;
"testTargetAmsId" = "172.20.10.2.1.1";
"isTestingEnabled" = $true
}
displayName: 'Psake build'
Expand All @@ -20,5 +19,5 @@ steps:
- task: PublishTestResults@2
inputs:
testResultsFormat: 'NUnit'
testResultsFiles: '**/TEST-*.xml'
testResultsFiles: '**/*TEST*.xml'
testRunTitle: 'TcoUnitTests'
43 changes: 28 additions & 15 deletions pipelines/build.ps1
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,8 @@
$gitVersion
$msbuild = '"C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\MSBuild\Current\Bin\MSBuild.exe"'
$dotnet = '"C:\Program Files\dotnet\dotnet.exe"'
$testTargetAmsId = ""
$devenv = "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\devenv.com"
$testTargetAmsId = ([System.Environment]::GetEnvironmentVariable('Tc3Target'))
}

task default -depends CloseVs, Tests, CreatePackages, Finish
Expand Down Expand Up @@ -43,6 +44,8 @@ task Clean -depends Start {
CleanObjBin
RemoveTcBins
RemoveTcProjBins
RemoveGenerated
RemoveMeta
mkdir .\_Vortex\builder -ErrorAction SilentlyContinue
mkdir .\.nuget -ErrorAction SilentlyContinue
mkdir .\_toolz -ErrorAction SilentlyContinue
Expand All @@ -52,18 +55,26 @@ task Clean -depends Start {

task NugetRestore -depends Clean {
EnsureNuget
$command = $msbuild + " -t:restore /p:Configuration=$buildConfig -v:$msbuildVerbosity /consoleloggerparameters:ErrorsOnly TcOpen.build.slnf"
# $command = $msbuild + " -t:restore /p:Configuration=$buildConfig -v:$msbuildVerbosity /consoleloggerparameters:ErrorsOnly TcOpen.build.slnf"
$command = $dotnet + " restore TcOpen.build.slnf"

Write-Host $command
exec{
cmd /c $command
}

# To Restore IVC into _Vortex directory
$command = $msbuild + " -v:$msbuildVerbosity /consoleloggerparameters:ErrorsOnly src\TcoCore\TcoCore.slnf"
Write-Host $command
exec{
cmd /c $command
}
try {
# Try to Restore IVC into _Vortex directory
# May fail due to missing g.cs files
$command = $msbuild + " -v:$msbuildVerbosity /consoleloggerparameters:ErrorsOnly src\TcoCore\TcoCore.slnf"
Write-Host $command
cmd /c $command

}
catch {
# Swallow
}

}

task GitVersion -depends NugetRestore {
Expand All @@ -90,11 +101,14 @@ task OpenVisualStudio -depends GitVersion {
Start-Process .\TcOpen.plc.slnf
}


task BuildWithInxtonBuilder -depends OpenVisualStudio {
$projects = @(
$projects = @(
"src\Tc.Prober\Tc.Prober.slnf",
"src\TcoCore\TcoCore.slnf",
"src\TcoIoBeckhoff\TcoIoBeckhoff.slnf",
"src\TcoPneumatics\TcoPneumatics.slnf"
"src\TcoApplicationExamples\TcoApplicationExamples.slnf"
)

foreach($project in $projects)
Expand Down Expand Up @@ -127,24 +141,24 @@ task CloseVs -depends Build {

task Tests -depends CloseVs -precondition { return $isTestingEnabled } {

& "C:\Program Files (x86)\Microsoft Visual Studio\2019\Professional\Common7\IDE\devenv.com" .\TcOpen.plc.slnf /Rebuild "$buildConfig|TwinCAT RT (x64)"
& $devenv .\TcOpen.plc.slnf /Rebuild "$buildConfig|TwinCAT RT (x64)"

$BootDir = $solutionDir +"\src\TcoCore\src\XaeTcoCore\"
.\pipelines\utils\Load-XaeProject.ps1 $testTargetAmsId $BootDir
exec{
dotnet test .\src\TcoCore\TcoCore.slnf -c $buildConfig -f net48 -v $msbuildVerbosity
dotnet test .\src\TcoCore\TcoCore.slnf -c $buildConfig -f net48 -v $msbuildVerbosity -l:"trx;LogFileName=TEST-TcoCore.xml"
}

$BootDir = $solutionDir +"\src\TcoIoBeckhoff\src\XaeTcoIoBeckhoff\"
.\pipelines\utils\Load-XaeProject.ps1 $testTargetAmsId $BootDir
exec{
dotnet test .\src\TcoIoBeckhoff\TcoIoBeckhoff.slnf -c $buildConfig -f net48 -v $msbuildVerbosity
dotnet test .\src\TcoIoBeckhoff\TcoIoBeckhoff.slnf -c $buildConfig -f net48 -v $msbuildVerbosity -l:"trx;LogFileName=TEST-TcoIoBeckhoff.xml"
}

$BootDir = $solutionDir +"src\TcoPneumatics\src\XaeTcoPneumatics\"
.\pipelines\utils\Load-XaeProject.ps1 $testTargetAmsId $BootDir
exec{
dotnet test .\src\TcoPneumatics\TcoPneumatics.slnf -c $buildConfig -f net48 -v $msbuildVerbosity
dotnet test .\src\TcoPneumatics\TcoPneumatics.slnf -c $buildConfig -f net48 -v $msbuildVerbosity -l:"trx;LogFileName=TEST-TcoPneumatics.xml"
}
.\pipelines\utils\CleanupTargetBoot.ps1 $testTargetAmsId

Expand Down Expand Up @@ -179,8 +193,7 @@ task CreatePackages -depends ClearPackages {
}

task PublishPackages -depends CreatePackages -precondition {return $publishNugets} {
Write-Host "About to"
PushNugets -folderWithNugets .\nugets\dependants -token $nugetToken -source $nugetSource
Write-Host "About to"
PushNugets -folderWithNugets .\nugets -token $nugetToken -source $nugetSource
}

Expand Down
36 changes: 36 additions & 0 deletions pipelines/tcobuildutils.psm1
Original file line number Diff line number Diff line change
Expand Up @@ -198,6 +198,42 @@ function RemoveTcProjBins {
}
}

function RemoveGenerated {
GetRootDirectoryOf "*.csproj" | ForEach-Object {
Push-Location ($_)

$removeFolders = @( ".\_generated")
# $removeFolderContent = @(".\_meta\*", ".\_meta\*")

$folder = $_.Replace("Microsoft.PowerShell.Core\FileSystem::","")

foreach($item in ($removeFolders)){
Write-Host "In $folder trying to remove $item"
Remove-Item -r $item -ErrorAction SilentlyContinue
}

Pop-Location
}
}

function RemoveMeta {
GetRootDirectoryOf "*.csproj" | ForEach-Object {
Push-Location ($_)

$removeFolders = @( ".\_meta")
# $removeFolderContent = @(".\_meta\*", ".\_meta\*")

$folder = $_.Replace("Microsoft.PowerShell.Core\FileSystem::","")

foreach($item in ($removeFolders)){
Write-Host "In $folder trying to remove $item"
Remove-Item -r $item -ErrorAction SilentlyContinue
}

Pop-Location
}
}

function GitVersionToPlcVersion{
param($gitVersion)
return $gitVersion.Major.ToString() + "." + $gitVersion.Minor.ToString() + "." + $gitVersion.Patch.ToString() + "." + $gitVersion.PreReleaseNumber.ToString()
Expand Down
11 changes: 11 additions & 0 deletions src/Tc.Prober/Tc.Prober.slnf
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
{
"solution": {
"path": "..\\..\\TcOpen.sln",
"projects": [
"src\\Tc.Prober\\src\\Tc.Prober\\Tc.Prober.csproj",
"src\\Tc.Prober\\tests\\PlcTcProberTestsConnector\\PlcTcProberTestsConnector.csproj",
"src\\Tc.Prober\\tests\\Tc.ProberTest\\Tc.ProberTest.csproj",
"src\\Tc.Prober\\tests\\TcProber\\TcProber.tsproj",
]
}
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
8 changes: 8 additions & 0 deletions src/Tc.Prober/src/Tc.Prober/Properties/AssemblyInfo.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;

[assembly:InternalsVisibleTo("Tc.ProberTest")]
[assembly: AssemblyVersion("0.1.0.0")]
[assembly: AssemblyFileVersion("0.1.0.0")]
[assembly: AssemblyInformationalVersion("0.1.0-init-dev.1+216.Branch.init-dev.Sha.f190c8bf3fa438c8ec80abb753b335c10ad7865f")]
20 changes: 20 additions & 0 deletions src/Tc.Prober/src/Tc.Prober/Recorder/DummyRecorder.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
namespace Tc.Prober.Recorder
{
internal class DummyRecorder : IRecorder
{
public void Act()
{

}

public void Begin(string fileName)
{

}

public void End(string fileName)
{

}
}
}
66 changes: 66 additions & 0 deletions src/Tc.Prober/src/Tc.Prober/Recorder/Graver.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
namespace Tc.Prober.Recorder
{
using Newtonsoft.Json;
using System.IO;
using System.Linq;
using Vortex.Connector;

internal class Graver<T, P> : RecorderBase<T, P>, IRecorder where T : IVortexObject, new() where P : IPlain, new()
{
public Graver(T obj, long minUniqueFrames = 10) : base(obj)
{
MinUniqueFrames = minUniqueFrames;
}

private long MinUniqueFrames { get; }

public void Stop(string fileName)
{
var squashedRecording = Squash(this.recording);


if (squashedRecording.Frames.LongCount() < MinUniqueFrames)
{
throw new InsufficientNumberOfFramesException($"There is no sufficient number of unique frames recorded ('{squashedRecording.Frames.LongCount()}'). Minimum required number of frames is '{MinUniqueFrames}'. " +
$"You can modify the value by setting 'minUniqueFrames' construction parameter.");
}

using (StreamWriter sw = new StreamWriter(fileName))
{
using (JsonWriter writer = new JsonTextWriter(sw))
{
var serializer = new Newtonsoft.Json.JsonSerializer();
serializer.Serialize(writer, squashedRecording);
}
}
}

private string FileName { get; }
private IValueTag Stamper { get; }

public void StartRecording()
{
recording.StartRecording();
}

public void RecordFrame()
{
recording.AddRecordFrame(new RecordFrame<P>() { Object = (P)GetPlainerCopyNow(Object) });
}

public void Begin(string fileName)
{
this.StartRecording();
}

public void Act()
{
this.RecordFrame();
}

public void End(string fileName)
{
this.Stop(fileName);
}
}
}
9 changes: 9 additions & 0 deletions src/Tc.Prober/src/Tc.Prober/Recorder/IRecorder.cs
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
namespace Tc.Prober.Recorder
{
public interface IRecorder
{
void Begin(string fileName);
void Act();
void End(string fileName);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
namespace Tc.Prober.Recorder
{
using System;
using System.Runtime.Serialization;

public class InsufficientNumberOfFramesException : Exception
{
public InsufficientNumberOfFramesException()
{
}

public InsufficientNumberOfFramesException(string message) : base(message)
{
}

public InsufficientNumberOfFramesException(string message, Exception innerException) : base(message, innerException)
{
}

protected InsufficientNumberOfFramesException(SerializationInfo info, StreamingContext context) : base(info, context)
{
}
}
}
Loading