function defs = csc_registration(action)

%   Copyright 1994-2021 The MathWorks, Inc.
%   $Revision: $  $Date: $


%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% NOTE:
% - This file was automatically generated by the Simulink custom storage class
%   designer.
% - The contents of this file are arranged so that the Simulink custom storage
%   class designer can load the associated classes for editing.
% - Hand modification of this file is not recommended as it may prevent the
%   Simulink custom storage class designer from loading the associated classes.
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% - Generated on:   27-Oct-2021 10:02:54
% - MATLAB version: 9.12.0.1782353 (R2022a) Prerelease
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%


switch action

  case 'CSCDefn'
    defs = [];

    h = Simulink.CSCDefn;
    set(h, 'Name', 'external_ram');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'CSCType', 'Unstructured');
    set(h, 'MemorySection', 'data_external_ram');
    set(h, 'IsMemorySectionInstanceSpecific', false);
    set(h, 'IsGrouped', false);
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'DataScope', 'Auto');
    set(h, 'IsDataScopeInstanceSpecific', false);
    set(h, 'IsAutosarPerInstanceMemory', false);
    set(h, 'IsAutosarPostBuild', false);
    set(h, 'SupportSILPIL', false);
    set(h, 'DataInit', 'Auto');
    set(h, 'IsDataInitInstanceSpecific', false);
    set(h, 'DataAccess', 'Direct');
    set(h, 'IsDataAccessInstanceSpecific', false);
    set(h, 'HeaderFile', '');
    set(h, 'IsHeaderFileInstanceSpecific', false);
    set(h, 'DefinitionFile', '');
    set(h, 'IsDefinitionFileInstanceSpecific', false);
    set(h, 'Owner', '');
    set(h, 'IsOwnerInstanceSpecific', false);
    set(h, 'PreserveDimensions', false);
    set(h, 'PreserveDimensionsInstanceSpecific', false);
    set(h, 'IsReusable', false);
    set(h, 'IsReusableInstanceSpecific', false);
    set(h, 'CommentSource', 'Default');
    set(h, 'TypeComment', '');
    set(h, 'DeclareComment', '');
    set(h, 'DefineComment', '');
    set(h, 'CSCTypeAttributesClassName', '');
    set(h, 'CSCTypeAttributes', []);
    set(h, 'TLCFileName', 'Unstructured.tlc');
    defs = [defs; h];

    h = Simulink.CSCDefn;
    set(h, 'Name', 'CpuToCla1MsgRAM');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'CSCType', 'Unstructured');
    set(h, 'MemorySection', 'CpuToCla1MsgRAM');
    set(h, 'IsMemorySectionInstanceSpecific', false);
    set(h, 'IsGrouped', false);
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'DataScope', 'Exported');
    set(h, 'IsDataScopeInstanceSpecific', false);
    set(h, 'IsAutosarPerInstanceMemory', false);
    set(h, 'IsAutosarPostBuild', false);
    set(h, 'SupportSILPIL', false);
    set(h, 'DataInit', 'Auto');
    set(h, 'IsDataInitInstanceSpecific', false);
    set(h, 'DataAccess', 'Direct');
    set(h, 'IsDataAccessInstanceSpecific', false);
    set(h, 'HeaderFile', 'cla_header');
    set(h, 'IsHeaderFileInstanceSpecific', false);
    set(h, 'DefinitionFile', '');
    set(h, 'IsDefinitionFileInstanceSpecific', false);
    set(h, 'Owner', '');
    set(h, 'IsOwnerInstanceSpecific', false);
    set(h, 'PreserveDimensions', false);
    set(h, 'PreserveDimensionsInstanceSpecific', false);
    set(h, 'IsReusable', false);
    set(h, 'IsReusableInstanceSpecific', false);
    set(h, 'CommentSource', 'Default');
    set(h, 'TypeComment', '');
    set(h, 'DeclareComment', '');
    set(h, 'DefineComment', '');
    set(h, 'CSCTypeAttributesClassName', '');
    set(h, 'CSCTypeAttributes', []);
    set(h, 'TLCFileName', 'Unstructured.tlc');
    defs = [defs; h];

    h = Simulink.CSCDefn;
    set(h, 'Name', 'Cla1ToCpuMsgRAM');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'CSCType', 'Unstructured');
    set(h, 'MemorySection', 'Cla1ToCpuMsgRAM');
    set(h, 'IsMemorySectionInstanceSpecific', false);
    set(h, 'IsGrouped', false);
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'DataScope', 'Exported');
    set(h, 'IsDataScopeInstanceSpecific', false);
    set(h, 'IsAutosarPerInstanceMemory', false);
    set(h, 'IsAutosarPostBuild', false);
    set(h, 'SupportSILPIL', false);
    set(h, 'DataInit', 'Auto');
    set(h, 'IsDataInitInstanceSpecific', false);
    set(h, 'DataAccess', 'Direct');
    set(h, 'IsDataAccessInstanceSpecific', false);
    set(h, 'HeaderFile', 'cla_header');
    set(h, 'IsHeaderFileInstanceSpecific', false);
    set(h, 'DefinitionFile', '');
    set(h, 'IsDefinitionFileInstanceSpecific', false);
    set(h, 'Owner', '');
    set(h, 'IsOwnerInstanceSpecific', false);
    set(h, 'PreserveDimensions', false);
    set(h, 'PreserveDimensionsInstanceSpecific', false);
    set(h, 'IsReusable', false);
    set(h, 'IsReusableInstanceSpecific', false);
    set(h, 'CommentSource', 'Default');
    set(h, 'TypeComment', '');
    set(h, 'DeclareComment', '');
    set(h, 'DefineComment', '');
    set(h, 'CSCTypeAttributesClassName', '');
    set(h, 'CSCTypeAttributes', []);
    set(h, 'TLCFileName', 'Unstructured.tlc');
    defs = [defs; h];

    h = Simulink.CSCDefn;
    set(h, 'Name', 'Cla1DataRam');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'CSCType', 'Unstructured');
    set(h, 'MemorySection', 'Cla1DataRam');
    set(h, 'IsMemorySectionInstanceSpecific', false);
    set(h, 'IsGrouped', false);
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'DataScope', 'Exported');
    set(h, 'IsDataScopeInstanceSpecific', false);
    set(h, 'IsAutosarPerInstanceMemory', false);
    set(h, 'IsAutosarPostBuild', false);
    set(h, 'SupportSILPIL', false);
    set(h, 'DataInit', 'Auto');
    set(h, 'IsDataInitInstanceSpecific', false);
    set(h, 'DataAccess', 'Direct');
    set(h, 'IsDataAccessInstanceSpecific', false);
    set(h, 'HeaderFile', 'cla_header');
    set(h, 'IsHeaderFileInstanceSpecific', false);
    set(h, 'DefinitionFile', '');
    set(h, 'IsDefinitionFileInstanceSpecific', false);
    set(h, 'Owner', '');
    set(h, 'IsOwnerInstanceSpecific', false);
    set(h, 'PreserveDimensions', false);
    set(h, 'PreserveDimensionsInstanceSpecific', false);
    set(h, 'IsReusable', false);
    set(h, 'IsReusableInstanceSpecific', false);
    set(h, 'CommentSource', 'Default');
    set(h, 'TypeComment', '');
    set(h, 'DeclareComment', '');
    set(h, 'DefineComment', '');
    set(h, 'CSCTypeAttributesClassName', '');
    set(h, 'CSCTypeAttributes', []);
    set(h, 'TLCFileName', 'Unstructured.tlc');
    defs = [defs; h];

    h = Simulink.CSCDefn;
    set(h, 'Name', 'const_data_ramfuncs');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'CSCType', 'Unstructured');
    set(h, 'MemorySection', 'const_data_ramfuncs');
    set(h, 'IsMemorySectionInstanceSpecific', false);
    set(h, 'IsGrouped', false);
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', false);
    set(h, 'DataScope', 'Exported');
    set(h, 'IsDataScopeInstanceSpecific', false);
    set(h, 'IsAutosarPerInstanceMemory', false);
    set(h, 'IsAutosarPostBuild', false);
    set(h, 'SupportSILPIL', false);
    set(h, 'DataInit', 'Auto');
    set(h, 'IsDataInitInstanceSpecific', false);
    set(h, 'DataAccess', 'Direct');
    set(h, 'IsDataAccessInstanceSpecific', false);
    set(h, 'HeaderFile', '');
    set(h, 'IsHeaderFileInstanceSpecific', false);
    set(h, 'DefinitionFile', '');
    set(h, 'IsDefinitionFileInstanceSpecific', false);
    set(h, 'Owner', '');
    set(h, 'IsOwnerInstanceSpecific', false);
    set(h, 'PreserveDimensions', false);
    set(h, 'PreserveDimensionsInstanceSpecific', false);
    set(h, 'IsReusable', false);
    set(h, 'IsReusableInstanceSpecific', false);
    set(h, 'CommentSource', 'Default');
    set(h, 'TypeComment', '');
    set(h, 'DeclareComment', '');
    set(h, 'DefineComment', '');
    set(h, 'CSCTypeAttributesClassName', '');
    set(h, 'CSCTypeAttributes', []);
    set(h, 'TLCFileName', 'Unstructured.tlc');
    defs = [defs; h];

    h = Simulink.CSCDefn;
    set(h, 'Name', 'EMIF1_CS0_MEMORY');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'CSCType', 'Unstructured');
    set(h, 'MemorySection', 'Em1Cs0');
    set(h, 'IsMemorySectionInstanceSpecific', false);
    set(h, 'IsGrouped', false);
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'DataScope', 'Exported');
    set(h, 'IsDataScopeInstanceSpecific', false);
    set(h, 'IsAutosarPerInstanceMemory', false);
    set(h, 'IsAutosarPostBuild', false);
    set(h, 'SupportSILPIL', false);
    set(h, 'DataInit', 'Static');
    set(h, 'IsDataInitInstanceSpecific', false);
    set(h, 'DataAccess', 'Direct');
    set(h, 'IsDataAccessInstanceSpecific', false);
    set(h, 'HeaderFile', '');
    set(h, 'IsHeaderFileInstanceSpecific', false);
    set(h, 'DefinitionFile', '');
    set(h, 'IsDefinitionFileInstanceSpecific', false);
    set(h, 'Owner', '');
    set(h, 'IsOwnerInstanceSpecific', false);
    set(h, 'PreserveDimensions', false);
    set(h, 'PreserveDimensionsInstanceSpecific', false);
    set(h, 'IsReusable', false);
    set(h, 'IsReusableInstanceSpecific', false);
    set(h, 'CommentSource', 'Default');
    set(h, 'TypeComment', '');
    set(h, 'DeclareComment', '');
    set(h, 'DefineComment', '');
    set(h, 'CSCTypeAttributesClassName', '');
    set(h, 'CSCTypeAttributes', []);
    set(h, 'TLCFileName', 'Unstructured.tlc');
    defs = [defs; h];

    h = Simulink.CSCDefn;
    set(h, 'Name', 'EMIF1_CS2_MEMORY');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'CSCType', 'Unstructured');
    set(h, 'MemorySection', 'Em1Cs2');
    set(h, 'IsMemorySectionInstanceSpecific', false);
    set(h, 'IsGrouped', false);
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'DataScope', 'Exported');
    set(h, 'IsDataScopeInstanceSpecific', false);
    set(h, 'IsAutosarPerInstanceMemory', false);
    set(h, 'IsAutosarPostBuild', false);
    set(h, 'SupportSILPIL', false);
    set(h, 'DataInit', 'Static');
    set(h, 'IsDataInitInstanceSpecific', false);
    set(h, 'DataAccess', 'Direct');
    set(h, 'IsDataAccessInstanceSpecific', false);
    set(h, 'HeaderFile', '');
    set(h, 'IsHeaderFileInstanceSpecific', false);
    set(h, 'DefinitionFile', '');
    set(h, 'IsDefinitionFileInstanceSpecific', false);
    set(h, 'Owner', '');
    set(h, 'IsOwnerInstanceSpecific', false);
    set(h, 'PreserveDimensions', false);
    set(h, 'PreserveDimensionsInstanceSpecific', false);
    set(h, 'IsReusable', false);
    set(h, 'IsReusableInstanceSpecific', false);
    set(h, 'CommentSource', 'Default');
    set(h, 'TypeComment', '');
    set(h, 'DeclareComment', '');
    set(h, 'DefineComment', '');
    set(h, 'CSCTypeAttributesClassName', '');
    set(h, 'CSCTypeAttributes', []);
    set(h, 'TLCFileName', 'Unstructured.tlc');
    defs = [defs; h];

    h = Simulink.CSCDefn;
    set(h, 'Name', 'EMIF1_CS3_MEMORY');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'CSCType', 'Unstructured');
    set(h, 'MemorySection', 'Em1Cs3');
    set(h, 'IsMemorySectionInstanceSpecific', false);
    set(h, 'IsGrouped', false);
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'DataScope', 'Exported');
    set(h, 'IsDataScopeInstanceSpecific', false);
    set(h, 'IsAutosarPerInstanceMemory', false);
    set(h, 'IsAutosarPostBuild', false);
    set(h, 'SupportSILPIL', false);
    set(h, 'DataInit', 'Static');
    set(h, 'IsDataInitInstanceSpecific', false);
    set(h, 'DataAccess', 'Direct');
    set(h, 'IsDataAccessInstanceSpecific', false);
    set(h, 'HeaderFile', '');
    set(h, 'IsHeaderFileInstanceSpecific', false);
    set(h, 'DefinitionFile', '');
    set(h, 'IsDefinitionFileInstanceSpecific', false);
    set(h, 'Owner', '');
    set(h, 'IsOwnerInstanceSpecific', false);
    set(h, 'PreserveDimensions', false);
    set(h, 'PreserveDimensionsInstanceSpecific', false);
    set(h, 'IsReusable', false);
    set(h, 'IsReusableInstanceSpecific', false);
    set(h, 'CommentSource', 'Default');
    set(h, 'TypeComment', '');
    set(h, 'DeclareComment', '');
    set(h, 'DefineComment', '');
    set(h, 'CSCTypeAttributesClassName', '');
    set(h, 'CSCTypeAttributes', []);
    set(h, 'TLCFileName', 'Unstructured.tlc');
    defs = [defs; h];

    h = Simulink.CSCDefn;
    set(h, 'Name', 'EMIF1_CS4_MEMORY');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'CSCType', 'Unstructured');
    set(h, 'MemorySection', 'Em1Cs4');
    set(h, 'IsMemorySectionInstanceSpecific', false);
    set(h, 'IsGrouped', false);
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'DataScope', 'Exported');
    set(h, 'IsDataScopeInstanceSpecific', false);
    set(h, 'IsAutosarPerInstanceMemory', false);
    set(h, 'IsAutosarPostBuild', false);
    set(h, 'SupportSILPIL', false);
    set(h, 'DataInit', 'Static');
    set(h, 'IsDataInitInstanceSpecific', false);
    set(h, 'DataAccess', 'Direct');
    set(h, 'IsDataAccessInstanceSpecific', false);
    set(h, 'HeaderFile', '');
    set(h, 'IsHeaderFileInstanceSpecific', false);
    set(h, 'DefinitionFile', '');
    set(h, 'IsDefinitionFileInstanceSpecific', false);
    set(h, 'Owner', '');
    set(h, 'IsOwnerInstanceSpecific', false);
    set(h, 'PreserveDimensions', false);
    set(h, 'PreserveDimensionsInstanceSpecific', false);
    set(h, 'IsReusable', false);
    set(h, 'IsReusableInstanceSpecific', false);
    set(h, 'CommentSource', 'Default');
    set(h, 'TypeComment', '');
    set(h, 'DeclareComment', '');
    set(h, 'DefineComment', '');
    set(h, 'CSCTypeAttributesClassName', '');
    set(h, 'CSCTypeAttributes', []);
    set(h, 'TLCFileName', 'Unstructured.tlc');
    defs = [defs; h];

    h = Simulink.CSCDefn;
    set(h, 'Name', 'EMIF2_CS0_MEMORY');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'CSCType', 'Unstructured');
    set(h, 'MemorySection', 'Em2Cs0');
    set(h, 'IsMemorySectionInstanceSpecific', false);
    set(h, 'IsGrouped', false);
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'DataScope', 'Exported');
    set(h, 'IsDataScopeInstanceSpecific', false);
    set(h, 'IsAutosarPerInstanceMemory', false);
    set(h, 'IsAutosarPostBuild', false);
    set(h, 'SupportSILPIL', false);
    set(h, 'DataInit', 'Static');
    set(h, 'IsDataInitInstanceSpecific', false);
    set(h, 'DataAccess', 'Direct');
    set(h, 'IsDataAccessInstanceSpecific', false);
    set(h, 'HeaderFile', '');
    set(h, 'IsHeaderFileInstanceSpecific', false);
    set(h, 'DefinitionFile', '');
    set(h, 'IsDefinitionFileInstanceSpecific', false);
    set(h, 'Owner', '');
    set(h, 'IsOwnerInstanceSpecific', false);
    set(h, 'PreserveDimensions', false);
    set(h, 'PreserveDimensionsInstanceSpecific', false);
    set(h, 'IsReusable', false);
    set(h, 'IsReusableInstanceSpecific', false);
    set(h, 'CommentSource', 'Default');
    set(h, 'TypeComment', '');
    set(h, 'DeclareComment', '');
    set(h, 'DefineComment', '');
    set(h, 'CSCTypeAttributesClassName', '');
    set(h, 'CSCTypeAttributes', []);
    set(h, 'TLCFileName', 'Unstructured.tlc');
    defs = [defs; h];

    h = Simulink.CSCDefn;
    set(h, 'Name', 'EMIF2_CS2_MEMORY');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'CSCType', 'Unstructured');
    set(h, 'MemorySection', 'Em2Cs2');
    set(h, 'IsMemorySectionInstanceSpecific', false);
    set(h, 'IsGrouped', false);
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'DataScope', 'Exported');
    set(h, 'IsDataScopeInstanceSpecific', false);
    set(h, 'IsAutosarPerInstanceMemory', false);
    set(h, 'IsAutosarPostBuild', false);
    set(h, 'SupportSILPIL', false);
    set(h, 'DataInit', 'Static');
    set(h, 'IsDataInitInstanceSpecific', false);
    set(h, 'DataAccess', 'Direct');
    set(h, 'IsDataAccessInstanceSpecific', false);
    set(h, 'HeaderFile', '');
    set(h, 'IsHeaderFileInstanceSpecific', false);
    set(h, 'DefinitionFile', '');
    set(h, 'IsDefinitionFileInstanceSpecific', false);
    set(h, 'Owner', '');
    set(h, 'IsOwnerInstanceSpecific', false);
    set(h, 'PreserveDimensions', false);
    set(h, 'PreserveDimensionsInstanceSpecific', false);
    set(h, 'IsReusable', false);
    set(h, 'IsReusableInstanceSpecific', false);
    set(h, 'CommentSource', 'Default');
    set(h, 'TypeComment', '');
    set(h, 'DeclareComment', '');
    set(h, 'DefineComment', '');
    set(h, 'CSCTypeAttributesClassName', '');
    set(h, 'CSCTypeAttributes', []);
    set(h, 'TLCFileName', 'Unstructured.tlc');
    defs = [defs; h];

  case 'MemorySectionDefn'
    defs = [];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'code_ramfuncs');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#pragma CODE_SECTION ($N, "ramfuncs")');
    set(h, 'PostPragma', '');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', false);
    set(h, 'Qualifier', '');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'const_data_ramfuncs');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* ifdef logic applying pragma in appropriate C file */');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#ifdef PRAGMA_FLAG_$N\n#pragma DATA_SECTION ($N, "ramfuncs")\n#else\n#define PRAGMA_FLAG_$N\n#endif');
    set(h, 'PostPragma', '');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', false);
    set(h, 'IsConst', true);
    set(h, 'IsVolatile', true);
    set(h, 'Qualifier', '');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'data_external_ram');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* ifdef logic applying pragma in appropriate C file */');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#ifdef PRAGMA_FLAG_$N\n#pragma DATA_SECTION ($N, "external_ram")\n#else\n#define PRAGMA_FLAG_$N\n#endif');
    set(h, 'PostPragma', '');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', false);
    set(h, 'Qualifier', '');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'Cla1ToCpuMsgRAM');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* ifdef logic to delare in C28x and CLA , but define only in C28x */');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#if defined(PRAGMA_FLAG_$N) && !defined(__TMS320C28XX_CLA__)\n#pragma DATA_SECTION($N,"Cla1ToCpuMsgRAM")\n#endif\n#if !defined(PRAGMA_FLAG_$N) || !defined(__TMS320C28XX_CLA__)');
    set(h, 'PostPragma', '#endif\n#if !defined(PRAGMA_FLAG_$N)\n#define PRAGMA_FLAG_$N\n#endif');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', false);
    set(h, 'Qualifier', '');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'Cla1DataRam');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* ifdef logic to delare in C28x and CLA , but define only in C28x */');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#if defined(PRAGMA_FLAG_$N) && !defined(__TMS320C28XX_CLA__)\n#pragma DATA_SECTION($N,"Cla1DataRam0")\n#endif\n#if !defined(PRAGMA_FLAG_$N) || !defined(__TMS320C28XX_CLA__)');
    set(h, 'PostPragma', '#endif\n#if !defined(PRAGMA_FLAG_$N)\n#define PRAGMA_FLAG_$N\n#endif');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', false);
    set(h, 'Qualifier', '');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'ClaFunction');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/*Compiling function for CLA Compiler*/');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#ifdef __TMS320C28XX_CLA__');
    set(h, 'PostPragma', '#endif');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', false);
    set(h, 'Qualifier', '');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'C28xFunction');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* Compiling function for C28x compiler */');
    set(h, 'PragmaPerVar', false);
    set(h, 'PrePragma', '#ifndef __TMS320C28XX_CLA__');
    set(h, 'PostPragma', '#endif');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', false);
    set(h, 'Qualifier', '');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'CpuToCla1MsgRAM');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* ifdef logic to delare in C28x and CLA , but define only in C28x */');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#if defined(PRAGMA_FLAG_$N) && !defined(__TMS320C28XX_CLA__)\n#pragma DATA_SECTION($N,"CpuToCla1MsgRAM")\n#endif\n#if !defined(PRAGMA_FLAG_$N) || !defined(__TMS320C28XX_CLA__)');
    set(h, 'PostPragma', '#endif\n#if !defined(PRAGMA_FLAG_$N)\n#define PRAGMA_FLAG_$N\n#endif');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', false);
    set(h, 'Qualifier', '');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'Em1Cs0');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* Declaration of SDRAM variable as data object with 32-bit address */');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#ifdef PRAGMA_FLAG_$N\n#pragma DATA_SECTION ($N, "Em1Cs0")\n#else\n#define PRAGMA_FLAG_$N\n#endif');
    set(h, 'PostPragma', '');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', true);
    set(h, 'Qualifier', '__attribute__((far))\t');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'Em1Cs2');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* ifdef logic applying pragma in appropriate C file */');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#ifdef PRAGMA_FLAG_$N\n#pragma DATA_SECTION ($N, "Em1Cs2")\n#else\n#define PRAGMA_FLAG_$N\n#endif');
    set(h, 'PostPragma', '');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', false);
    set(h, 'Qualifier', '');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'Em1Cs3');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* ifdef logic applying pragma in appropriate C file */');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#ifdef PRAGMA_FLAG_$N\n#pragma DATA_SECTION ($N, "Em1Cs3")\n#else\n#define PRAGMA_FLAG_$N\n#endif');
    set(h, 'PostPragma', '');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', false);
    set(h, 'Qualifier', '');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'Em1Cs4');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* ifdef logic applying pragma in appropriate C file */');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#ifdef PRAGMA_FLAG_$N\n#pragma DATA_SECTION ($N, "Em1Cs4")\n#else\n#define PRAGMA_FLAG_$N\n#endif');
    set(h, 'PostPragma', '');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', false);
    set(h, 'Qualifier', '');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'Em2Cs0');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* Declaration of SDRAM variable as data object with 32-bit address */');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#ifdef PRAGMA_FLAG_$N\n#pragma DATA_SECTION ($N, "Em2Cs0")\n#else\n#define PRAGMA_FLAG_$N\n#endif');
    set(h, 'PostPragma', '');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', true);
    set(h, 'Qualifier', '__attribute__((far))\t');
    defs = [defs; h];

    h = Simulink.MemorySectionDefn;
    set(h, 'Name', 'Em2Cs2');
    set(h, 'OwnerPackage', 'tic2000demospkg');
    set(h, 'Comment', '/* ifdef logic applying pragma in appropriate C file */');
    set(h, 'PragmaPerVar', true);
    set(h, 'PrePragma', '#ifdef PRAGMA_FLAG_$N\n#pragma DATA_SECTION ($N, "Em2Cs2")\n#else\n#define PRAGMA_FLAG_$N\n#endif');
    set(h, 'PostPragma', '');
        set(h.DataUsage, 'IsParameter', true);
        set(h.DataUsage, 'IsSignal', true);
    set(h, 'IsConst', false);
    set(h, 'IsVolatile', false);
    set(h, 'Qualifier', '');
    defs = [defs; h];

  otherwise
    DAStudio.error('Simulink:dialog:CSCRegInvalidAction', action);
end  % switch action


%EOF
