From 09152f470187e75f57385a19896f85411ca25774 Mon Sep 17 00:00:00 2001
From: Aaron Cuevas Lopez <aacuelo@teleco.upv.es>
Date: Tue, 11 Jul 2017 04:47:32 +0200
Subject: [PATCH] Fixes on nwb format

---
 Builds/VisualStudio2013/Plugins/Plugins.sln | 80 ++++++++++-----------
 Source/Plugins/NWBFormat/NWBFormat.cpp      | 20 +++---
 Source/Plugins/NWBFormat/NWBRecording.cpp   |  7 +-
 3 files changed, 54 insertions(+), 53 deletions(-)

diff --git a/Builds/VisualStudio2013/Plugins/Plugins.sln b/Builds/VisualStudio2013/Plugins/Plugins.sln
index 4f3221338..d03b5fb13 100644
--- a/Builds/VisualStudio2013/Plugins/Plugins.sln
+++ b/Builds/VisualStudio2013/Plugins/Plugins.sln
@@ -69,8 +69,8 @@ Global
 		{41BD734E-4939-47AD-9714-9629538F7206}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{41BD734E-4939-47AD-9714-9629538F7206}.Debug|Win32.ActiveCfg = Debug|Win32
 		{41BD734E-4939-47AD-9714-9629538F7206}.Debug|Win32.Build.0 = Debug|Win32
-		{41BD734E-4939-47AD-9714-9629538F7206}.Debug|x64.ActiveCfg = Release|x64
-		{41BD734E-4939-47AD-9714-9629538F7206}.Debug|x64.Build.0 = Release|x64
+		{41BD734E-4939-47AD-9714-9629538F7206}.Debug|x64.ActiveCfg = Debug|x64
+		{41BD734E-4939-47AD-9714-9629538F7206}.Debug|x64.Build.0 = Debug|x64
 		{41BD734E-4939-47AD-9714-9629538F7206}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{41BD734E-4939-47AD-9714-9629538F7206}.Release|Mixed Platforms.Build.0 = Release|x64
 		{41BD734E-4939-47AD-9714-9629538F7206}.Release|Win32.ActiveCfg = Release|Win32
@@ -81,8 +81,8 @@ Global
 		{554C8744-32CD-427C-A9E5-BF9A44440CED}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{554C8744-32CD-427C-A9E5-BF9A44440CED}.Debug|Win32.ActiveCfg = Debug|Win32
 		{554C8744-32CD-427C-A9E5-BF9A44440CED}.Debug|Win32.Build.0 = Debug|Win32
-		{554C8744-32CD-427C-A9E5-BF9A44440CED}.Debug|x64.ActiveCfg = Release|x64
-		{554C8744-32CD-427C-A9E5-BF9A44440CED}.Debug|x64.Build.0 = Release|x64
+		{554C8744-32CD-427C-A9E5-BF9A44440CED}.Debug|x64.ActiveCfg = Debug|x64
+		{554C8744-32CD-427C-A9E5-BF9A44440CED}.Debug|x64.Build.0 = Debug|x64
 		{554C8744-32CD-427C-A9E5-BF9A44440CED}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{554C8744-32CD-427C-A9E5-BF9A44440CED}.Release|Mixed Platforms.Build.0 = Release|x64
 		{554C8744-32CD-427C-A9E5-BF9A44440CED}.Release|Win32.ActiveCfg = Release|Win32
@@ -93,8 +93,8 @@ Global
 		{7B23828E-559F-4AD2-B75D-D05786F6329C}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{7B23828E-559F-4AD2-B75D-D05786F6329C}.Debug|Win32.ActiveCfg = Debug|Win32
 		{7B23828E-559F-4AD2-B75D-D05786F6329C}.Debug|Win32.Build.0 = Debug|Win32
-		{7B23828E-559F-4AD2-B75D-D05786F6329C}.Debug|x64.ActiveCfg = Release|x64
-		{7B23828E-559F-4AD2-B75D-D05786F6329C}.Debug|x64.Build.0 = Release|x64
+		{7B23828E-559F-4AD2-B75D-D05786F6329C}.Debug|x64.ActiveCfg = Debug|x64
+		{7B23828E-559F-4AD2-B75D-D05786F6329C}.Debug|x64.Build.0 = Debug|x64
 		{7B23828E-559F-4AD2-B75D-D05786F6329C}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{7B23828E-559F-4AD2-B75D-D05786F6329C}.Release|Mixed Platforms.Build.0 = Release|x64
 		{7B23828E-559F-4AD2-B75D-D05786F6329C}.Release|Win32.ActiveCfg = Release|Win32
@@ -105,8 +105,8 @@ Global
 		{D5D58DAC-582B-4F39-9385-E1814D56BCA0}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{D5D58DAC-582B-4F39-9385-E1814D56BCA0}.Debug|Win32.ActiveCfg = Debug|Win32
 		{D5D58DAC-582B-4F39-9385-E1814D56BCA0}.Debug|Win32.Build.0 = Debug|Win32
-		{D5D58DAC-582B-4F39-9385-E1814D56BCA0}.Debug|x64.ActiveCfg = Release|x64
-		{D5D58DAC-582B-4F39-9385-E1814D56BCA0}.Debug|x64.Build.0 = Release|x64
+		{D5D58DAC-582B-4F39-9385-E1814D56BCA0}.Debug|x64.ActiveCfg = Debug|x64
+		{D5D58DAC-582B-4F39-9385-E1814D56BCA0}.Debug|x64.Build.0 = Debug|x64
 		{D5D58DAC-582B-4F39-9385-E1814D56BCA0}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{D5D58DAC-582B-4F39-9385-E1814D56BCA0}.Release|Mixed Platforms.Build.0 = Release|x64
 		{D5D58DAC-582B-4F39-9385-E1814D56BCA0}.Release|Win32.ActiveCfg = Release|Win32
@@ -117,8 +117,8 @@ Global
 		{AC9EBFBF-1599-40CF-8159-3F3AA7DCFAE9}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{AC9EBFBF-1599-40CF-8159-3F3AA7DCFAE9}.Debug|Win32.ActiveCfg = Debug|Win32
 		{AC9EBFBF-1599-40CF-8159-3F3AA7DCFAE9}.Debug|Win32.Build.0 = Debug|Win32
-		{AC9EBFBF-1599-40CF-8159-3F3AA7DCFAE9}.Debug|x64.ActiveCfg = Release|x64
-		{AC9EBFBF-1599-40CF-8159-3F3AA7DCFAE9}.Debug|x64.Build.0 = Release|x64
+		{AC9EBFBF-1599-40CF-8159-3F3AA7DCFAE9}.Debug|x64.ActiveCfg = Debug|x64
+		{AC9EBFBF-1599-40CF-8159-3F3AA7DCFAE9}.Debug|x64.Build.0 = Debug|x64
 		{AC9EBFBF-1599-40CF-8159-3F3AA7DCFAE9}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{AC9EBFBF-1599-40CF-8159-3F3AA7DCFAE9}.Release|Mixed Platforms.Build.0 = Release|x64
 		{AC9EBFBF-1599-40CF-8159-3F3AA7DCFAE9}.Release|Win32.ActiveCfg = Release|Win32
@@ -129,8 +129,8 @@ Global
 		{9D050DCC-52DF-429E-ABF0-EF0B64A9DA5A}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{9D050DCC-52DF-429E-ABF0-EF0B64A9DA5A}.Debug|Win32.ActiveCfg = Debug|Win32
 		{9D050DCC-52DF-429E-ABF0-EF0B64A9DA5A}.Debug|Win32.Build.0 = Debug|Win32
-		{9D050DCC-52DF-429E-ABF0-EF0B64A9DA5A}.Debug|x64.ActiveCfg = Release|x64
-		{9D050DCC-52DF-429E-ABF0-EF0B64A9DA5A}.Debug|x64.Build.0 = Release|x64
+		{9D050DCC-52DF-429E-ABF0-EF0B64A9DA5A}.Debug|x64.ActiveCfg = Debug|x64
+		{9D050DCC-52DF-429E-ABF0-EF0B64A9DA5A}.Debug|x64.Build.0 = Debug|x64
 		{9D050DCC-52DF-429E-ABF0-EF0B64A9DA5A}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{9D050DCC-52DF-429E-ABF0-EF0B64A9DA5A}.Release|Mixed Platforms.Build.0 = Release|x64
 		{9D050DCC-52DF-429E-ABF0-EF0B64A9DA5A}.Release|Win32.ActiveCfg = Release|Win32
@@ -141,8 +141,8 @@ Global
 		{79703461-0C53-417B-BEA2-B3903A41C123}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{79703461-0C53-417B-BEA2-B3903A41C123}.Debug|Win32.ActiveCfg = Debug|Win32
 		{79703461-0C53-417B-BEA2-B3903A41C123}.Debug|Win32.Build.0 = Debug|Win32
-		{79703461-0C53-417B-BEA2-B3903A41C123}.Debug|x64.ActiveCfg = Release|x64
-		{79703461-0C53-417B-BEA2-B3903A41C123}.Debug|x64.Build.0 = Release|x64
+		{79703461-0C53-417B-BEA2-B3903A41C123}.Debug|x64.ActiveCfg = Debug|x64
+		{79703461-0C53-417B-BEA2-B3903A41C123}.Debug|x64.Build.0 = Debug|x64
 		{79703461-0C53-417B-BEA2-B3903A41C123}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{79703461-0C53-417B-BEA2-B3903A41C123}.Release|Mixed Platforms.Build.0 = Release|x64
 		{79703461-0C53-417B-BEA2-B3903A41C123}.Release|Win32.ActiveCfg = Release|Win32
@@ -153,8 +153,8 @@ Global
 		{9C33B87F-24D7-4952-91C0-44759C77F491}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{9C33B87F-24D7-4952-91C0-44759C77F491}.Debug|Win32.ActiveCfg = Debug|Win32
 		{9C33B87F-24D7-4952-91C0-44759C77F491}.Debug|Win32.Build.0 = Debug|Win32
-		{9C33B87F-24D7-4952-91C0-44759C77F491}.Debug|x64.ActiveCfg = Release|x64
-		{9C33B87F-24D7-4952-91C0-44759C77F491}.Debug|x64.Build.0 = Release|x64
+		{9C33B87F-24D7-4952-91C0-44759C77F491}.Debug|x64.ActiveCfg = Debug|x64
+		{9C33B87F-24D7-4952-91C0-44759C77F491}.Debug|x64.Build.0 = Debug|x64
 		{9C33B87F-24D7-4952-91C0-44759C77F491}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{9C33B87F-24D7-4952-91C0-44759C77F491}.Release|Mixed Platforms.Build.0 = Release|x64
 		{9C33B87F-24D7-4952-91C0-44759C77F491}.Release|Win32.ActiveCfg = Release|Win32
@@ -165,8 +165,8 @@ Global
 		{75DEED7F-17D0-4805-9272-96288B79BA53}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{75DEED7F-17D0-4805-9272-96288B79BA53}.Debug|Win32.ActiveCfg = Debug|Win32
 		{75DEED7F-17D0-4805-9272-96288B79BA53}.Debug|Win32.Build.0 = Debug|Win32
-		{75DEED7F-17D0-4805-9272-96288B79BA53}.Debug|x64.ActiveCfg = Release|x64
-		{75DEED7F-17D0-4805-9272-96288B79BA53}.Debug|x64.Build.0 = Release|x64
+		{75DEED7F-17D0-4805-9272-96288B79BA53}.Debug|x64.ActiveCfg = Debug|x64
+		{75DEED7F-17D0-4805-9272-96288B79BA53}.Debug|x64.Build.0 = Debug|x64
 		{75DEED7F-17D0-4805-9272-96288B79BA53}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{75DEED7F-17D0-4805-9272-96288B79BA53}.Release|Mixed Platforms.Build.0 = Release|x64
 		{75DEED7F-17D0-4805-9272-96288B79BA53}.Release|Win32.ActiveCfg = Release|Win32
@@ -177,8 +177,8 @@ Global
 		{A29DFCB3-837D-491F-B9C4-3E0C93404128}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{A29DFCB3-837D-491F-B9C4-3E0C93404128}.Debug|Win32.ActiveCfg = Debug|Win32
 		{A29DFCB3-837D-491F-B9C4-3E0C93404128}.Debug|Win32.Build.0 = Debug|Win32
-		{A29DFCB3-837D-491F-B9C4-3E0C93404128}.Debug|x64.ActiveCfg = Release|x64
-		{A29DFCB3-837D-491F-B9C4-3E0C93404128}.Debug|x64.Build.0 = Release|x64
+		{A29DFCB3-837D-491F-B9C4-3E0C93404128}.Debug|x64.ActiveCfg = Debug|x64
+		{A29DFCB3-837D-491F-B9C4-3E0C93404128}.Debug|x64.Build.0 = Debug|x64
 		{A29DFCB3-837D-491F-B9C4-3E0C93404128}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{A29DFCB3-837D-491F-B9C4-3E0C93404128}.Release|Mixed Platforms.Build.0 = Release|x64
 		{A29DFCB3-837D-491F-B9C4-3E0C93404128}.Release|Win32.ActiveCfg = Release|Win32
@@ -189,8 +189,8 @@ Global
 		{88971DC8-9416-4229-AAB8-870988D9A81A}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{88971DC8-9416-4229-AAB8-870988D9A81A}.Debug|Win32.ActiveCfg = Debug|Win32
 		{88971DC8-9416-4229-AAB8-870988D9A81A}.Debug|Win32.Build.0 = Debug|Win32
-		{88971DC8-9416-4229-AAB8-870988D9A81A}.Debug|x64.ActiveCfg = Release|x64
-		{88971DC8-9416-4229-AAB8-870988D9A81A}.Debug|x64.Build.0 = Release|x64
+		{88971DC8-9416-4229-AAB8-870988D9A81A}.Debug|x64.ActiveCfg = Debug|x64
+		{88971DC8-9416-4229-AAB8-870988D9A81A}.Debug|x64.Build.0 = Debug|x64
 		{88971DC8-9416-4229-AAB8-870988D9A81A}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{88971DC8-9416-4229-AAB8-870988D9A81A}.Release|Mixed Platforms.Build.0 = Release|x64
 		{88971DC8-9416-4229-AAB8-870988D9A81A}.Release|Win32.ActiveCfg = Release|Win32
@@ -201,8 +201,8 @@ Global
 		{6A7972E7-89DD-45F3-BFA5-C50F9B701B7D}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{6A7972E7-89DD-45F3-BFA5-C50F9B701B7D}.Debug|Win32.ActiveCfg = Debug|Win32
 		{6A7972E7-89DD-45F3-BFA5-C50F9B701B7D}.Debug|Win32.Build.0 = Debug|Win32
-		{6A7972E7-89DD-45F3-BFA5-C50F9B701B7D}.Debug|x64.ActiveCfg = Release|x64
-		{6A7972E7-89DD-45F3-BFA5-C50F9B701B7D}.Debug|x64.Build.0 = Release|x64
+		{6A7972E7-89DD-45F3-BFA5-C50F9B701B7D}.Debug|x64.ActiveCfg = Debug|x64
+		{6A7972E7-89DD-45F3-BFA5-C50F9B701B7D}.Debug|x64.Build.0 = Debug|x64
 		{6A7972E7-89DD-45F3-BFA5-C50F9B701B7D}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{6A7972E7-89DD-45F3-BFA5-C50F9B701B7D}.Release|Mixed Platforms.Build.0 = Release|x64
 		{6A7972E7-89DD-45F3-BFA5-C50F9B701B7D}.Release|Win32.ActiveCfg = Release|Win32
@@ -213,8 +213,8 @@ Global
 		{11C301E8-35E7-48AE-978F-4AC651CEFC67}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{11C301E8-35E7-48AE-978F-4AC651CEFC67}.Debug|Win32.ActiveCfg = Debug|Win32
 		{11C301E8-35E7-48AE-978F-4AC651CEFC67}.Debug|Win32.Build.0 = Debug|Win32
-		{11C301E8-35E7-48AE-978F-4AC651CEFC67}.Debug|x64.ActiveCfg = Release|x64
-		{11C301E8-35E7-48AE-978F-4AC651CEFC67}.Debug|x64.Build.0 = Release|x64
+		{11C301E8-35E7-48AE-978F-4AC651CEFC67}.Debug|x64.ActiveCfg = Debug|x64
+		{11C301E8-35E7-48AE-978F-4AC651CEFC67}.Debug|x64.Build.0 = Debug|x64
 		{11C301E8-35E7-48AE-978F-4AC651CEFC67}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{11C301E8-35E7-48AE-978F-4AC651CEFC67}.Release|Mixed Platforms.Build.0 = Release|x64
 		{11C301E8-35E7-48AE-978F-4AC651CEFC67}.Release|Win32.ActiveCfg = Release|Win32
@@ -223,7 +223,7 @@ Global
 		{11C301E8-35E7-48AE-978F-4AC651CEFC67}.Release|x64.Build.0 = Release|x64
 		{3A753B88-4374-4456-93D8-D0FDC9DCACF3}.Debug|Mixed Platforms.ActiveCfg = Release|x64
 		{3A753B88-4374-4456-93D8-D0FDC9DCACF3}.Debug|Win32.ActiveCfg = Debug|Win32
-		{3A753B88-4374-4456-93D8-D0FDC9DCACF3}.Debug|x64.ActiveCfg = Release|x64
+		{3A753B88-4374-4456-93D8-D0FDC9DCACF3}.Debug|x64.ActiveCfg = Debug|x64
 		{3A753B88-4374-4456-93D8-D0FDC9DCACF3}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{3A753B88-4374-4456-93D8-D0FDC9DCACF3}.Release|Win32.ActiveCfg = Release|Win32
 		{3A753B88-4374-4456-93D8-D0FDC9DCACF3}.Release|x64.ActiveCfg = Release|x64
@@ -231,8 +231,8 @@ Global
 		{2A290337-FC79-4987-8488-A71F29252DB0}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{2A290337-FC79-4987-8488-A71F29252DB0}.Debug|Win32.ActiveCfg = Debug|Win32
 		{2A290337-FC79-4987-8488-A71F29252DB0}.Debug|Win32.Build.0 = Debug|Win32
-		{2A290337-FC79-4987-8488-A71F29252DB0}.Debug|x64.ActiveCfg = Release|x64
-		{2A290337-FC79-4987-8488-A71F29252DB0}.Debug|x64.Build.0 = Release|x64
+		{2A290337-FC79-4987-8488-A71F29252DB0}.Debug|x64.ActiveCfg = Debug|x64
+		{2A290337-FC79-4987-8488-A71F29252DB0}.Debug|x64.Build.0 = Debug|x64
 		{2A290337-FC79-4987-8488-A71F29252DB0}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{2A290337-FC79-4987-8488-A71F29252DB0}.Release|Mixed Platforms.Build.0 = Release|x64
 		{2A290337-FC79-4987-8488-A71F29252DB0}.Release|Win32.ActiveCfg = Release|Win32
@@ -243,8 +243,8 @@ Global
 		{D0AEE4AA-68A7-4598-89E4-3BF5A5EBCA2A}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{D0AEE4AA-68A7-4598-89E4-3BF5A5EBCA2A}.Debug|Win32.ActiveCfg = Debug|Win32
 		{D0AEE4AA-68A7-4598-89E4-3BF5A5EBCA2A}.Debug|Win32.Build.0 = Debug|Win32
-		{D0AEE4AA-68A7-4598-89E4-3BF5A5EBCA2A}.Debug|x64.ActiveCfg = Release|x64
-		{D0AEE4AA-68A7-4598-89E4-3BF5A5EBCA2A}.Debug|x64.Build.0 = Release|x64
+		{D0AEE4AA-68A7-4598-89E4-3BF5A5EBCA2A}.Debug|x64.ActiveCfg = Debug|x64
+		{D0AEE4AA-68A7-4598-89E4-3BF5A5EBCA2A}.Debug|x64.Build.0 = Debug|x64
 		{D0AEE4AA-68A7-4598-89E4-3BF5A5EBCA2A}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{D0AEE4AA-68A7-4598-89E4-3BF5A5EBCA2A}.Release|Mixed Platforms.Build.0 = Release|x64
 		{D0AEE4AA-68A7-4598-89E4-3BF5A5EBCA2A}.Release|Win32.ActiveCfg = Release|Win32
@@ -253,7 +253,7 @@ Global
 		{D0AEE4AA-68A7-4598-89E4-3BF5A5EBCA2A}.Release|x64.Build.0 = Release|x64
 		{767D282E-0BE5-4B35-874A-3B1ED925F06B}.Debug|Mixed Platforms.ActiveCfg = Release|x64
 		{767D282E-0BE5-4B35-874A-3B1ED925F06B}.Debug|Win32.ActiveCfg = Debug|Win32
-		{767D282E-0BE5-4B35-874A-3B1ED925F06B}.Debug|x64.ActiveCfg = Release|x64
+		{767D282E-0BE5-4B35-874A-3B1ED925F06B}.Debug|x64.ActiveCfg = Debug|x64
 		{767D282E-0BE5-4B35-874A-3B1ED925F06B}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{767D282E-0BE5-4B35-874A-3B1ED925F06B}.Release|Win32.ActiveCfg = Release|Win32
 		{767D282E-0BE5-4B35-874A-3B1ED925F06B}.Release|x64.ActiveCfg = Release|x64
@@ -261,8 +261,8 @@ Global
 		{9DB31964-F7E8-49B0-92E9-BAB2C35AF4B5}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{9DB31964-F7E8-49B0-92E9-BAB2C35AF4B5}.Debug|Win32.ActiveCfg = Debug|Win32
 		{9DB31964-F7E8-49B0-92E9-BAB2C35AF4B5}.Debug|Win32.Build.0 = Debug|Win32
-		{9DB31964-F7E8-49B0-92E9-BAB2C35AF4B5}.Debug|x64.ActiveCfg = Release|x64
-		{9DB31964-F7E8-49B0-92E9-BAB2C35AF4B5}.Debug|x64.Build.0 = Release|x64
+		{9DB31964-F7E8-49B0-92E9-BAB2C35AF4B5}.Debug|x64.ActiveCfg = Debug|x64
+		{9DB31964-F7E8-49B0-92E9-BAB2C35AF4B5}.Debug|x64.Build.0 = Debug|x64
 		{9DB31964-F7E8-49B0-92E9-BAB2C35AF4B5}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{9DB31964-F7E8-49B0-92E9-BAB2C35AF4B5}.Release|Mixed Platforms.Build.0 = Release|x64
 		{9DB31964-F7E8-49B0-92E9-BAB2C35AF4B5}.Release|Win32.ActiveCfg = Release|Win32
@@ -273,8 +273,8 @@ Global
 		{A6E2C4F0-63A3-496B-8929-1B2785FDBBFD}.Debug|Mixed Platforms.Build.0 = Release|x64
 		{A6E2C4F0-63A3-496B-8929-1B2785FDBBFD}.Debug|Win32.ActiveCfg = Debug|Win32
 		{A6E2C4F0-63A3-496B-8929-1B2785FDBBFD}.Debug|Win32.Build.0 = Debug|Win32
-		{A6E2C4F0-63A3-496B-8929-1B2785FDBBFD}.Debug|x64.ActiveCfg = Release|x64
-		{A6E2C4F0-63A3-496B-8929-1B2785FDBBFD}.Debug|x64.Build.0 = Release|x64
+		{A6E2C4F0-63A3-496B-8929-1B2785FDBBFD}.Debug|x64.ActiveCfg = Debug|x64
+		{A6E2C4F0-63A3-496B-8929-1B2785FDBBFD}.Debug|x64.Build.0 = Debug|x64
 		{A6E2C4F0-63A3-496B-8929-1B2785FDBBFD}.Release|Mixed Platforms.ActiveCfg = Release|x64
 		{A6E2C4F0-63A3-496B-8929-1B2785FDBBFD}.Release|Mixed Platforms.Build.0 = Release|x64
 		{A6E2C4F0-63A3-496B-8929-1B2785FDBBFD}.Release|Win32.ActiveCfg = Release|Win32
@@ -285,8 +285,8 @@ Global
 		{270F2CBD-EE26-44CF-B53C-068CA80BFBF7}.Debug|Mixed Platforms.Build.0 = Debug|Win32
 		{270F2CBD-EE26-44CF-B53C-068CA80BFBF7}.Debug|Win32.ActiveCfg = Debug|Win32
 		{270F2CBD-EE26-44CF-B53C-068CA80BFBF7}.Debug|Win32.Build.0 = Debug|Win32
-		{270F2CBD-EE26-44CF-B53C-068CA80BFBF7}.Debug|x64.ActiveCfg = Release|x64
-		{270F2CBD-EE26-44CF-B53C-068CA80BFBF7}.Debug|x64.Build.0 = Release|x64
+		{270F2CBD-EE26-44CF-B53C-068CA80BFBF7}.Debug|x64.ActiveCfg = Debug|x64
+		{270F2CBD-EE26-44CF-B53C-068CA80BFBF7}.Debug|x64.Build.0 = Debug|x64
 		{270F2CBD-EE26-44CF-B53C-068CA80BFBF7}.Release|Mixed Platforms.ActiveCfg = Release|Win32
 		{270F2CBD-EE26-44CF-B53C-068CA80BFBF7}.Release|Mixed Platforms.Build.0 = Release|Win32
 		{270F2CBD-EE26-44CF-B53C-068CA80BFBF7}.Release|Win32.ActiveCfg = Release|Win32
@@ -297,8 +297,8 @@ Global
 		{F250DB70-6E3E-408C-BD9E-1483D574499D}.Debug|Mixed Platforms.Build.0 = Debug|Win32
 		{F250DB70-6E3E-408C-BD9E-1483D574499D}.Debug|Win32.ActiveCfg = Debug|Win32
 		{F250DB70-6E3E-408C-BD9E-1483D574499D}.Debug|Win32.Build.0 = Debug|Win32
-		{F250DB70-6E3E-408C-BD9E-1483D574499D}.Debug|x64.ActiveCfg = Release|x64
-		{F250DB70-6E3E-408C-BD9E-1483D574499D}.Debug|x64.Build.0 = Release|x64
+		{F250DB70-6E3E-408C-BD9E-1483D574499D}.Debug|x64.ActiveCfg = Debug|x64
+		{F250DB70-6E3E-408C-BD9E-1483D574499D}.Debug|x64.Build.0 = Debug|x64
 		{F250DB70-6E3E-408C-BD9E-1483D574499D}.Release|Mixed Platforms.ActiveCfg = Release|Win32
 		{F250DB70-6E3E-408C-BD9E-1483D574499D}.Release|Mixed Platforms.Build.0 = Release|Win32
 		{F250DB70-6E3E-408C-BD9E-1483D574499D}.Release|Win32.ActiveCfg = Release|Win32
diff --git a/Source/Plugins/NWBFormat/NWBFormat.cpp b/Source/Plugins/NWBFormat/NWBFormat.cpp
index 7ceff67fd..ecb504c57 100644
--- a/Source/Plugins/NWBFormat/NWBFormat.cpp
+++ b/Source/Plugins/NWBFormat/NWBFormat.cpp
@@ -117,7 +117,7 @@ bool NWBFile::startNewRecording(int recordingNumber, const Array<ContinuousGroup
 	 {
 		 //All channels in a group will share the same source information (any caller to this method MUST assure this happen
 		 //so we just pick the first channel.
-		 const DataChannel* info = continuousArray[i][0];
+		 const DataChannel* info = continuousArray.getReference(i)[0];
 		 basePath = rootPath + "/continuous/processor" + String(info->getCurrentNodeID()) + "_" + String(info->getSourceNodeID());
 		 if (info->getSourceSubprocessorCount() > 1) basePath += "." + String(info->getSubProcessorIdx());
 		 String name = info->getCurrentNodeName() + " (" + String(info->getCurrentNodeID()) + ") From " + info->getSourceName() + " (" + String(info->getSourceNodeID());
@@ -129,7 +129,7 @@ bool NWBFile::startNewRecording(int recordingNumber, const Array<ContinuousGroup
 		 if (!createTimeSeriesBase(basePath, name, "Stores acquired voltage data from extracellular recordings", "", ancestry)) return false;
 		 tsStruct = new TimeSeries();
 		 tsStruct->basePath = basePath;
-		 dSet = createDataSet(BaseDataType::I16, 0, CHUNK_XSIZE, basePath + "/data");
+		 dSet = createDataSet(BaseDataType::I16, 0, continuousArray.getReference(i).size(), CHUNK_XSIZE, basePath + "/data");
 		 if (dSet == nullptr)
 		 {
 			 std::cerr << "Error creating dataset for " << name << std::endl;
@@ -147,11 +147,11 @@ bool NWBFile::startNewRecording(int recordingNumber, const Array<ContinuousGroup
 
 		 basePath = basePath + "/oe_extra_info";
 		 if (createGroup(basePath)) return false;
-		 int nChans = continuousArray[i].size();
+		 int nChans = continuousArray.getReference(i).size();
 		 for (int j = 0; j < nChans; j++)
 		 {
 			 String channelPath = basePath + "/channel" + String(j + 1);
-			 const DataChannel* chan = continuousArray[i][j];
+			 const DataChannel* chan = continuousArray.getReference(i)[j];
 			 createExtraInfo(channelPath, chan->getName(), chan->getDescription(), chan->getIdentifier(), chan->getSourceIndex(), chan->getSourceTypeIndex());
 			 createChannelMetaDataSets(channelPath + "/channel_metadata", chan);
 		 }
@@ -393,7 +393,7 @@ bool NWBFile::startNewRecording(int recordingNumber, const Array<ContinuousGroup
 	 switch (event->getEventType())
 	 {
 	 case EventChannel::TTL:
-		 ttlVal = (static_cast<const TTLEvent*>(event)->getState() ? 1 : -1) * event->getChannel();
+		 ttlVal = (static_cast<const TTLEvent*>(event)->getState() ? 1 : -1) * (event->getChannel() + 1);
 		 dataSrc = &ttlVal;
 		 type = BaseDataType::I8;
 		 break;
@@ -413,7 +413,7 @@ bool NWBFile::startNewRecording(int recordingNumber, const Array<ContinuousGroup
 
 	 CHECK_ERROR(eventDataSets[eventID]->timestampDataSet->writeDataBlock(1, BaseDataType::F64, &timeSec));
 
-	 uint8 controlValue = event->getChannel();
+	 uint8 controlValue = event->getChannel() + 1;
 
 	 CHECK_ERROR(eventDataSets[eventID]->controlDataSet->writeDataBlock(1, BaseDataType::U8, &controlValue));
 
@@ -486,7 +486,7 @@ bool NWBFile::startNewRecording(int recordingNumber, const Array<ContinuousGroup
 	  for (int i = 0; i < nMetaData; i++)
 	  {
 		  const MetaDataDescriptor* desc = info->getMetaDataDescriptor(i);
-		  String fieldName = "Field_" + String(i);
+		  String fieldName = "Field_" + String(i+1);
 		  String name = desc->getName();
 		  String description = desc->getDescription();
 		  String identifier = desc->getIdentifier();
@@ -516,17 +516,17 @@ bool NWBFile::startNewRecording(int recordingNumber, const Array<ContinuousGroup
 	  for (int i = 0; i < nMetaData; i++)
 	  {
 		  const MetaDataDescriptor* desc = info->getEventMetaDataDescriptor(i);
-		  String fieldName = "Field_" + String(i);
+		  String fieldName = "Field_" + String(i+1);
 		  String name = desc->getName();
 		  String description = desc->getDescription();
 		  String identifier = desc->getIdentifier();
 		  BaseDataType type = getMetaDataH5Type(desc->getType(), desc->getLength()); //only string types use length, for others is always set to 1. If array types are implemented, change this
 		  int length = desc->getType() == MetaDataDescriptor::CHAR ? 1 : desc->getLength(); //strings are a single element of length set in the type (see above) while other elements are saved as arrays
-		  HDF5RecordingData* dSet = createDataSet(type, 0, length, EVENT_CHUNK_SIZE, fieldName);
+		  String fullPath = basePath + "/" + fieldName;
+		  HDF5RecordingData* dSet = createDataSet(type, 0, length, EVENT_CHUNK_SIZE, fullPath);
 		  if (!dSet) return false;
 		  timeSeries->metaDataSet.add(dSet);
 
-		  String fullPath = basePath + "/" + fieldName;
 		  CHECK_ERROR(setAttributeStr("openephys:<metadata>/", fullPath, "schema_id"));
 		  CHECK_ERROR(setAttributeStr(name, fullPath, "name"));
 		  CHECK_ERROR(setAttributeStr(description, fullPath, "description"));
diff --git a/Source/Plugins/NWBFormat/NWBRecording.cpp b/Source/Plugins/NWBFormat/NWBRecording.cpp
index 2593c94e8..4737a8083 100644
--- a/Source/Plugins/NWBFormat/NWBRecording.cpp
+++ b/Source/Plugins/NWBFormat/NWBRecording.cpp
@@ -72,11 +72,11 @@
 			 bool found = false;
 			 for (int i = lastId; i < nInfoArrays; i++)
 			 {
-				 if (sourceId == continuousChannels[i][0]->getSourceNodeID() && sourceSubIdx == continuousChannels[i][0]->getSubProcessorIdx())
+				 if (sourceId == continuousChannels.getReference(i)[0]->getSourceNodeID() && sourceSubIdx == continuousChannels.getReference(i)[0]->getSubProcessorIdx())
 				 {
 					 //A dataset for the current processor from the current source is already present
-					 writeChannelIndexes.set(recordedChan, continuousChannels[i].size());
-					 continuousChannels[i].add(getDataChannel(realChan));
+					 writeChannelIndexes.set(recordedChan, continuousChannels.getReference(i).size());
+					 continuousChannels.getReference(i).add(getDataChannel(realChan));
 					 datasetIndexes.set(recordedChan, i);
 					 found = true;
 					 break;
@@ -97,6 +97,7 @@
 	 int nEvents = getNumRecordedEvents();
 	 for (int i = 0; i < nEvents; i++)
 		 eventChannels.add(getEventChannel(i));
+
 	 //open the file
 	 recordFile->open(getNumRecordedChannels() + continuousChannels.size() + eventChannels.size() + spikeChannels.size()); //total channels + timestamp arrays, to create a big enough buffer
 
-- 
GitLab