classdef Tools < target.Data

    properties (Dependent)
        DebugTools target.ApplicationExecutionTool {mustBeVector(DebugTools, "allow-all-empties")}
        DeploymentTools target.ApplicationDeploymentTool {mustBeVector(DeploymentTools, "allow-all-empties")}
        ExecutionTools target.ApplicationExecutionTool {mustBeVector(ExecutionTools, "allow-all-empties")}
    end

    methods

        function value = get.DebugTools(this)
            value = this.wrapValue(this.InnerInstance.DebugTools);
        end

        function set.DebugTools(this, value)
            this.InnerInstance.DebugTools = this.unwrapValue(value, this.InnerInstance.DebugTools);
        end

        function value = get.ExecutionTools(this)
            value = this.wrapValue(this.InnerInstance.ExecutionTools);
        end

        function set.ExecutionTools(this, value)
            this.InnerInstance.ExecutionTools = this.unwrapValue(value, this.InnerInstance.ExecutionTools);
        end
    end

    methods (Static, Access = protected)

        function name = getQualifiedName()
            name = "target.Tools";
        end

        function name = getQualifiedInnerName()
            name = "target.internal.Tools";
        end
    end
end

%   Copyright 2021-2023 The MathWorks, Inc.
