Mercurial > hg > ltpda
diff m-toolbox/classes/@ltpda_obj/ltpda_obj.m @ 0:f0afece42f48
Import.
author | Daniele Nicolodi <nicolodi@science.unitn.it> |
---|---|
date | Wed, 23 Nov 2011 19:22:13 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/m-toolbox/classes/@ltpda_obj/ltpda_obj.m Wed Nov 23 19:22:13 2011 +0100 @@ -0,0 +1,159 @@ +% LTPDA_OBJ is the abstract ltpda base class. +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% +% DESCRIPTION: LTPDA_OBJ is the ltpda base class. +% This ltpda_obj class is an abstract class and it is not +% possible to create an instance of this class. +% +% SUPER CLASSES: handle (MATLAB class) +% +% SUB CLASSES: ltpda_nuc, ltpda_uc +% +% LTPDA_OBJ PROPERTIES: +% +% Protected Properties (read only) +% +% LTPDA_OBJ METHODS: +% +% Public Methods +% eq - Overloads the == operator for ltpda objects. +% get - Get a property of a object. +% isprop - Tests if the given field is one of the object +% properties. +% ne - Overloads the ~= operator for ltpda objects. +% +% Static Methods +% SETS - Retruns the different sets of the constructor +% getDefaultPlist - Returns the default plsit for the specified set-name +% getInfo - Static method to get information of a method +% +% Abstract Methods +% char +% copy +% display +% +% REMARK: It is necessary to define the ABSTRACT methods and properties in +% the sub-classes because if they are not defined is the sub-class +% as well an abstract class. (See ltpda_nuo) +% +% VERSION: $Id: ltpda_obj.m,v 1.39 2011/04/27 11:49:39 hewitson Exp $ +% +% SEE ALSO: ltpda_nuo, ltpda_uo, handle +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +classdef (Hidden = true) ltpda_obj < handle + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % Property definition % + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + %---------- Public (read/write) Properties ---------- + properties + end + + %---------- Protected read-only Properties ---------- + properties (SetAccess = protected) + end + + %---------- Abstract Properties ---------- + properties (Abstract = true, SetAccess = protected) + end + + %---------- Removed properties ---------- + % We have to define the removed properties as hidden constants. + % In case of backwards compatibility it is necessary to keep them because + % MATLAB will read older MAT-files as structures which we have to convert + % into an object if we make major change to a class. + % For MATLAB is a major change if we remove a proeprty. + properties (Constant = true, Hidden = true) + version = ''; + end + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % Check property setting % + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % Constructor % + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + methods + function obj = ltpda_obj(varargin) + end + end + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % Methods (public) % + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + methods (Access = public) + varargout = eq(obj1, obj2, varargin) + varargout = ne(obj1, obj2, varargin) + varargout = isprop(varargin) + end + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % Methods (hidden) % + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + methods (Hidden = true) + end + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % Methods (protected) % + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + methods (Access = protected) + varargout = fromStruct(varargin) + varargout = fromDom(varargin) + end + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % Methods (static) % + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + methods (Static) + + function ii = getInfo(varargin) + ii = utils.helper.generic_getInfo(varargin{:}, 'ltpda_obj'); + end + + function out = VEROUT() + out = '$Id: ltpda_obj.m,v 1.39 2011/04/27 11:49:39 hewitson Exp $'; + end + + function out = SETS() + out = {}; + end + + function out = getDefaultPlist() + out = []; + end + + end + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % Methods (abstract, static, hidden) % + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + methods (Abstract, Static = true, Hidden = true) + varargout = loadobj(varargin) + end + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + % Methods (abstract) % + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + methods (Abstract) + varargout = char(varargin) + varargout = copy(varargin) + txt = display(varargin) + end + + methods (Abstract = true, Static = true) + varargout = update_struct(varargin); + end + +end +