annotate MASSEFseparator.m @ 38:c7d11a428a0d
tip master
Merge branch 'develop'
* develop:
Updated copyright year.
author |
Christopher Hummersone <c.hummersone@surrey.ac.uk> |
date |
Tue, 16 May 2017 12:15:34 +0100 |
parents |
63df31b4c0b8 |
children |
|
rev |
line source |
c@0
|
1 classdef MASSEFseparator < handle
|
c@0
|
2 %MASSEFseparator Abstract base class for MASSEF separation algorithms
|
c@0
|
3 %
|
c@0
|
4 % MASSEFseparator properties:
|
c@0
|
5 % label - A label for the instance of the algorithm (shown in
|
c@0
|
6 % the results file).
|
c@0
|
7 % estTag - Tags for the estimated outputs.
|
c@0
|
8 %
|
c@0
|
9 % MASSEFseparator methods:
|
c@0
|
10 % MASSEFseparator - Create an instance of the algorithm.
|
c@0
|
11 % separate - Run the separation algorithm on the time-domain
|
c@0
|
12 % mixture (Abstract).
|
c@0
|
13 %
|
c@0
|
14 % Note that this is a handle class and hence derived classes are passed
|
c@0
|
15 % by reference.
|
c@0
|
16 %
|
c@0
|
17 % See also MASSEF.
|
c@0
|
18
|
c@0
|
19 % Copyright 2016 University of Surrey.
|
c@0
|
20
|
c@0
|
21 properties
|
c@0
|
22 label % A label for the instance of the algorithm (shown in the MASSEF results file)
|
c@0
|
23 estTag % Tags for the estimated outputs
|
c@0
|
24 end
|
c@0
|
25
|
c@0
|
26 methods
|
c@0
|
27
|
c@0
|
28 % constructor
|
c@0
|
29 function obj = MASSEFseparator()
|
c@0
|
30 obj.label = '';
|
c@0
|
31 obj.estTag = '';
|
c@0
|
32 end
|
c@0
|
33
|
c@0
|
34 % set estTag
|
c@0
|
35 function set.estTag(obj,val)
|
c@0
|
36 if ischar(val)
|
c@0
|
37 obj.estTag = cellstr(val);
|
c@0
|
38 elseif iscellstr(val)
|
c@0
|
39 obj.estTag = val;
|
c@0
|
40 else
|
c@23
|
41 error('MASSEFseparator:estTag:invalid','''estTag'' must be a char array or cell array of strings');
|
c@0
|
42 end
|
c@0
|
43 end
|
c@0
|
44
|
c@0
|
45 % set label
|
c@0
|
46 function set.label(obj,val)
|
c@0
|
47 if ischar(val)
|
c@0
|
48 obj.label = val;
|
c@0
|
49 else
|
c@23
|
50 error('MASSEFseparator:label:invalid','''label'' must be a char array');
|
c@0
|
51 end
|
c@0
|
52 end
|
c@0
|
53
|
c@0
|
54 end
|
c@0
|
55
|
c@0
|
56 methods (Abstract)
|
c@0
|
57
|
c@0
|
58 % separation
|
c@0
|
59 [signal,mask,est_azis,est_eles] = separate(obj,mixture);
|
c@0
|
60
|
c@0
|
61 end
|
c@0
|
62
|
c@0
|
63 end
|