protected override void DoCreateNewFile(int nrSignals, bool overwrite)
 {
     if (!UseMemoryStream)
     {
         string s = Path.GetExtension(FileName);
         if (string.IsNullOrEmpty(s) || (s.ToLower() != ".edf"))
         {
             throw new EdfPlusFileNameExtException(DataFileConsts.EDFPlusFileNameExt);
         }
     }
     base.DoCreateNewFile(nrSignals + 1, overwrite);
     for (int i = 0; i < nrSignals + 1; i++)
     {
         EdfPlusSignalInfo newSignalDef = new EdfPlusSignalInfo(this);
         SignalInfo.Add(newSignalDef);
     }
     DoOpenFile();
     FileInfo.NrSignals     = nrSignals + 1;
     FileInfo.NrDataRecords = 0;
     if (_annotationSignalNrs == null)
     {
         _annotationSignalNrs = new List <int>(1);
     }
     else
     {
         _annotationSignalNrs.Capacity = 1;
     }
     AnnotationSignalNrs.Add(nrSignals);
     SignalInfo[nrSignals].SignalLabel = EdfConstants.AnnotationsSignalLabel;
     SignalInfo[nrSignals].PhysiMin    = 0;
     SignalInfo[nrSignals].PhysiMax    = 1;
     SignalInfo[nrSignals].DigiMin     = -32768;
     SignalInfo[nrSignals].DigiMax     = 32767;
     SignalInfo[nrSignals].NrSamples   = 10; // default value, large enough for time keeping events
     FileInfo.SignalDataIsContinuous   = true;
 }
 protected override void DoCreateNewFile(int nrSignals, bool overwrite)
 {
     if (!UseMemoryStream)
       {
     string s = Path.GetExtension(FileName);
     if (string.IsNullOrEmpty(s) || (s.ToLower() != ".edf"))
       throw new EdfPlusFileNameExtException(DataFileConsts.EDFPlusFileNameExt);
       }
       base.DoCreateNewFile(nrSignals + 1, overwrite);
       for (int i = 0; i < nrSignals + 1; i++)
       {
     EdfPlusSignalInfo newSignalDef = new EdfPlusSignalInfo(this);
     SignalInfo.Add(newSignalDef);
       }
       DoOpenFile();
       FileInfo.NrSignals = nrSignals + 1;
       FileInfo.NrDataRecords = 0;
       if (_annotationSignalNrs == null)
     _annotationSignalNrs = new List<int>(1);
       else
     _annotationSignalNrs.Capacity = 1;
       AnnotationSignalNrs.Add(nrSignals);
       SignalInfo[nrSignals].SignalLabel = EdfConstants.AnnotationsSignalLabel;
       SignalInfo[nrSignals].PhysiMin = 0;
       SignalInfo[nrSignals].PhysiMax = 1;
       SignalInfo[nrSignals].DigiMin = -32768;
       SignalInfo[nrSignals].DigiMax = 32767;
       SignalInfo[nrSignals].NrSamples = 10; // default value, large enough for time keeping events
       FileInfo.SignalDataIsContinuous = true;
 }