0001 function gb=GBelief(varargin)
0002
0003
0004
0005
0006
0007
0008
0009
0010
0011
0012
0013
0014
0015 switch nargin
0016
0017 case 1
0018 if isa(varargin{1},'GBelief')
0019 gb=varargin{1};
0020 else
0021 if isa(varargin{1},'GMixture')
0022 gb=GBelief(varargin{1},0);
0023 else
0024 error('Wrong parameter type in GBelief constructor');
0025 end
0026 end
0027
0028 case 2
0029 if isa(varargin{1},'GMixture') && isa(varargin{2},'double')
0030
0031 gb.maxC=floor(varargin{2});
0032 gm=Normalize(Compress(varargin{1},gb.maxC));
0033
0034 b=Belief();
0035
0036 gb=class(gb,'GBelief',b,gm);
0037 else
0038 error('Wrong parameter type in GBelief constructor');
0039 end
0040
0041 otherwise
0042 error('Wrong number of parameters in GBelief constructor');
0043 end
0044