classdef (Hidden = true) Component < handle
%COMPONENT base class for all Target Connectivity Components
%
%   This is an undocumented class. Its methods and properties are likely to
%   change without warning from one release to the next.

%   Copyright 2007-2013 The MathWorks, Inc.

    % private properties
    properties (SetAccess = 'private', GetAccess = 'private')
        componentArgs;
    end    
    
    methods
        % constructor
        function this = Component(componentArgs)
            narginchk(1, 1);
            % validate arg
            rtw.connectivity.Utils.validateArg(componentArgs, ...
                                     'coder.connectivity.ComponentArgs');
            % store componentArgs
            this.componentArgs = componentArgs;
        end
    end

    % methods can't be overridden
    methods (Sealed = true)                              
        function componentArgs = getComponentArgs(this)
           narginchk(1, 1);
           componentArgs = this.componentArgs; 
        end        
    end 
end
