0001 function P=DS_CO_DA_POMDP(varargin)
0002 
0003 
0004 
0005 
0006 
0007 
0008 
0009 
0010 
0011 
0012 
0013 
0014 
0015 
0016 
0017 
0018 
0019 
0020 
0021 
0022 
0023 
0024 
0025 
0026 
0027 
0028   switch nargin
0029     case 1
0030       if isa(varargin{1},'DS_CO_DA_POMDP')
0031         P=varargin{1};
0032       else
0033         error('Wrong parameter type in DS_CO_DA_POMDP');
0034       end
0035       
0036     case 9
0037       
0038       if isa(varargin{2},'CSpace')
0039         P.S=varargin{2};
0040       else
0041         error('Wrong parameter type in DS_CO_DA_POMDP');
0042       end
0043 
0044       if isa(varargin{3},'DSpace')
0045         P.A=varargin{3};
0046       else
0047         error('Wrong parameter type in DS_CO_DA_POMDP');
0048       end
0049 
0050       if isa(varargin{4},'CSpace')
0051         P.O=varargin{4};
0052       else
0053         error('Wrong parameter type in DS_CO_DA_POMDP');
0054       end
0055 
0056       if isa(varargin{5},'DS_DA_ActionModel')
0057         AM=varargin{5};
0058       else
0059         error('Wrong parameter type in DS_CO_DA_POMDP');
0060       end
0061 
0062       if isa(varargin{6},'DS_CO_ObsModel')
0063         OM=varargin{6};
0064       else
0065         error('Wrong parameter type in DS_CO_DA_POMDP');
0066       end
0067       
0068       if isa(varargin{7},'DS_DA_RewardModel')
0069         RM=varargin{7};
0070       else
0071         error('Wrong parameter type in DS_CO_DA_POMDP');
0072       end
0073       
0074       PBase=DS_CO_POMDP(varargin{1},varargin{8},varargin{9});
0075       
0076       P=class(P,'DS_CO_DA_POMDP',PBase,AM,OM,RM);
0077       
0078     otherwise
0079       error('Wrong number of parameters in CS_CO_DA_POMDP');
0080   end