Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/TECSInfo.cdl
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/TECSInfo.cdl	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/TECSInfo.cdl	(revision 374)
@@ -0,0 +1,652 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+import_C( "t_stddef.h" );
+
+/* Constants of Kinds */
+const int8_t TECSTypeKind_BoolType    = 1;
+const int8_t TECSTypeKind_IntType     = 2;
+const int8_t TECSTypeKind_FloatType   = 3;
+const int8_t TECSTypeKind_PtrType     = 4;
+const int8_t TECSTypeKind_ArrayType   = 5;
+const int8_t TECSTypeKind_DefinedType = 6;
+const int8_t TECSTypeKind_StructType  = 7;
+const int8_t TECSTypeKind_EnumType    = 8;
+const int8_t TECSTypeKind_VoidType    = 9;
+const int8_t TECSTypeKind_DescriptorType = 10;
+
+/* Parameter Direction */
+const int8_t PARAM_DIR_IN         = 1;
+const int8_t PARAM_DIR_OUT        = 2;
+const int8_t PARAM_DIR_INOUT      = 3;
+const int8_t PARAM_DIR_SEND       = 4;
+const int8_t PARAM_DIR_RECEIVE    = 5;
+
+/* VarDecl declType */
+const int8_t DECLTYPE_STMEMBER    = 1;  /* Struct Member */
+const int8_t DECLTYPE_ATTR        = 2;
+const int8_t DECLTYPE_VAR         = 3;
+
+/* VarDecl place info */
+const int8_t VARDECL_PLACE_STRUCT = 1;
+const int8_t VARDECL_PLACE_NON    = 2;
+const int8_t VARDECL_PLACE_CB     = 3;
+const int8_t VARDECL_PLACE_INIB   = 4;
+
+/* CallInfo place info */
+const int8_t CALL_PLACE_NON       = 1;
+const int8_t CALL_PLACE_INIB_DES  = 2;
+const int8_t CALL_PLACE_CB_DES    = 3;
+const int8_t CALL_PLACE_INIB_IDX  = 4;
+const int8_t CALL_PLACE_CB_IDX    = 5;
+
+namespace nTECSInfo {
+
+    /*******   SIGNATURES   *******/
+
+    /* Type Information of attr, var, param, return */
+    signature sTypeInfo {
+        ER         getName( [out,string(max_len)]char_t *name, [in]int_t max_len );
+           // é·ãã max_len ãè¶
+ããå ´åã¯ E_NOMEM ãè¿ã.
+           // (max_len-1) æå­ã³ãã¼ãããname[max_len-1] = NULL
+        uint16_t   getNameLength(void);
+           //  çµç«¯æå­ (NULL) ãå«ãé·ã (strlen ã¨ä»æ§ãç°ãªããã¨ã«æ³¨æ)
+        uint32_t   getSize(void);    // size of the value in bytes
+        int8_t     getKind(void);    // see Constants of Kinds
+        uint32_t   getNType(void);
+           // kind == ARRAY ã®å ´åãµã¤ãºãPOINTER, TYPEDEF ã®å ´å1ãããä»¥å¤ã¯0
+        ER     getTypeInfo( [out]Descriptor(sTypeInfo) *desc );
+           // kind == POINTER, TYPEDEF ã®å ´åãdesc ã«æå¹ãªå¤ãè¿ã
+        uint32_t   getNMember(void);
+           // STRUCT ã®å ´åã¡ã³ãã¼æ°
+        ER     getMemberInfo( [in]uint32_t ith, [out]Descriptor(sVarDeclInfo) *desc );
+           // kind == STRUCT ã®å ´åãdesc ã«æå¹ãªå¤ãè¿ã
+           // ith ã¯ã¡ã³ãã¼ã®æ·»æ° 0<=ith<*num
+           // ith ãç¯å²å¤ã®å ´å E_NORES ãè¿ã
+//        void   getSignatureInfo( [out]Descriptor(sSignatureInfo) *desc );
+//           // kind == DESCRIPTOR ã®å ´åãdesc ã«æå¹ãªå¤ãè¿ã
+    };
+
+    /* ATTR, VAR, struct member Information */
+    signature sVarDeclInfo {
+        ER         getName( [out,string(max_len)]char_t *name, [in]int_t max_len );
+           // é·ãã max_len ãè¶
+ããå ´åã¯ E_NOMEM ãè¿ã.
+           // (max_len-1) æå­ã³ãã¼ãããname[max_len-1] = NULL
+        uint16_t   getNameLength(void);
+           //  çµç«¯æå­ (NULL) ãå«ãé·ã (strlen ã¨ä»æ§ãç°ãªããã¨ã«æ³¨æ)
+        void       getLocationInfo(  [out]uint32_t *offset,
+                                     [out]int8_t   *place );            // VARDECL_PLACE_*
+        void       getTypeInfo( [out]Descriptor( sTypeInfo ) *desc );
+        void       getSizeIsExpr( [out,string(max_len)]char_t *expr_str, [in]int32_t max_len );
+          // size_is è¨ç®å¼ãæå­åã§è¿ã. size_is æªæå®ã®å ´å *expr_str = NULL ãè¿ããã
+        ER         getSizeIs( [out]uint32_t *size, [in]const void *p_cb);
+          // p_cb ãä¸ããã¨ãsize ãè¿ã (size_is æå®ããªãå ´åï¼E_NOSPT ãè¿ã)
+    };
+
+    /* PARAM Information */
+    signature sParamInfo {
+        ER         getName( [out,string(max_len)]char_t *name, [in]int_t max_len );
+           // é·ãã max_len ãè¶
+ããå ´åã¯ E_NOMEM ãè¿ã.
+           // (max_len-1) æå­ã³ãã¼ãããname[max_len-1] = NULL
+        uint16_t   getNameLength(void);
+           //  çµç«¯æå­ (NULL) ãå«ãé·ã (strlen ã¨ä»æ§ãç°ãªããã¨ã«æ³¨æ)
+        ER         getTypeInfo( [out]Descriptor(sTypeInfo) *desc);
+        ER         getDir( [out]int8_t *dir );
+    };
+
+    /* FUNCTION Information */
+    signature sFunctionInfo {
+        ER         getName( [out,string(max_len)]char_t *name, [in]int_t max_len );
+           // é·ãã max_len ãè¶
+ããå ´åã¯ E_NOMEM ãè¿ã.
+           // (max_len-1) æå­ã³ãã¼ãããname[max_len-1] = NULL
+        uint16_t   getNameLength(void);
+           //  çµç«¯æå­ (NULL) ãå«ãé·ã (strlen ã¨ä»æ§ãç°ãªããã¨ã«æ³¨æ)
+        void       getReturnTypeInfo( [out]Descriptor( sTypeInfo ) *desc );
+        uint32_t   getNParam(void);
+        ER         getParamInfo( [in]uint32_t ith, [out]Descriptor(sParamInfo) *param );
+           // 0 <= ith < *num
+           // ith ãç¯å²å¤ã®å ´å E_NORES ãè¿ã
+    };
+
+    /* SIGNATURE Information */
+    signature sSignatureInfo {
+        ER         getName( [out,string(max_len)]char_t *name, [in]int_t max_len );
+           // é·ãã max_len ãè¶
+ããå ´åã¯ E_NOMEM ãè¿ã.
+           // (max_len-1) æå­ã³ãã¼ãããname[max_len-1] = NULL
+        uint16_t   getNameLength(void);
+           //  çµç«¯æå­ (NULL) ãå«ãé·ã (strlen ã¨ä»æ§ãç°ãªããã¨ã«æ³¨æ)
+        uint32_t   getNFunction(void);
+        ER         getFunctionInfo( [in]uint32_t ith, [out]Descriptor( sFunctionInfo ) *desc );
+           // 0 <= ith < *num
+           // ith ãç¯å²å¤ã®å ´å E_NORES ãè¿ã
+    };
+
+    /* CALL Information */
+    signature sCallInfo {
+        ER         getName( [out,string(max_len)]char_t *name, [in]int_t max_len );
+           // é·ãã max_len ãè¶
+ããå ´åã¯ E_NOMEM ãè¿ã.
+           // (max_len-1) æå­ã³ãã¼ãããname[max_len-1]= NULL
+        uint16_t   getNameLength(void);
+           //  çµç«¯æå­ (NULL) ãå«ãé·ã (strlen ã¨ä»æ§ãç°ãªããã¨ã«æ³¨æ)
+        void       getSignatureInfo( [out]Descriptor( sSignatureInfo ) *desc );
+        uint32_t   getArraySize(void);
+        void       getSpecifierInfo( [out]bool_t   *b_optional,
+                                     [out]bool_t   *b_dynamic,
+                                     [out]bool_t   *b_ref_desc,
+                                     [out]bool_t   *b_omit );
+        void       getInternalInfo(  [out]bool_t   *b_allocator_port,
+                                     [out]bool_t   *b_require_port );
+        void       getLocationInfo(  [out]uint32_t *offset,             // CALL_PLACE_*
+                                     [out]int8_t   *place );            // CALL_PLACE_*
+        void       getOptimizeInfo(  [out]bool_t   *b_VMT_useless,      // VMT (é¢æ°ãã¼ãã«) ä¸è¦æé©å (é¢æ°ç´æ¥å¼åºã)
+                                     [out]bool_t   *b_skelton_useless,  // ã¹ã±ã«ãã³é¢æ°ä¸è¦ (
+                                     [out]bool_t   *b_cell_unique );    // åä¸ã®ã»ã«
+    };
+
+    /* ENTRY Information */
+    signature sEntryInfo {
+        ER         getName( [out,string(max_len)]char_t *name, [in]int_t max_len );
+           // é·ãã max_len ãè¶
+ããå ´åã¯ E_NOMEM ãè¿ã.
+           // (max_len-1) æå­ã³ãã¼ãããname[max_len-1]=NULL
+        uint16_t   getNameLength(void);
+           //  çµç«¯æå­ (NULL) ãå«ãé·ã (strlen ã¨ä»æ§ãç°ãªããã¨ã«æ³¨æ)
+        void       getSignatureInfo( [out]Descriptor( sSignatureInfo ) *desc );
+        uint32_t   getArraySize(void);
+        bool_t     isInline(void);
+    };
+
+    /* CELLTYPE Information */
+    signature sCelltypeInfo {
+        ER         getName( [out,string(max_len)]char_t *name, [in]int_t max_len );
+           // é·ãã max_len ãè¶
+ããå ´åã¯ E_NOMEM ãè¿ã.
+           // (max_len-1) æå­ã³ãã¼ãããname[max_len-1]=NULL
+        uint16_t   getNameLength(void);
+           //  çµç«¯æå­ (NULL) ãå«ãé·ã (strlen ã¨ä»æ§ãç°ãªããã¨ã«æ³¨æ)
+        uint32_t   getNAttr(void);
+        ER         getAttrInfo( [in]uint32_t ith, [out]Descriptor(sVarDeclInfo)*desc );
+        uint32_t   getNVar(void);
+        ER         getVarInfo( [in]uint32_t ith,  [out]Descriptor(sVarDeclInfo)*desc );
+           // ith ãç¯å²å¤ã®å ´å E_NORES ãè¿ã
+        uint32_t   getNCall(void);
+        ER         getCallInfo( [in]uint32_t ith, [out]Descriptor(sCallInfo)*desc );
+           // ith ãç¯å²å¤ã®å ´å E_NORES ãè¿ã
+        uint32_t   getNEntry(void);
+        ER         getEntryInfo( [in]uint32_t ith, [out]Descriptor(sEntryInfo)*desc );
+           // ith ãç¯å²å¤ã®å ´å E_NORES ãè¿ã
+        bool_t     isSingleton(void);
+        bool_t     isIDX_is_ID(void);
+        uint32_t   sizeOfCB(void);
+        uint32_t   sizeOfINIB(void);
+    };
+
+    /* CELL Information */
+    [deviate]
+    signature sCellInfo {
+        ER         getName( [out,string(max_len)]char_t *name, [in]int_t max_len );
+           // é·ãã max_len ãè¶
+ããå ´åã¯ E_NOMEM ãè¿ã.
+           // (max_len-1) æå­ã³ãã¼ãããname[max_len-1]=NULL
+        uint16_t   getNameLength(void);
+           //  çµç«¯æå­ (NULL) ãå«ãé·ã (strlen ã¨ä»æ§ãç°ãªããã¨ã«æ³¨æ)
+        uint32_t   getNRawEntryDescriptorInfo( void );
+        ER         getRawEntryDescriptorInfo( [in]int_t index, [out]Descriptor(sRawEntryDescriptorInfo) *desc );
+           // index ã¯ãåãå£ãæå® (CelltypeInfo ã® cEntryInfo ã®åºæ°ã«ä¸è´ãã)
+        void       getCelltypeInfo( [out]Descriptor( sCelltypeInfo ) *desc );
+        void       getCBP( [out]void **cbp );      // out: é¸è±
+        void       getINIBP( [out]void **inibp );  // out: é¸è±
+    };
+
+    [deviate]
+    signature sRawEntryDescriptorInfo {
+        uint16_t   getNRawEntryDescriptorInfo( void );         // åãå£é
+åã®å ´åãè¦ç´ æ°ãè¿ããéé
+åã®å ´å 1ã
+        ER         getRawDescriptor( [in]int_t ith, [out]void **rawDesc );
+                        // ith ãé
+åç¯å²å¤ã®å ´åãE_NOEXS ãè¿ã
+    };
+
+    /* NAMESPACE Information */
+    signature sNamespaceInfo {
+        ER         getName( [out,string(max_len)]char_t *name, [in]int_t max_len );
+           // é·ãã max_len ãè¶
+ããå ´åã¯ E_NOMEM ãè¿ã.
+           // (max_len-1) æå­ã³ãã¼ãããname[max_len-1]=NULL
+        uint16_t   getNameLength(void);
+           //  çµç«¯æå­ (NULL) ãå«ãé·ã (strlen ã¨ä»æ§ãç°ãªããã¨ã«æ³¨æ)
+        uint32_t   getNNamespace(void);
+        ER         getNamespaceInfo( [in]uint32_t ith, [out]Descriptor(sNamespaceInfo) *des );
+           // ith ãç¯å²å¤ã®å ´å E_NORES ãè¿ã
+        uint32_t   getNSignature(void);
+        ER         getSignatureInfo( [in]uint32_t ith, [out]Descriptor(sSignatureInfo) *des );
+           // ith ãç¯å²å¤ã®å ´å E_NORES ãè¿ã
+        uint32_t   getNCelltype(void);
+        ER     getCelltypeInfo( [in]uint32_t ith,  [out]Descriptor(sCelltypeInfo) *des );
+           // ith ãç¯å²å¤ã®å ´å E_NORES ãè¿ã
+    };
+
+    /* REGION Information */
+    signature sRegionInfo {
+        ER         getName( [out,string(max_len)]char_t *name, [in]int_t max_len );
+           // é·ãã max_len ãè¶
+ããå ´åã¯ E_NOMEM ãè¿ã.
+           // (max_len-1) æå­ã³ãã¼ãããname[max_len-1]=NULL
+        uint16_t   getNameLength(void);
+           //  çµç«¯æå­ (NULL) ãå«ãé·ã (strlen ã¨ä»æ§ãç°ãªããã¨ã«æ³¨æ)
+        uint32_t   getNCell(void);
+        ER         getCellInfo( [in]uint32_t ith,    [out]Descriptor(sCellInfo) *des );
+           // ith ãç¯å²å¤ã®å ´å E_NORES ãè¿ã
+        uint32_t   getNRegion(void);
+        ER         getRegionInfo( [in]uint32_t ith,  [out]Descriptor(sRegionInfo) *des );
+           // ith ãç¯å²å¤ã®å ´å E_NORES ãè¿ã
+    };
+
+    /* TECS Information */
+    signature sTECSInfo {
+        ER     findNamespace([in,string]const char_t *namespace_path, [out]Descriptor( sNamespaceInfo )*nsDesc);
+        ER     findRegion(   [in,string]const char_t *namespace_path, [out]Descriptor( sRegionInfo )*regionDesc);
+        ER     findSignature([in,string]const char_t *namespace_path, [out]Descriptor( sSignatureInfo )*signatureDesc);
+        ER     findCelltype( [in,string]const char_t *namespace_path, [out]Descriptor( sCelltypeInfo )*celltypeDesc);
+        ER     findCell(     [in,string]const char_t *namespace_path, [out]Descriptor( sCellInfo )*cellDesc);
+        ER     findRawEntryDescriptor(
+                             [in,string]const char_t *namespace_path,
+                             [in]             int_t  ith,
+                             [out]Descriptor( sRawEntryDescriptorInfo )*rawEntryDescDesc,
+                             [out]Descriptor( sEntryInfo )*entryDesc);
+        ER     findRawEntryDescriptor_unsafe(           // ãã®ã¡ã½ããã¯ãéé
+åã®å ´åã®ã¿ãããã§ãã
+                             [in,string]const char_t *namespace_path,
+                             [out]void **rawDesc );
+    };
+
+    /*******   CELLTYPES   *******/
+
+    /*
+     * tTECSInfo ã»ã«ã¿ã¤ãã®ã»ã«ã¯ãã¦ã¼ã¶ã¼ãè¨­ç½®ããï¼
+     *
+     * ãã®ã»ã«ãããtTECSInfoSub ã¸ã®çµåã¯ããã©ã°ã¤ã³ã«ããèªåçã«
+     * è¡ããããããã¦ã¼ã¶ã¼ã¯ããã®ã»ã«ãè¨­ç½®ããã ãã§ããï¼
+     * (ãã­ãã¿ã¤ããç¨ãã¦ããªãã®ã¯ããã®ã»ã«ãä»»æã®ãªã¼ã¸ã§ã³ã«ç½®
+     * ããã¨ãæ³å®ãã¦ã®ãã®)
+     */
+    [singleton,
+     generate( TECSInfoPlugin, "" )]
+    celltype tTECSInfo {
+        [inline]
+            entry sTECSInfo eTECSInfo;
+        call  sTECSInfo cTECSInfo;
+        FACTORY{
+            write( "global_tecsgen.h", "#define setRawEntryDescriptor( callDesc, callPortSignature, rawEntryDesc )   (callDesc).vdes = (struct tag_ ## callPortSignature ## _VDES *) rawEntryDesc" );
+        };
+    };
+
+    /*
+     * tTECSInfoSub ã»ã«ã¿ã¤ãã®ã»ã«ã¯ããã©ã°ã¤ã³ã«ããèªåçæãããï¼
+     * ãã©ã°ã¤ã³ã¯ãçæãè¡ãåã«ã¨ã©ã¼ãçºçãã¦ããå ´åãã»ã«ãçæããªãï¼
+     * (TECSInfoSub ã»ã«ãæªå®ç¾©ã®ã¨ã©ã¼ãåºããã¨ã«ãªããä¸å®å
+¨ãªç¶æ
+
+     * ã§çæãããã¨ããã¨ãRuby ä¾å¤ãçºçããå¯è½æ§ããããããçæ
+     * ããªã)
+     */
+    [singleton]
+    celltype tTECSInfoSub {
+        entry sTECSInfo eTECSInfo;
+        [ref_desc]
+            call sNamespaceInfo cNamespaceInfo;   // root namespace
+        [ref_desc]
+            call sRegionInfo    cRegionInfo;      // root region
+        // å
+é¨å¦çç¨ã®å¼ã³å£ (ä½åº¦ãä½¿ãã¾ããã®ã§ãä½¿ãç´åã«(å)è¨­å®ãããã¨ï¼
+        [dynamic,optional]
+            call sNamespaceInfo cNamespaceInfoTemp;
+        [dynamic,optional]
+            call sRegionInfo    cRegionInfoTemp;
+        [dynamic,optional]
+            call sSignatureInfo cSignatureInfoTemp;
+        [dynamic,optional]
+            call sCelltypeInfo  cCelltypeInfoTemp;
+        [dynamic,optional]
+            call sCellInfo      cCellInfoTemp;
+        [dynamic,optional]
+            call sEntryInfo     cEntryInfoTemp;
+        [dynamic,optional]
+            call sRawEntryDescriptorInfo cRawEntryDescriptorInfoTemp;
+
+        attr {
+            int32_t name_len = 256;
+            int32_t path_len = 1024;
+        };
+        var {
+            [size_is(name_len)]
+                char_t  *name1;
+            [size_is(name_len)]
+                char_t  *name2;
+            [size_is(path_len)]
+                char_t  *path;
+        };
+    };
+
+    celltype tNamespaceInfo {
+        attr {
+            char *name;
+        };
+
+        entry sNamespaceInfo eNamespaceInfo;
+        [ref_desc,optional]
+            call  sSignatureInfo cSignatureInfo[];
+        [ref_desc,optional]
+            call  sCelltypeInfo  cCelltypeInfo[];
+        [ref_desc,optional]
+            call  sNamespaceInfo cNamespaceInfo[];
+    };
+
+    /* SIGNATURE information */
+    celltype tSignatureInfo{
+        attr {
+            char *name;
+        };
+
+        entry sSignatureInfo   eSignatureInfo;
+        [ref_desc,optional]
+            call sFunctionInfo cFunctionInfo[];
+    };
+    celltype tFunctionInfo {
+        attr {
+            char_t *name;
+            bool_t  bOneway;
+        };
+        entry sFunctionInfo eFunctionInfo;
+        [ref_desc,optional]
+            call sParamInfo cParamInfo[];
+        [ref_desc]
+            call sTypeInfo  cReturnTypeInfo;
+    };
+    celltype tParamInfo {
+        attr {
+            char_t *name;
+            int8_t dir;
+            char_t *sizeIsExpr;
+            char_t *countIsExpr;
+            char_t *stringExpr;
+        };
+        entry sParamInfo eParamInfo;
+        [ref_desc]
+            call sTypeInfo cTypeInfo;
+    };
+
+    /* CELLTYPE information */
+    celltype tCelltypeInfo{
+        attr {
+            char_t   *name;
+            bool_t   b_singleton;
+            bool_t   b_IDX_is_ID_act;
+            uint32_t sizeOfCB;         // size in bytes, 0 if not exist
+            uint32_t sizeOfINIB;       // size in bytes, 0 if not exist
+            uint32_t n_cellInLinkUnit; // CellInLinkUnit == 0 ã®æ ã»ã«ã¿ã¤ãã³ã¼ãã¯ããªã³ã¯ããã¦ããªã
+            uint32_t n_cellInSystem;   // ãã¹ã¦ã®ãªã³ã¯ã¦ããããå«ããã»ã«ã®åæ°ï¼
+                                       // ãã®æ°ã 0ã«ãªããã®ã¯ãCelltypeInfo ã¯çç¥ãããï¼
+        };
+        [ref_desc,optional]
+            call  sEntryInfo   cEntryInfo[];
+        [ref_desc,optional]
+            call  sCallInfo    cCallInfo[];
+        [ref_desc,optional]
+            call  sVarDeclInfo cAttrInfo[];
+        [ref_desc,optional]
+            call  sVarDeclInfo cVarInfo[];
+
+        entry sCelltypeInfo    eCelltypeInfo;
+    };
+    celltype tCallInfo {
+        attr {
+            char_t   *name;
+            uint32_t offset;
+            uint32_t array_size;
+            bool_t   b_optional;
+            bool_t   b_omit;
+            bool_t   b_dynamic;
+            bool_t   b_ref_desc;
+            bool_t   b_allocator_port;
+            bool_t   b_require_port;
+            int8_t   place;
+            bool_t   b_VMT_useless;        // VMT (é¢æ°ãã¼ãã«) ä¸è¦æé©å (é¢æ°ç´æ¥å¼åºã)
+            bool_t   b_skelton_useless;    // ã¹ã±ã«ãã³é¢æ°ä¸è¦ (
+            bool_t   b_cell_unique;        // åä¸ã®ã»ã«
+        };
+        entry sCallInfo eCallInfo;
+        [ref_desc]
+            call sSignatureInfo cSignatureInfo;
+        FACTORY {
+            write( "$ct_global$_factory.h", "#include \"include_all_signature_header.h\"" );
+        };
+    };
+    celltype tEntryInfo {
+        attr {
+            char_t *name;
+            bool_t b_inline;
+            uint32_t array_size;
+        };
+        entry sEntryInfo eEntryInfo;
+        [ref_desc]
+            call sSignatureInfo cSignatureInfo;
+        FACTORY {
+            write( "$ct_global$_factory.h", "#include \"include_all_signature_header.h\"" );
+        };
+    };
+    /* Variable Declarator (attr, var, struct member) */
+    celltype tVarDeclInfo {
+        attr {
+            char_t   *name;
+            char_t   *sizeIsExpr;
+            int8_t   declType;        /* valid when attr, var */
+            int8_t   place;
+            uint32_t offset;
+        };
+        entry sVarDeclInfo eVarDeclInfo;
+        [ref_desc]
+            call sTypeInfo cTypeInfo;
+    };
+
+    /* REGION & CELL information */
+    celltype tRegionInfo {
+        attr {
+            char *name;
+        };
+
+        entry sRegionInfo eRegionInfo;
+        [ref_desc,optional]
+            call  sCellInfo   cCellInfo[];
+        [ref_desc,optional]
+            call  sRegionInfo cRegionInfo[];
+    };
+    celltype tCellInfo {
+        attr {
+            char_t *name;
+            void   *cbp;
+            void   *inibp;
+        };
+        [ref_desc]
+            call  sCelltypeInfo cCelltypeInfo;
+        [ref_desc,optional]
+            call  sRawEntryDescriptorInfo cRawEntryDescriptor[];
+        entry sCellInfo eCellInfo;
+    };
+    celltype tRawEntryDescriptorInfo {
+        attr {
+            int_t size;   // éé
+åã®å ´å 0
+            [size_is(size)]
+                void  **rawEntryDescriptor;
+        };
+        entry sRawEntryDescriptorInfo eRawEntryDescriptor;
+        // [ref_desc]
+        //    call  sEntryInfo             cEntryInfo;
+    };
+
+    /* celltypes of TYPEs */
+    celltype tVoidTypeInfo {
+        attr {
+            char_t   *name;
+            int8_t   typeKind;
+            uint32_t size;     /* bytes */
+            bool_t   b_const;
+            bool_t   b_volatile;
+        };
+        entry sTypeInfo eTypeInfo;
+    };
+    celltype tBoolTypeInfo {
+        attr {
+            char_t   *name;
+            int8_t   typeKind;
+            uint32_t size;     /* bytes */
+            bool_t   b_const;
+            bool_t   b_volatile;
+        };
+        entry sTypeInfo eTypeInfo;
+    };
+    celltype tIntTypeInfo {
+        attr {
+            char_t   *name;
+            int8_t   typeKind;
+            uint32_t size;     /* bytes */
+            bool_t   b_const;
+            bool_t   b_volatile;
+        };
+        entry sTypeInfo eTypeInfo;
+    };
+    celltype tFloatTypeInfo {
+        attr {
+            char_t   *name;
+            int8_t   typeKind;
+            uint32_t size;     /* bytes */
+            bool_t   b_const;
+            bool_t   b_volatile;
+        };
+        entry sTypeInfo eTypeInfo;
+    };
+    celltype tStructTypeInfo {
+        attr {
+            char_t   *name;
+            int8_t   typeKind;
+            uint32_t size;     /* bytes */
+            bool_t   b_const;
+            bool_t   b_volatile;
+        };
+        entry sTypeInfo eTypeInfo;
+        [ref_desc]
+            call sVarDeclInfo cVarDeclInfo[];
+    };
+    celltype tPtrTypeInfo {
+        attr {
+            char_t   *name;
+            int8_t   typeKind;
+            uint32_t size;     /* bytes */
+            bool_t   b_const;
+            bool_t   b_volatile;
+        };
+        entry sTypeInfo eTypeInfo;
+        [ref_desc]
+            call sTypeInfo cTypeInfo;
+        FACTORY {
+            write( "$ct_global$_factory.h", "#include \"include_all_signature_header.h\"" );
+        };
+    };
+    celltype tArrayTypeInfo {
+        attr {
+            char_t   *name;
+            int8_t   typeKind;
+            uint32_t size;     /* bytes */
+            bool_t   b_const;
+            bool_t   b_volatile;
+        };
+        entry sTypeInfo eTypeInfo;
+        [ref_desc]
+            call sTypeInfo cTypeInfo;
+        FACTORY {
+            write( "$ct_global$_factory.h", "#include \"include_all_signature_header.h\"" );
+        };
+    };
+    celltype tDefinedTypeInfo {
+        attr {
+            char_t   *name;
+            int8_t   typeKind;
+            uint32_t size;     /* bytes */
+            bool_t   b_const;
+            bool_t   b_volatile;
+        };
+        entry sTypeInfo eTypeInfo;
+        [ref_desc]
+            call sTypeInfo cTypeInfo;
+    };
+    celltype tDescriptorTypeInfo {
+        attr {
+            char_t   *name;
+            int8_t   typeKind;
+            uint32_t size;     /* bytes */
+            bool_t   b_const;
+            bool_t   b_volatile;
+        };
+        entry sTypeInfo eTypeInfo;
+        [ref_desc]
+            call sSignatureInfo cSignatureInfo;
+        FACTORY {
+            write( "$ct_global$_factory.h", "#include \"include_all_signature_header.h\"" );
+        };
+    };
+};
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/TECSInfoAccessor.cdl
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/TECSInfoAccessor.cdl	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/TECSInfoAccessor.cdl	(revision 374)
@@ -0,0 +1,179 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+// mruby ããã¢ã¯ã»ã¹ã§ãããããªã·ã°ããã£ã«ãããã¢ã¯ã»ã¹ç¨ã»ã«ã¿ã¤ãã®å®ç¾©
+// ã¤ã¾ããã·ã°ããã£ãã Descriptor åããªãããååãæå®ãã¦åççµåãããã»ã«ã¿ã¤ããç¨æãã
+
+import( <TECSInfo.cdl> );
+
+//namespace nTECSInfo {
+    signature sAccessor{
+        ER   selectNamespaceInfoByName( [in,string]const char_t *namespacePath );
+        ER   selectCelltypeInfoByName(  [in,string]const char_t *namespacePath );
+        ER   selectSignatureInfoByName( [in,string]const char_t *namespacePath );
+        ER   selectRegionInfoByName(    [in,string]const char_t *regionPath );
+        ER   selectCellInfoByName(      [in,string]const char_t *cellPath );
+
+        // namespace
+        ER   getSelectedNamespaceInfo( [out,string(max_len)]char_t *name, [in]int_t max_len, [out]int_t *num_namespace, [out]int_t *num_celltype, [out]int_t *num_signature );
+        ER   selectCelltypeInfo( [in]int_t ith );
+        ER   selectSignatureInfo( [in]int_t ith );
+
+        // celltype
+        ER   getSelectedCelltypeInfo( [out,string(max_len)]char_t *name, [in]int_t max_len,
+                                      [out]int_t *num_attr, [out]int_t *num_var, [out]int_t *num_call, [out]int_t *num_entry );
+        ER   selectCallInfo( [in]int_t ith );
+        ER   selectEntryInfo( [in]int_t ith );
+        ER   selectAttrInfo( [in]int_t ith );
+        ER   selectVarInfo( [in]int_t ith );
+
+        // attr
+        ER   getSelectedAttrInfo( [out,string(max_len)]char_t *name, [in]int_t max_len );
+        ER   getSizeIsExprOfAttr( [out,string(max_len)]char_t *expr_str, [in]int32_t max_len );
+        ER   selectTypeInfoOfAttr(void);
+
+        // var
+        ER   getSelectedVarInfo( [out,string(max_len)]char_t *name, [in]int_t max_len );
+        ER   getSizeIsExprOfVar( [out,string(max_len)]char_t *expr_str, [in]int32_t max_len );
+        ER   selectTypeInfoOfVar(void);
+
+        // call
+        ER   getSelectedCallInfo( [out,string(max_len)]char_t *name, [in]int_t max_len, [out]int_t *array_size );
+        ER   selectSignatureOfCall(void);
+        ER   getSelectedCallSpecifierInfo( [out]bool_t   *b_optional,  [out]bool_t   *b_dynamic,
+                                           [out]bool_t   *b_ref_desc,  [out]bool_t   *b_omit );
+        ER   getSelectedCallInternalInfo(  [out]bool_t   *b_allocator_port, [out]bool_t   *b_require_port );
+        ER   getSelectedCallLocationInfo(  [out]uint32_t *offset,             // offset in CALL_PLACE_*
+                                           [out]int8_t   *place );            // CALL_PLACE_*
+        ER   getSelectedCallOptimizeInfo(  [out]bool_t   *b_VMT_useless,      // VMT (é¢æ°ãã¼ãã«) ä¸è¦æé©å (é¢æ°ç´æ¥å¼åºã)
+                                           [out]bool_t   *b_skelton_useless,  // ã¹ã±ã«ãã³é¢æ°ä¸è¦ (
+                                           [out]bool_t   *b_cell_unique );    // åä¸ã®ã»ã«
+
+        // entry
+        ER   getSelectedEntryInfo( [out,string(max_len)]char_t *name, [in]int_t max_len, [out]int_t *array_size );
+        ER   selectSignatureOfEntry(void);
+        ER   getSelectedEntryInlineInfo([out]bool_t *b_inline);
+
+        // signature
+        ER   getSelectedSignatureInfo( [out,string(max_len)]char_t *name, [in]int_t max_len, [out]int_t *num_function );
+        ER   selectFunctionInfoByIndex( [in]int_t ith );
+
+        // function
+        ER   getSelectedFunctionInfo( [out,string(max_len)]char_t *name, [in]int_t max_len, [out]int_t *num_args );
+        ER   selectTypeInfoOfReturn(void);
+
+        // parameter of function
+        ER   getSelectedParamInfo( [out,string(max_len)]char_t *name, [in]int_t max_len, [out]int8_t *dir );
+        ER   selectParamInfo( [in]int_t ith );
+        ER   selectTypeInfoOfParam(void);
+
+        // type of function return and parameter, celltype attr and var
+        ER   getSelectedTypeInfo( [out,string(max_len)]char_t *name, [in]int_t max_len, [out]int8_t *kind );
+        ER   selectTypeInfoOfType(void);
+
+        // region
+        ER   getSelectedRegionInfo( [out,string(max_len)]char_t *name, [in]int_t max_len, [out]int_t *num_cell );
+        ER   selectCellInfo( [in]int_t ith );
+
+        // cell
+        ER   getSelectedCellInfo( [out,string(max_len)]char_t *name, [in]int_t max_len);
+        ER   selectCelltypeInfoOfCell(void); // é¸æä¸­ã»ã«ã®ã»ã«ã¿ã¤ããé¸æ (ã»ã«ã¿ã¤ãã®é¢æ°ãä½¿ç¨ã§ãã)
+        ER   getAttrValueInStr([out,string(max_len)]char_t *buf, [in]int_t max_len);  // äºåã«ãã»ã«ãã»ã«ã¿ã¤ããå±æ§ãé¸æãã¦ãããã¨ï¼cTypeInfo ãå¤æ´ããã
+        ER   getAttrSizeIsValue(void);       // äºåã«ãã»ã«ãã»ã«ã¿ã¤ããå±æ§ãé¸æãã¦ãããã¨ï¼cTypeInfo ãå¤æ´ããã
+        ER   getVarValueInStr([out,string(max_len)]char_t *buf, [in]int_t max_len);   // äºåã«ãã»ã«ãã»ã«ã¿ã¤ããå¤æ°ãé¸æãã¦ãããã¨ï¼cTypeInfo ãå¤æ´ããã
+        ER   getVarSizeIsValue(void);        // äºåã«ãã»ã«ãã»ã«ã¿ã¤ããå¤æ°ãé¸æãã¦ãããã¨ï¼cTypeInfo ãå¤æ´ããã
+    };
+
+    celltype tTECSInfoAccessor {
+
+        entry sAccessor eSelector;
+
+        call  nTECSInfo::sTECSInfo cTECSInfo;
+        [dynamic,optional]
+            call  nTECSInfo::sNamespaceInfo cNSInfo;
+        [dynamic,optional]
+            call  nTECSInfo::sCelltypeInfo  cCelltypeInfo;
+        [dynamic,optional]
+            call  nTECSInfo::sSignatureInfo cSignatureInfo;
+        [dynamic,optional]
+            call  nTECSInfo::sFunctionInfo  cFunctionInfo;
+        [dynamic,optional]
+            call  nTECSInfo::sParamInfo     cParamInfo;
+        [dynamic,optional]
+            call  nTECSInfo::sCallInfo      cCallInfo;
+        [dynamic,optional]
+            call  nTECSInfo::sEntryInfo     cEntryInfo;
+        [dynamic,optional]
+            call  nTECSInfo::sVarDeclInfo   cAttrInfo;
+        [dynamic,optional]
+            call  nTECSInfo::sVarDeclInfo   cVarInfo;
+        [dynamic,optional]
+            call  nTECSInfo::sTypeInfo      cTypeInfo;
+
+        [dynamic,optional]
+            call  nTECSInfo::sRegionInfo    cRegionInfo;
+        [dynamic,optional]
+            call  nTECSInfo::sCellInfo      cCellInfo;
+
+        attr{
+            int16_t NAME_LEN = 256;
+        };
+        var{
+            [size_is(NAME_LEN)]
+                char_t  *name;
+            [size_is(NAME_LEN)]
+                char_t  *name2;
+            int8_t      *selectedCbp;
+            int8_t      *selectedInibp;
+        };
+    };
+//};
+
+
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tArrayTypeInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tArrayTypeInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tArrayTypeInfo.c	(revision 374)
@@ -0,0 +1,269 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * typeKind         int8_t           ATTR_typeKind   
+ * size             uint32_t         ATTR_size       
+ * b_const          bool_t           ATTR_b_const    
+ * b_volatile       bool_t           ATTR_b_volatile 
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cTypeInfo signature: nTECSInfo_sTypeInfo context:task
+ *   ER             cTypeInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cTypeInfo_getNameLength( );
+ *   uint32_t       cTypeInfo_getSize( );
+ *   int8_t         cTypeInfo_getKind( );
+ *   uint32_t       cTypeInfo_getNType( );
+ *   ER             cTypeInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   uint32_t       cTypeInfo_getNMember( );
+ *   ER             cTypeInfo_getMemberInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_ref_desc()      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tArrayTypeInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTypeInfo
+ * entry port: eTypeInfo
+ * signature:  nTECSInfo_sTypeInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getName
+ * name:         eTypeInfo_getName
+ * global_name:  nTECSInfo_tArrayTypeInfo_eTypeInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNameLength
+ * name:         eTypeInfo_getNameLength
+ * global_name:  nTECSInfo_tArrayTypeInfo_eTypeInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eTypeInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getSize
+ * name:         eTypeInfo_getSize
+ * global_name:  nTECSInfo_tArrayTypeInfo_eTypeInfo_getSize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getSize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	return ATTR_size;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getKind
+ * name:         eTypeInfo_getKind
+ * global_name:  nTECSInfo_tArrayTypeInfo_eTypeInfo_getKind
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+int8_t
+eTypeInfo_getKind(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	return TECSTypeKind_ArrayType;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNType
+ * name:         eTypeInfo_getNType
+ * global_name:  nTECSInfo_tArrayTypeInfo_eTypeInfo_getNType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNType(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	return ATTR_size / cTypeInfo_getSize();  /* é
+åè¦ç´ æ° = ãµã¤ãº / è¦ç´ ãµã¤ãº */
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getTypeInfo
+ * name:         eTypeInfo_getTypeInfo
+ * global_name:  nTECSInfo_tArrayTypeInfo_eTypeInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+  ER      ercd = E_OK;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  *desc = cTypeInfo_refer_to_descriptor();
+  return ercd;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNMember
+ * name:         eTypeInfo_getNMember
+ * global_name:  nTECSInfo_tArrayTypeInfo_eTypeInfo_getNMember
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNMember(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getMemberInfo
+ * name:         eTypeInfo_getMemberInfo
+ * global_name:  nTECSInfo_tArrayTypeInfo_eTypeInfo_getMemberInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getMemberInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tBoolTypeInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tBoolTypeInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tBoolTypeInfo.c	(revision 374)
@@ -0,0 +1,252 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * typeKind         int8_t           ATTR_typeKind   
+ * size             uint32_t         ATTR_size       
+ * b_const          bool_t           ATTR_b_const    
+ * b_volatile       bool_t           ATTR_b_volatile 
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tBoolTypeInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTypeInfo
+ * entry port: eTypeInfo
+ * signature:  nTECSInfo_sTypeInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getName
+ * name:         eTypeInfo_getName
+ * global_name:  nTECSInfo_tBoolTypeInfo_eTypeInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNameLength
+ * name:         eTypeInfo_getNameLength
+ * global_name:  nTECSInfo_tBoolTypeInfo_eTypeInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eTypeInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getSize
+ * name:         eTypeInfo_getSize
+ * global_name:  nTECSInfo_tBoolTypeInfo_eTypeInfo_getSize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getSize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return ATTR_size;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getKind
+ * name:         eTypeInfo_getKind
+ * global_name:  nTECSInfo_tBoolTypeInfo_eTypeInfo_getKind
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+int8_t
+eTypeInfo_getKind(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return TECSTypeKind_ArrayType;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNType
+ * name:         eTypeInfo_getNType
+ * global_name:  nTECSInfo_tBoolTypeInfo_eTypeInfo_getNType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNType(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return 0;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getTypeInfo
+ * name:         eTypeInfo_getTypeInfo
+ * global_name:  nTECSInfo_tBoolTypeInfo_eTypeInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return E_NOEXS;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNMember
+ * name:         eTypeInfo_getNMember
+ * global_name:  nTECSInfo_tBoolTypeInfo_eTypeInfo_getNMember
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNMember(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getMemberInfo
+ * name:         eTypeInfo_getMemberInfo
+ * global_name:  nTECSInfo_tBoolTypeInfo_eTypeInfo_getMemberInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getMemberInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tCallInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tCallInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tCallInfo.c	(revision 374)
@@ -0,0 +1,275 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * offset           uint32_t         ATTR_offset     
+ * array_size       uint32_t         ATTR_array_size 
+ * b_optional       bool_t           ATTR_b_optional 
+ * b_omit           bool_t           ATTR_b_omit     
+ * b_dynamic        bool_t           ATTR_b_dynamic  
+ * b_ref_desc       bool_t           ATTR_b_ref_desc 
+ * b_allocator_port bool_t           ATTR_b_allocator_port
+ * b_require_port   bool_t           ATTR_b_require_port
+ * place            int8_t           ATTR_place      
+ * b_VMT_useless    bool_t           ATTR_b_VMT_useless
+ * b_skelton_useless bool_t           ATTR_b_skelton_useless
+ * b_cell_unique    bool_t           ATTR_b_cell_unique
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cSignatureInfo signature: nTECSInfo_sSignatureInfo context:task
+ *   ER             cSignatureInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cSignatureInfo_getNameLength( );
+ *   uint32_t       cSignatureInfo_getNFunction( );
+ *   ER             cSignatureInfo_getFunctionInfo( uint32_t ith, Descriptor( nTECSInfo_sFunctionInfo )* desc );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sSignatureInfo ) cSignatureInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sSignatureInfo ) cSignatureInfo_ref_desc()      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tCallInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eCallInfo
+ * entry port: eCallInfo
+ * signature:  nTECSInfo_sCallInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eCallInfo_getName
+ * name:         eCallInfo_getName
+ * global_name:  nTECSInfo_tCallInfo_eCallInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eCallInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eCallInfo_getNameLength
+ * name:         eCallInfo_getNameLength
+ * global_name:  nTECSInfo_tCallInfo_eCallInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eCallInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eCallInfo_getSignatureInfo
+ * name:         eCallInfo_getSignatureInfo
+ * global_name:  nTECSInfo_tCallInfo_eCallInfo_getSignatureInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eCallInfo_getSignatureInfo(CELLIDX idx, Descriptor( nTECSInfo_sSignatureInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *desc = cSignatureInfo_refer_to_descriptor();
+}
+
+/* #[<ENTRY_FUNC>]# eCallInfo_getArraySize
+ * name:         eCallInfo_getArraySize
+ * global_name:  nTECSInfo_tCallInfo_eCallInfo_getArraySize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eCallInfo_getArraySize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return ATTR_array_size;
+}
+
+/* #[<ENTRY_FUNC>]# eCallInfo_getSpecifierInfo
+ * name:         eCallInfo_getSpecifierInfo
+ * global_name:  nTECSInfo_tCallInfo_eCallInfo_getSpecifierInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eCallInfo_getSpecifierInfo(CELLIDX idx, bool_t* b_optional, bool_t* b_dynamic, bool_t* b_ref_desc, bool_t* b_omit)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  *b_optional = ATTR_b_optional;
+  *b_dynamic  = ATTR_b_dynamic;
+  *b_ref_desc = ATTR_b_ref_desc;
+  *b_omit     = ATTR_b_omit;
+}
+
+/* #[<ENTRY_FUNC>]# eCallInfo_getInternalInfo
+ * name:         eCallInfo_getInternalInfo
+ * global_name:  nTECSInfo_tCallInfo_eCallInfo_getInternalInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eCallInfo_getInternalInfo(CELLIDX idx, bool_t* b_allocator_port, bool_t* b_require_port)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  *b_allocator_port = ATTR_b_allocator_port;
+  *b_require_port   = ATTR_b_require_port;
+}
+
+/* #[<ENTRY_FUNC>]# eCallInfo_getLocationInfo
+ * name:         eCallInfo_getLocationInfo
+ * global_name:  nTECSInfo_tCallInfo_eCallInfo_getLocationInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eCallInfo_getLocationInfo(CELLIDX idx, uint32_t* offset, int8_t* place)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  *offset = ATTR_offset;
+  *place  = ATTR_place;
+}
+
+/* #[<ENTRY_FUNC>]# eCallInfo_getOptimizeInfo
+ * name:         eCallInfo_getOptimizeInfo
+ * global_name:  nTECSInfo_tCallInfo_eCallInfo_getOptimizeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eCallInfo_getOptimizeInfo(CELLIDX idx, bool_t* b_VMT_useless, bool_t* b_skelton_useless, bool_t* b_cell_unique)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  *b_VMT_useless     = ATTR_b_VMT_useless;
+  *b_skelton_useless = ATTR_b_skelton_useless;
+  *b_cell_unique     = ATTR_b_cell_unique;
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tCellInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tCellInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tCellInfo.c	(revision 374)
@@ -0,0 +1,266 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * cbp              void*            ATTR_cbp        
+ * inibp            void*            ATTR_inibp      
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cCelltypeInfo signature: nTECSInfo_sCelltypeInfo context:task
+ *   ER             cCelltypeInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cCelltypeInfo_getNameLength( );
+ *   uint32_t       cCelltypeInfo_getNAttr( );
+ *   ER             cCelltypeInfo_getAttrInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNVar( );
+ *   ER             cCelltypeInfo_getVarInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNCall( );
+ *   ER             cCelltypeInfo_getCallInfo( uint32_t ith, Descriptor( nTECSInfo_sCallInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNEntry( );
+ *   ER             cCelltypeInfo_getEntryInfo( uint32_t ith, Descriptor( nTECSInfo_sEntryInfo )* desc );
+ *   bool_t         cCelltypeInfo_isSingleton( );
+ *   bool_t         cCelltypeInfo_isIDX_is_ID( );
+ *   uint32_t       cCelltypeInfo_sizeOfCB( );
+ *   uint32_t       cCelltypeInfo_sizeOfINIB( );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sCelltypeInfo ) cCelltypeInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sCelltypeInfo ) cCelltypeInfo_ref_desc()      (same as above; abbreviated version);
+ * call port: cRawEntryDescriptor signature: nTECSInfo_sRawEntryDescriptorInfo context:task optional:true
+ *   bool_t     is_cRawEntryDescriptor_joined(int subscript)        check if joined
+ *   uint16_t       cRawEntryDescriptor_getNRawEntryDescriptorInfo( subscript );
+ *   ER             cRawEntryDescriptor_getRawDescriptor( subscript, const char_t* signatureName, int_t ith, void** rawDesc );
+ *       subscript:  0...(NCP_cRawEntryDescriptor-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sRawEntryDescriptorInfo ) cRawEntryDescriptor_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sRawEntryDescriptorInfo ) cRawEntryDescriptor_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tCellInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eCellInfo
+ * entry port: eCellInfo
+ * signature:  nTECSInfo_sCellInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eCellInfo_getName
+ * name:         eCellInfo_getName
+ * global_name:  nTECSInfo_tCellInfo_eCellInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eCellInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eCellInfo_getNameLength
+ * name:         eCellInfo_getNameLength
+ * global_name:  nTECSInfo_tCellInfo_eCellInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eCellInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eCellInfo_getNRawEntryDescriptorInfo
+ * name:         eCellInfo_getNRawEntryDescriptorInfo
+ * global_name:  nTECSInfo_tCellInfo_eCellInfo_getNRawEntryDescriptorInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eCellInfo_getNRawEntryDescriptorInfo(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return NCP_cRawEntryDescriptor;
+}
+
+/* #[<ENTRY_FUNC>]# eCellInfo_getRawEntryDescriptorInfo
+ * name:         eCellInfo_getRawEntryDescriptorInfo
+ * global_name:  nTECSInfo_tCellInfo_eCellInfo_getRawEntryDescriptorInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eCellInfo_getRawEntryDescriptorInfo(CELLIDX idx, int_t index, Descriptor( nTECSInfo_sRawEntryDescriptorInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+  ER      ercd = E_OK;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( 0 <= index && index < NCP_cRawEntryDescriptor ){
+      if( is_cRawEntryDescriptor_joined( index ) )
+          *desc = cRawEntryDescriptor_refer_to_descriptor( index );
+      else
+          ercd = E_NOEXS;
+  }
+  else
+      ercd = E_ID;
+
+  return ercd;
+}
+
+/* #[<ENTRY_FUNC>]# eCellInfo_getCelltypeInfo
+ * name:         eCellInfo_getCelltypeInfo
+ * global_name:  nTECSInfo_tCellInfo_eCellInfo_getCelltypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eCellInfo_getCelltypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sCelltypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *desc = cCelltypeInfo_refer_to_descriptor();
+}
+
+/* #[<ENTRY_FUNC>]# eCellInfo_getCBP
+ * name:         eCellInfo_getCBP
+ * global_name:  nTECSInfo_tCellInfo_eCellInfo_getCBP
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eCellInfo_getCBP(CELLIDX idx, void** cbp)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *cbp = ATTR_cbp;
+}
+
+/* #[<ENTRY_FUNC>]# eCellInfo_getINIBP
+ * name:         eCellInfo_getINIBP
+ * global_name:  nTECSInfo_tCellInfo_eCellInfo_getINIBP
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eCellInfo_getINIBP(CELLIDX idx, void** inibp)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *inibp = ATTR_inibp;
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tCelltypeInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tCelltypeInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tCelltypeInfo.c	(revision 374)
@@ -0,0 +1,461 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * b_singleton      bool_t           ATTR_b_singleton
+ * b_IDX_is_ID_act  bool_t           ATTR_b_IDX_is_ID_act
+ * sizeOfCB         uint32_t         ATTR_sizeOfCB   
+ * sizeOfINIB       uint32_t         ATTR_sizeOfINIB 
+ * n_cellInLinkUnit uint32_t         ATTR_n_cellInLinkUnit
+ * n_cellInSystem   uint32_t         ATTR_n_cellInSystem
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cEntryInfo signature: nTECSInfo_sEntryInfo context:task optional:true
+ *   bool_t     is_cEntryInfo_joined(int subscript)        check if joined
+ *   ER             cEntryInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cEntryInfo_getNameLength( subscript );
+ *   void           cEntryInfo_getSignatureInfo( subscript, Descriptor( nTECSInfo_sSignatureInfo )* desc );
+ *   uint32_t       cEntryInfo_getArraySize( subscript );
+ *   bool_t         cEntryInfo_isInline( subscript );
+ *       subscript:  0...(NCP_cEntryInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sEntryInfo ) cEntryInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sEntryInfo ) cEntryInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ * call port: cCallInfo signature: nTECSInfo_sCallInfo context:task optional:true
+ *   bool_t     is_cCallInfo_joined(int subscript)        check if joined
+ *   ER             cCallInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cCallInfo_getNameLength( subscript );
+ *   void           cCallInfo_getSignatureInfo( subscript, Descriptor( nTECSInfo_sSignatureInfo )* desc );
+ *   uint32_t       cCallInfo_getArraySize( subscript );
+ *   void           cCallInfo_getSpecifierInfo( subscript, bool_t* b_optional, bool_t* b_dynamic, bool_t* b_ref_desc, bool_t* b_omit );
+ *   void           cCallInfo_getInternalInfo( subscript, bool_t* b_allocator_port, bool_t* b_require_port );
+ *   void           cCallInfo_getLocationInfo( subscript, uint32_t* offset, int8_t* place );
+ *   void           cCallInfo_getOptimizeInfo( subscript, bool_t* b_VMT_useless, bool_t* b_skelton_useless, bool_t* b_cell_unique );
+ *       subscript:  0...(NCP_cCallInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sCallInfo ) cCallInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sCallInfo ) cCallInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ * call port: cAttrInfo signature: nTECSInfo_sVarDeclInfo context:task optional:true
+ *   bool_t     is_cAttrInfo_joined(int subscript)        check if joined
+ *   ER             cAttrInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cAttrInfo_getNameLength( subscript );
+ *   uint32_t       cAttrInfo_getOffset( subscript );
+ *   void           cAttrInfo_getTypeInfo( subscript, Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   void           cAttrInfo_getSizeIsExpr( subscript, char_t* expr_str, int32_t max_len );
+ *   ER             cAttrInfo_getSizeIs( subscript, uint32_t* size, const void* p_cb );
+ *       subscript:  0...(NCP_cAttrInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sVarDeclInfo ) cAttrInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sVarDeclInfo ) cAttrInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ * call port: cVarInfo signature: nTECSInfo_sVarDeclInfo context:task optional:true
+ *   bool_t     is_cVarInfo_joined(int subscript)        check if joined
+ *   ER             cVarInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cVarInfo_getNameLength( subscript );
+ *   uint32_t       cVarInfo_getOffset( subscript );
+ *   void           cVarInfo_getTypeInfo( subscript, Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   void           cVarInfo_getSizeIsExpr( subscript, char_t* expr_str, int32_t max_len );
+ *   ER             cVarInfo_getSizeIs( subscript, uint32_t* size, const void* p_cb );
+ *       subscript:  0...(NCP_cVarInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sVarDeclInfo ) cVarInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sVarDeclInfo ) cVarInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tCelltypeInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eCelltypeInfo
+ * entry port: eCelltypeInfo
+ * signature:  nTECSInfo_sCelltypeInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_getName
+ * name:         eCelltypeInfo_getName
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eCelltypeInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+    ER		ercd = E_OK;
+    CELLCB	*p_cellcb;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        return(E_ID);
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    name[ max_len - 1 ] = '\0';
+    strncpy( name, ATTR_name, max_len );
+    if( name[ max_len - 1 ] ){
+        name[ max_len - 1 ] = '\0';
+        ercd = E_NOMEM;
+    }
+
+    return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_getNameLength
+ * name:         eCelltypeInfo_getNameLength
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eCelltypeInfo_getNameLength(CELLIDX idx)
+{
+    CELLCB	*p_cellcb;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* Write error processing code here */
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_getNAttr
+ * name:         eCelltypeInfo_getNAttr
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_getNAttr
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eCelltypeInfo_getNAttr(CELLIDX idx)
+{
+    CELLCB	*p_cellcb;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* Write error processing code here */
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    return NCP_cAttrInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_getAttrInfo
+ * name:         eCelltypeInfo_getAttrInfo
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_getAttrInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eCelltypeInfo_getAttrInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc)
+{
+    CELLCB	*p_cellcb;
+    ER      ercd = E_OK;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* Write error processing code here */
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    if( 0 <= ith && ith < NCP_cAttrInfo ){
+        if( is_cAttrInfo_joined( ith ) )
+            *desc = cAttrInfo_refer_to_descriptor( ith );
+        else
+            ercd = E_NOEXS;
+    }
+    else
+        ercd = E_ID;
+    return ercd;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_getNVar
+ * name:         eCelltypeInfo_getNVar
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_getNVar
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eCelltypeInfo_getNVar(CELLIDX idx)
+{
+    CELLCB	*p_cellcb;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* Write error processing code here */
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    return NCP_cVarInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_getVarInfo
+ * name:         eCelltypeInfo_getVarInfo
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_getVarInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eCelltypeInfo_getVarInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc)
+{
+    CELLCB	*p_cellcb;
+    ER      ercd = E_OK;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* Write error processing code here */
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    if( 0 <= ith &&  ith < NCP_cVarInfo ){
+        if( is_cVarInfo_joined( ith ) )
+            *desc = cVarInfo_refer_to_descriptor( ith );
+        else
+            ercd = E_NOEXS;
+    }
+    else
+        ercd = E_ID;
+    return ercd;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_getNCall
+ * name:         eCelltypeInfo_getNCall
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_getNCall
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eCelltypeInfo_getNCall(CELLIDX idx)
+{
+    CELLCB	*p_cellcb;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* Write error processing code here */
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    return NCP_cCallInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_getCallInfo
+ * name:         eCelltypeInfo_getCallInfo
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_getCallInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eCelltypeInfo_getCallInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sCallInfo )* desc)
+{
+    CELLCB	*p_cellcb;
+    ER      ercd = E_OK;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* Write error processing code here */
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    if( 0 <= ith && ith < NCP_cCallInfo ){
+        if( is_cCallInfo_joined( ith ) )
+            *desc = cCallInfo_refer_to_descriptor( ith );
+        else
+            ercd = E_NOEXS;
+    }
+    else
+        ercd = E_ID;
+
+    return ercd;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_getNEntry
+ * name:         eCelltypeInfo_getNEntry
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_getNEntry
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eCelltypeInfo_getNEntry(CELLIDX idx)
+{
+    CELLCB	*p_cellcb;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* Write error processing code here */
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    return NCP_cEntryInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_getEntryInfo
+ * name:         eCelltypeInfo_getEntryInfo
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_getEntryInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eCelltypeInfo_getEntryInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sEntryInfo )* desc)
+{
+    CELLCB	*p_cellcb;
+    ER      ercd = E_OK;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* Write error processing code here */
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    if( 0 <= ith && ith < NCP_cEntryInfo ){
+        if( is_cEntryInfo_joined( ith ) )
+            *desc = cEntryInfo_refer_to_descriptor( ith );
+        else
+            ercd = E_NOEXS;
+    }
+    else
+        ercd = E_ID;
+
+    return ercd;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_isSingleton
+ * name:         eCelltypeInfo_isSingleton
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_isSingleton
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+bool_t
+eCelltypeInfo_isSingleton(CELLIDX idx)
+{
+    CELLCB	*p_cellcb;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* Write error processing code here */
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    return ATTR_b_singleton;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_isIDX_is_ID
+ * name:         eCelltypeInfo_isIDX_is_ID
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_isIDX_is_ID
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+bool_t
+eCelltypeInfo_isIDX_is_ID(CELLIDX idx)
+{
+    CELLCB	*p_cellcb;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* Write error processing code here */
+    } /* end if VALID_IDX(idx) */
+
+    /* Put statements here #_TEFB_# */
+    return ATTR_b_IDX_is_ID_act;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_sizeOfCB
+ * name:         eCelltypeInfo_sizeOfCB
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_sizeOfCB
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eCelltypeInfo_sizeOfCB(CELLIDX idx)
+{
+    CELLCB	*p_cellcb;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+    } /* end if VALID_IDX(idx) */
+
+    /* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+    return ATTR_sizeOfCB;
+}
+
+/* #[<ENTRY_FUNC>]# eCelltypeInfo_sizeOfINIB
+ * name:         eCelltypeInfo_sizeOfINIB
+ * global_name:  nTECSInfo_tCelltypeInfo_eCelltypeInfo_sizeOfINIB
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eCelltypeInfo_sizeOfINIB(CELLIDX idx)
+{
+    CELLCB	*p_cellcb;
+    if (VALID_IDX(idx)) {
+        p_cellcb = GET_CELLCB(idx);
+    }
+    else {
+        /* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+    } /* end if VALID_IDX(idx) */
+
+    /* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+    return ATTR_sizeOfINIB;
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tDefinedTypeInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tDefinedTypeInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tDefinedTypeInfo.c	(revision 374)
@@ -0,0 +1,270 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * typeKind         int8_t           ATTR_typeKind   
+ * size             uint32_t         ATTR_size       
+ * b_const          bool_t           ATTR_b_const    
+ * b_volatile       bool_t           ATTR_b_volatile 
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cTypeInfo signature: nTECSInfo_sTypeInfo context:task
+ *   ER             cTypeInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cTypeInfo_getNameLength( );
+ *   uint32_t       cTypeInfo_getSize( );
+ *   int8_t         cTypeInfo_getKind( );
+ *   uint32_t       cTypeInfo_getNType( );
+ *   ER             cTypeInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   uint32_t       cTypeInfo_getNMember( );
+ *   ER             cTypeInfo_getMemberInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_ref_desc()      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tDefinedTypeInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTypeInfo
+ * entry port: eTypeInfo
+ * signature:  nTECSInfo_sTypeInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getName
+ * name:         eTypeInfo_getName
+ * global_name:  nTECSInfo_tDefinedTypeInfo_eTypeInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNameLength
+ * name:         eTypeInfo_getNameLength
+ * global_name:  nTECSInfo_tDefinedTypeInfo_eTypeInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eTypeInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getSize
+ * name:         eTypeInfo_getSize
+ * global_name:  nTECSInfo_tDefinedTypeInfo_eTypeInfo_getSize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getSize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return cTypeInfo_getSize();
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getKind
+ * name:         eTypeInfo_getKind
+ * global_name:  nTECSInfo_tDefinedTypeInfo_eTypeInfo_getKind
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+int8_t
+eTypeInfo_getKind(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return TECSTypeKind_DefinedType;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNType
+ * name:         eTypeInfo_getNType
+ * global_name:  nTECSInfo_tDefinedTypeInfo_eTypeInfo_getNType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNType(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return 1;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getTypeInfo
+ * name:         eTypeInfo_getTypeInfo
+ * global_name:  nTECSInfo_tDefinedTypeInfo_eTypeInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  /*
+   * ith == 0 is valid, others are invalid.
+   * but this function always returns valid value
+   */
+  *desc = cTypeInfo_refer_to_descriptor();
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNMember
+ * name:         eTypeInfo_getNMember
+ * global_name:  nTECSInfo_tDefinedTypeInfo_eTypeInfo_getNMember
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNMember(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getMemberInfo
+ * name:         eTypeInfo_getMemberInfo
+ * global_name:  nTECSInfo_tDefinedTypeInfo_eTypeInfo_getMemberInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getMemberInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tDescriptorTypeInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tDescriptorTypeInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tDescriptorTypeInfo.c	(revision 374)
@@ -0,0 +1,262 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * typeKind         int8_t           ATTR_typeKind   
+ * size             uint32_t         ATTR_size       
+ * b_const          bool_t           ATTR_b_const    
+ * b_volatile       bool_t           ATTR_b_volatile 
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cSignatureInfo signature: nTECSInfo_sSignatureInfo context:task
+ *   ER             cSignatureInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cSignatureInfo_getNameLength( );
+ *   uint32_t       cSignatureInfo_getNFunction( );
+ *   ER             cSignatureInfo_getFunctionInfo( uint32_t ith, Descriptor( nTECSInfo_sFunctionInfo )* desc );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sSignatureInfo ) cSignatureInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sSignatureInfo ) cSignatureInfo_ref_desc()      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tDescriptorTypeInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTypeInfo
+ * entry port: eTypeInfo
+ * signature:  nTECSInfo_sTypeInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getName
+ * name:         eTypeInfo_getName
+ * global_name:  nTECSInfo_tDescriptorTypeInfo_eTypeInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNameLength
+ * name:         eTypeInfo_getNameLength
+ * global_name:  nTECSInfo_tDescriptorTypeInfo_eTypeInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eTypeInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getSize
+ * name:         eTypeInfo_getSize
+ * global_name:  nTECSInfo_tDescriptorTypeInfo_eTypeInfo_getSize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getSize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return ATTR_size;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getKind
+ * name:         eTypeInfo_getKind
+ * global_name:  nTECSInfo_tDescriptorTypeInfo_eTypeInfo_getKind
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+int8_t
+eTypeInfo_getKind(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return TECSTypeKind_DescriptorType;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNType
+ * name:         eTypeInfo_getNType
+ * global_name:  nTECSInfo_tDescriptorTypeInfo_eTypeInfo_getNType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNType(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return 0;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getTypeInfo
+ * name:         eTypeInfo_getTypeInfo
+ * global_name:  nTECSInfo_tDescriptorTypeInfo_eTypeInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return E_NOEXS;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNMember
+ * name:         eTypeInfo_getNMember
+ * global_name:  nTECSInfo_tDescriptorTypeInfo_eTypeInfo_getNMember
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNMember(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getMemberInfo
+ * name:         eTypeInfo_getMemberInfo
+ * global_name:  nTECSInfo_tDescriptorTypeInfo_eTypeInfo_getMemberInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getMemberInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tEntryInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tEntryInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tEntryInfo.c	(revision 374)
@@ -0,0 +1,198 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * b_inline         bool_t           ATTR_b_inline   
+ * array_size       uint32_t         ATTR_array_size 
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cSignatureInfo signature: nTECSInfo_sSignatureInfo context:task
+ *   ER             cSignatureInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cSignatureInfo_getNameLength( );
+ *   uint32_t       cSignatureInfo_getNFunction( );
+ *   ER             cSignatureInfo_getFunctionInfo( uint32_t ith, Descriptor( nTECSInfo_sFunctionInfo )* desc );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sSignatureInfo ) cSignatureInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sSignatureInfo ) cSignatureInfo_ref_desc()      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tEntryInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eEntryInfo
+ * entry port: eEntryInfo
+ * signature:  nTECSInfo_sEntryInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eEntryInfo_getName
+ * name:         eEntryInfo_getName
+ * global_name:  nTECSInfo_tEntryInfo_eEntryInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eEntryInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eEntryInfo_getNameLength
+ * name:         eEntryInfo_getNameLength
+ * global_name:  nTECSInfo_tEntryInfo_eEntryInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eEntryInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eEntryInfo_getSignatureInfo
+ * name:         eEntryInfo_getSignatureInfo
+ * global_name:  nTECSInfo_tEntryInfo_eEntryInfo_getSignatureInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eEntryInfo_getSignatureInfo(CELLIDX idx, Descriptor( nTECSInfo_sSignatureInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *desc = cSignatureInfo_refer_to_descriptor();
+}
+
+/* #[<ENTRY_FUNC>]# eEntryInfo_getArraySize
+ * name:         eEntryInfo_getArraySize
+ * global_name:  nTECSInfo_tEntryInfo_eEntryInfo_getArraySize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eEntryInfo_getArraySize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return ATTR_array_size;
+}
+
+/* #[<ENTRY_FUNC>]# eEntryInfo_isInline
+ * name:         eEntryInfo_isInline
+ * global_name:  nTECSInfo_tEntryInfo_eEntryInfo_isInline
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+bool_t
+eEntryInfo_isInline(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return ATTR_b_inline;
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tFloatTypeInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tFloatTypeInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tFloatTypeInfo.c	(revision 374)
@@ -0,0 +1,252 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * typeKind         int8_t           ATTR_typeKind   
+ * size             uint32_t         ATTR_size       
+ * b_const          bool_t           ATTR_b_const    
+ * b_volatile       bool_t           ATTR_b_volatile 
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tFloatTypeInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTypeInfo
+ * entry port: eTypeInfo
+ * signature:  nTECSInfo_sTypeInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getName
+ * name:         eTypeInfo_getName
+ * global_name:  nTECSInfo_tFloatTypeInfo_eTypeInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNameLength
+ * name:         eTypeInfo_getNameLength
+ * global_name:  nTECSInfo_tFloatTypeInfo_eTypeInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eTypeInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getSize
+ * name:         eTypeInfo_getSize
+ * global_name:  nTECSInfo_tFloatTypeInfo_eTypeInfo_getSize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getSize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return ATTR_size;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getKind
+ * name:         eTypeInfo_getKind
+ * global_name:  nTECSInfo_tFloatTypeInfo_eTypeInfo_getKind
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+int8_t
+eTypeInfo_getKind(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return TECSTypeKind_FloatType;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNType
+ * name:         eTypeInfo_getNType
+ * global_name:  nTECSInfo_tFloatTypeInfo_eTypeInfo_getNType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNType(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return 0;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getTypeInfo
+ * name:         eTypeInfo_getTypeInfo
+ * global_name:  nTECSInfo_tFloatTypeInfo_eTypeInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return E_NOEXS;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNMember
+ * name:         eTypeInfo_getNMember
+ * global_name:  nTECSInfo_tFloatTypeInfo_eTypeInfo_getNMember
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNMember(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getMemberInfo
+ * name:         eTypeInfo_getMemberInfo
+ * global_name:  nTECSInfo_tFloatTypeInfo_eTypeInfo_getMemberInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getMemberInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tFunctionInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tFunctionInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tFunctionInfo.c	(revision 374)
@@ -0,0 +1,215 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * bOneway          bool_t           ATTR_bOneway    
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cParamInfo signature: nTECSInfo_sParamInfo context:task optional:true
+ *   bool_t     is_cParamInfo_joined(int subscript)        check if joined
+ *   ER             cParamInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cParamInfo_getNameLength( subscript );
+ *   ER             cParamInfo_getTypeInfo( subscript, Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *       subscript:  0...(NCP_cParamInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sParamInfo ) cParamInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sParamInfo ) cParamInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ * call port: cReturnTypeInfo signature: nTECSInfo_sTypeInfo context:task
+ *   ER             cReturnTypeInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cReturnTypeInfo_getNameLength( );
+ *   uint32_t       cReturnTypeInfo_getSize( );
+ *   int8_t         cReturnTypeInfo_getKind( );
+ *   uint32_t       cReturnTypeInfo_getNType( );
+ *   ER             cReturnTypeInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   uint32_t       cReturnTypeInfo_getNMember( );
+ *   ER             cReturnTypeInfo_getMemberInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sTypeInfo ) cReturnTypeInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sTypeInfo ) cReturnTypeInfo_ref_desc()      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tFunctionInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eFunctionInfo
+ * entry port: eFunctionInfo
+ * signature:  nTECSInfo_sFunctionInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eFunctionInfo_getName
+ * name:         eFunctionInfo_getName
+ * global_name:  nTECSInfo_tFunctionInfo_eFunctionInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eFunctionInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eFunctionInfo_getNameLength
+ * name:         eFunctionInfo_getNameLength
+ * global_name:  nTECSInfo_tFunctionInfo_eFunctionInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eFunctionInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eFunctionInfo_getReturnTypeInfo
+ * name:         eFunctionInfo_getReturnTypeInfo
+ * global_name:  nTECSInfo_tFunctionInfo_eFunctionInfo_getReturnTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eFunctionInfo_getReturnTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *desc = cReturnTypeInfo_refer_to_descriptor();
+}
+
+/* #[<ENTRY_FUNC>]# eFunctionInfo_getNParam
+ * name:         eFunctionInfo_getNParam
+ * global_name:  nTECSInfo_tFunctionInfo_eFunctionInfo_getNParam
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eFunctionInfo_getNParam(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return NCP_cParamInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eFunctionInfo_getParamInfo
+ * name:         eFunctionInfo_getParamInfo
+ * global_name:  nTECSInfo_tFunctionInfo_eFunctionInfo_getParamInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eFunctionInfo_getParamInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sParamInfo )* param)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  if( ith >= NCP_cParamInfo )
+      ercd = E_NOEXS;
+  else
+      *param = cParamInfo_refer_to_descriptor( ith );
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tIntTypeInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tIntTypeInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tIntTypeInfo.c	(revision 374)
@@ -0,0 +1,252 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * typeKind         int8_t           ATTR_typeKind   
+ * size             uint32_t         ATTR_size       
+ * b_const          bool_t           ATTR_b_const    
+ * b_volatile       bool_t           ATTR_b_volatile 
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tIntTypeInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTypeInfo
+ * entry port: eTypeInfo
+ * signature:  nTECSInfo_sTypeInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getName
+ * name:         eTypeInfo_getName
+ * global_name:  nTECSInfo_tIntTypeInfo_eTypeInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNameLength
+ * name:         eTypeInfo_getNameLength
+ * global_name:  nTECSInfo_tIntTypeInfo_eTypeInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eTypeInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getSize
+ * name:         eTypeInfo_getSize
+ * global_name:  nTECSInfo_tIntTypeInfo_eTypeInfo_getSize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getSize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return ATTR_size;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getKind
+ * name:         eTypeInfo_getKind
+ * global_name:  nTECSInfo_tIntTypeInfo_eTypeInfo_getKind
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+int8_t
+eTypeInfo_getKind(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return TECSTypeKind_IntType;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNType
+ * name:         eTypeInfo_getNType
+ * global_name:  nTECSInfo_tIntTypeInfo_eTypeInfo_getNType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNType(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return 0;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getTypeInfo
+ * name:         eTypeInfo_getTypeInfo
+ * global_name:  nTECSInfo_tIntTypeInfo_eTypeInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return E_NOEXS;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNMember
+ * name:         eTypeInfo_getNMember
+ * global_name:  nTECSInfo_tIntTypeInfo_eTypeInfo_getNMember
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNMember(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getMemberInfo
+ * name:         eTypeInfo_getMemberInfo
+ * global_name:  nTECSInfo_tIntTypeInfo_eTypeInfo_getMemberInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getMemberInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tNamespaceInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tNamespaceInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tNamespaceInfo.c	(revision 374)
@@ -0,0 +1,292 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char*            ATTR_name       
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cSignatureInfo signature: nTECSInfo_sSignatureInfo context:task optional:true
+ *   bool_t     is_cSignatureInfo_joined(int subscript)        check if joined
+ *   ER             cSignatureInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cSignatureInfo_getNameLength( subscript );
+ *   uint32_t       cSignatureInfo_getNFunction( subscript );
+ *   ER             cSignatureInfo_getFunctionInfo( subscript, uint32_t ith, Descriptor( nTECSInfo_sFunctionInfo )* desc );
+ *       subscript:  0...(NCP_cSignatureInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sSignatureInfo ) cSignatureInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sSignatureInfo ) cSignatureInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ * call port: cCelltypeInfo signature: nTECSInfo_sCelltypeInfo context:task optional:true
+ *   bool_t     is_cCelltypeInfo_joined(int subscript)        check if joined
+ *   ER             cCelltypeInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cCelltypeInfo_getNameLength( subscript );
+ *   uint32_t       cCelltypeInfo_getNAttr( subscript );
+ *   ER             cCelltypeInfo_getAttrInfo( subscript, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNVar( subscript );
+ *   ER             cCelltypeInfo_getVarInfo( subscript, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNCall( subscript );
+ *   ER             cCelltypeInfo_getCallInfo( subscript, uint32_t ith, Descriptor( nTECSInfo_sCallInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNEntry( subscript );
+ *   ER             cCelltypeInfo_getEntryInfo( subscript, uint32_t ith, Descriptor( nTECSInfo_sEntryInfo )* desc );
+ *   bool_t         cCelltypeInfo_isSingleton( subscript );
+ *   bool_t         cCelltypeInfo_isIDX_is_ID( subscript );
+ *   uint32_t       cCelltypeInfo_sizeOfCB( subscript );
+ *   uint32_t       cCelltypeInfo_sizeOfINIB( subscript );
+ *       subscript:  0...(NCP_cCelltypeInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sCelltypeInfo ) cCelltypeInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sCelltypeInfo ) cCelltypeInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ * call port: cNamespaceInfo signature: nTECSInfo_sNamespaceInfo context:task optional:true
+ *   bool_t     is_cNamespaceInfo_joined(int subscript)        check if joined
+ *   ER             cNamespaceInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cNamespaceInfo_getNameLength( subscript );
+ *   uint32_t       cNamespaceInfo_getNNamespace( subscript );
+ *   ER             cNamespaceInfo_getNamespaceInfo( subscript, uint32_t ith, Descriptor( nTECSInfo_sNamespaceInfo )* des );
+ *   uint32_t       cNamespaceInfo_getNSignature( subscript );
+ *   ER             cNamespaceInfo_getSignatureInfo( subscript, uint32_t ith, Descriptor( nTECSInfo_sSignatureInfo )* des );
+ *   uint32_t       cNamespaceInfo_getNCelltype( subscript );
+ *   ER             cNamespaceInfo_getCelltypeInfo( subscript, uint32_t ith, Descriptor( nTECSInfo_sCelltypeInfo )* des );
+ *       subscript:  0...(NCP_cNamespaceInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sNamespaceInfo ) cNamespaceInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sNamespaceInfo ) cNamespaceInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tNamespaceInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eNamespaceInfo
+ * entry port: eNamespaceInfo
+ * signature:  nTECSInfo_sNamespaceInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eNamespaceInfo_getName
+ * name:         eNamespaceInfo_getName
+ * global_name:  nTECSInfo_tNamespaceInfo_eNamespaceInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eNamespaceInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eNamespaceInfo_getNameLength
+ * name:         eNamespaceInfo_getNameLength
+ * global_name:  nTECSInfo_tNamespaceInfo_eNamespaceInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eNamespaceInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eNamespaceInfo_getNNamespace
+ * name:         eNamespaceInfo_getNNamespace
+ * global_name:  nTECSInfo_tNamespaceInfo_eNamespaceInfo_getNNamespace
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eNamespaceInfo_getNNamespace(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return NCP_cNamespaceInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eNamespaceInfo_getNamespaceInfo
+ * name:         eNamespaceInfo_getNamespaceInfo
+ * global_name:  nTECSInfo_tNamespaceInfo_eNamespaceInfo_getNamespaceInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eNamespaceInfo_getNamespaceInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sNamespaceInfo )* des)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *des = cNamespaceInfo_refer_to_descriptor( ith );
+}
+
+/* #[<ENTRY_FUNC>]# eNamespaceInfo_getNSignature
+ * name:         eNamespaceInfo_getNSignature
+ * global_name:  nTECSInfo_tNamespaceInfo_eNamespaceInfo_getNSignature
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eNamespaceInfo_getNSignature(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return NCP_cSignatureInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eNamespaceInfo_getSignatureInfo
+ * name:         eNamespaceInfo_getSignatureInfo
+ * global_name:  nTECSInfo_tNamespaceInfo_eNamespaceInfo_getSignatureInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eNamespaceInfo_getSignatureInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sSignatureInfo )* des)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	*des = cSignatureInfo_refer_to_descriptor( ith );
+}
+
+/* #[<ENTRY_FUNC>]# eNamespaceInfo_getNCelltype
+ * name:         eNamespaceInfo_getNCelltype
+ * global_name:  nTECSInfo_tNamespaceInfo_eNamespaceInfo_getNCelltype
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eNamespaceInfo_getNCelltype(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return NCP_cCelltypeInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eNamespaceInfo_getCelltypeInfo
+ * name:         eNamespaceInfo_getCelltypeInfo
+ * global_name:  nTECSInfo_tNamespaceInfo_eNamespaceInfo_getCelltypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eNamespaceInfo_getCelltypeInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sCelltypeInfo )* des)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	*des = cCelltypeInfo_refer_to_descriptor( ith );
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tParamInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tParamInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tParamInfo.c	(revision 374)
@@ -0,0 +1,189 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * dir              int8_t           ATTR_dir        
+ * sizeIsExpr       char_t*          ATTR_sizeIsExpr 
+ * countIsExpr      char_t*          ATTR_countIsExpr
+ * stringExpr       char_t*          ATTR_stringExpr 
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cTypeInfo signature: nTECSInfo_sTypeInfo context:task
+ *   ER             cTypeInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cTypeInfo_getNameLength( );
+ *   uint32_t       cTypeInfo_getSize( );
+ *   int8_t         cTypeInfo_getKind( );
+ *   uint32_t       cTypeInfo_getNType( );
+ *   ER             cTypeInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   uint32_t       cTypeInfo_getNMember( );
+ *   ER             cTypeInfo_getMemberInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_ref_desc()      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tParamInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eParamInfo
+ * entry port: eParamInfo
+ * signature:  nTECSInfo_sParamInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eParamInfo_getName
+ * name:         eParamInfo_getName
+ * global_name:  nTECSInfo_tParamInfo_eParamInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eParamInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eParamInfo_getNameLength
+ * name:         eParamInfo_getNameLength
+ * global_name:  nTECSInfo_tParamInfo_eParamInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eParamInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eParamInfo_getTypeInfo
+ * name:         eParamInfo_getTypeInfo
+ * global_name:  nTECSInfo_tParamInfo_eParamInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eParamInfo_getTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *desc = cTypeInfo_refer_to_descriptor();
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eParamInfo_getDir
+ * name:         eParamInfo_getDir
+ * global_name:  nTECSInfo_tParamInfo_eParamInfo_getDir
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eParamInfo_getDir(CELLIDX idx, int8_t *dir)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *dir = ATTR_dir;
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tPtrTypeInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tPtrTypeInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tPtrTypeInfo.c	(revision 374)
@@ -0,0 +1,266 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * typeKind         int8_t           ATTR_typeKind   
+ * size             uint32_t         ATTR_size       
+ * b_const          bool_t           ATTR_b_const    
+ * b_volatile       bool_t           ATTR_b_volatile 
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cTypeInfo signature: nTECSInfo_sTypeInfo context:task
+ *   ER             cTypeInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cTypeInfo_getNameLength( );
+ *   uint32_t       cTypeInfo_getSize( );
+ *   int8_t         cTypeInfo_getKind( );
+ *   uint32_t       cTypeInfo_getNType( );
+ *   ER             cTypeInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   uint32_t       cTypeInfo_getNMember( );
+ *   ER             cTypeInfo_getMemberInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_ref_desc()      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tPtrTypeInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTypeInfo
+ * entry port: eTypeInfo
+ * signature:  nTECSInfo_sTypeInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getName
+ * name:         eTypeInfo_getName
+ * global_name:  nTECSInfo_tPtrTypeInfo_eTypeInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNameLength
+ * name:         eTypeInfo_getNameLength
+ * global_name:  nTECSInfo_tPtrTypeInfo_eTypeInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eTypeInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getSize
+ * name:         eTypeInfo_getSize
+ * global_name:  nTECSInfo_tPtrTypeInfo_eTypeInfo_getSize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getSize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return ATTR_size;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getKind
+ * name:         eTypeInfo_getKind
+ * global_name:  nTECSInfo_tPtrTypeInfo_eTypeInfo_getKind
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+int8_t
+eTypeInfo_getKind(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return TECSTypeKind_PtrType;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNType
+ * name:         eTypeInfo_getNType
+ * global_name:  nTECSInfo_tPtrTypeInfo_eTypeInfo_getNType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNType(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return 1;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getTypeInfo
+ * name:         eTypeInfo_getTypeInfo
+ * global_name:  nTECSInfo_tPtrTypeInfo_eTypeInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  *desc = cTypeInfo_refer_to_descriptor();
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNMember
+ * name:         eTypeInfo_getNMember
+ * global_name:  nTECSInfo_tPtrTypeInfo_eTypeInfo_getNMember
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNMember(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getMemberInfo
+ * name:         eTypeInfo_getMemberInfo
+ * global_name:  nTECSInfo_tPtrTypeInfo_eTypeInfo_getMemberInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getMemberInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tRawEntryDescriptorInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tRawEntryDescriptorInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tRawEntryDescriptorInfo.c	(revision 374)
@@ -0,0 +1,75 @@
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * size             int_t            ATTR_size       
+ * rawEntryDescriptor void**           ATTR_rawEntryDescriptor
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include "nTECSInfo_tRawEntryDescriptorInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eRawEntryDescriptor
+ * entry port: eRawEntryDescriptor
+ * signature:  nTECSInfo_sRawEntryDescriptorInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eRawEntryDescriptor_getNRawEntryDescriptorInfo
+ * name:         eRawEntryDescriptor_getNRawEntryDescriptorInfo
+ * global_name:  nTECSInfo_tRawEntryDescriptorInfo_eRawEntryDescriptor_getNRawEntryDescriptorInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eRawEntryDescriptor_getNRawEntryDescriptorInfo(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eRawEntryDescriptor_getRawDescriptor
+ * name:         eRawEntryDescriptor_getRawDescriptor
+ * global_name:  nTECSInfo_tRawEntryDescriptorInfo_eRawEntryDescriptor_getRawDescriptor
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eRawEntryDescriptor_getRawDescriptor(CELLIDX idx, int_t ith, void** rawDesc)
+{
+	CELLCB	*p_cellcb;
+  ER      ercd = E_OK;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( 0 <= ith && ith < ATTR_size ){
+      *rawDesc = ATTR_rawEntryDescriptor[ ith ];
+  }
+  else {
+      ercd = E_ID;
+  }
+  return ercd;
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tRegionInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tRegionInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tRegionInfo.c	(revision 374)
@@ -0,0 +1,231 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char*            ATTR_name       
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cCellInfo signature: nTECSInfo_sCellInfo context:task optional:true
+ *   bool_t     is_cCellInfo_joined(int subscript)        check if joined
+ *   ER             cCellInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cCellInfo_getNameLength( subscript );
+ *   void           cCellInfo_getCelltypeInfo( subscript, Descriptor( nTECSInfo_sCelltypeInfo )* desc );
+ *   void           cCellInfo_getCBP( subscript, void** cbp );
+ *   void           cCellInfo_getINIBP( subscript, void** inibp );
+ *       subscript:  0...(NCP_cCellInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sCellInfo ) cCellInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sCellInfo ) cCellInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ * call port: cRegionInfo signature: nTECSInfo_sRegionInfo context:task optional:true
+ *   bool_t     is_cRegionInfo_joined(int subscript)        check if joined
+ *   ER             cRegionInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cRegionInfo_getNameLength( subscript );
+ *   uint32_t       cRegionInfo_getNCell( subscript );
+ *   ER             cRegionInfo_getCellInfo( subscript, uint32_t ith, Descriptor( nTECSInfo_sCellInfo )* des );
+ *   uint32_t       cRegionInfo_getNRegion( subscript );
+ *   ER             cRegionInfo_getRegionInfo( subscript, uint32_t ith, Descriptor( nTECSInfo_sRegionInfo )* des );
+ *       subscript:  0...(NCP_cRegionInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sRegionInfo ) cRegionInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sRegionInfo ) cRegionInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tRegionInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eRegionInfo
+ * entry port: eRegionInfo
+ * signature:  nTECSInfo_sRegionInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eRegionInfo_getName
+ * name:         eRegionInfo_getName
+ * global_name:  nTECSInfo_tRegionInfo_eRegionInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eRegionInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eRegionInfo_getNameLength
+ * name:         eRegionInfo_getNameLength
+ * global_name:  nTECSInfo_tRegionInfo_eRegionInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eRegionInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eRegionInfo_getNCell
+ * name:         eRegionInfo_getNCell
+ * global_name:  nTECSInfo_tRegionInfo_eRegionInfo_getNCell
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eRegionInfo_getNCell(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return NCP_cCellInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eRegionInfo_getCellInfo
+ * name:         eRegionInfo_getCellInfo
+ * global_name:  nTECSInfo_tRegionInfo_eRegionInfo_getCellInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eRegionInfo_getCellInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sCellInfo )* des)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *des = cCellInfo_refer_to_descriptor( ith );
+}
+
+/* #[<ENTRY_FUNC>]# eRegionInfo_getNRegion
+ * name:         eRegionInfo_getNRegion
+ * global_name:  nTECSInfo_tRegionInfo_eRegionInfo_getNRegion
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eRegionInfo_getNRegion(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return NCP_cRegionInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eRegionInfo_getRegionInfo
+ * name:         eRegionInfo_getRegionInfo
+ * global_name:  nTECSInfo_tRegionInfo_eRegionInfo_getRegionInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eRegionInfo_getRegionInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sRegionInfo )* des)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *des = cRegionInfo_refer_to_descriptor( ith );
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tSignatureInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tSignatureInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tSignatureInfo.c	(revision 374)
@@ -0,0 +1,180 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char*            ATTR_name       
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cFunctionInfo signature: nTECSInfo_sFunctionInfo context:task optional:true
+ *   bool_t     is_cFunctionInfo_joined(int subscript)        check if joined
+ *   ER             cFunctionInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cFunctionInfo_getNameLength( subscript );
+ *   void           cFunctionInfo_getReturnTypeInfo( subscript, Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   uint32_t       cFunctionInfo_getNParam( subscript );
+ *   ER             cFunctionInfo_getParamInfo( subscript, uint32_t ith, Descriptor( nTECSInfo_sParamInfo )* param );
+ *       subscript:  0...(NCP_cFunctionInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sFunctionInfo ) cFunctionInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sFunctionInfo ) cFunctionInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tSignatureInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eSignatureInfo
+ * entry port: eSignatureInfo
+ * signature:  nTECSInfo_sSignatureInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eSignatureInfo_getName
+ * name:         eSignatureInfo_getName
+ * global_name:  nTECSInfo_tSignatureInfo_eSignatureInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSignatureInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSignatureInfo_getNameLength
+ * name:         eSignatureInfo_getNameLength
+ * global_name:  nTECSInfo_tSignatureInfo_eSignatureInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eSignatureInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+      /* çµç«¯æå­ (NULL) ãå«ã */
+}
+
+/* #[<ENTRY_FUNC>]# eSignatureInfo_getNFunction
+ * name:         eSignatureInfo_getNFunction
+ * global_name:  nTECSInfo_tSignatureInfo_eSignatureInfo_getNFunction
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eSignatureInfo_getNFunction(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return NCP_cFunctionInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eSignatureInfo_getFunctionInfo
+ * name:         eSignatureInfo_getFunctionInfo
+ * global_name:  nTECSInfo_tSignatureInfo_eSignatureInfo_getFunctionInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSignatureInfo_getFunctionInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sFunctionInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  *desc = cFunctionInfo_ref_desc( ith );
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tStructTypeInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tStructTypeInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tStructTypeInfo.c	(revision 374)
@@ -0,0 +1,270 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * typeKind         int8_t           ATTR_typeKind   
+ * size             uint32_t         ATTR_size       
+ * b_const          bool_t           ATTR_b_const    
+ * b_volatile       bool_t           ATTR_b_volatile 
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cVarDeclInfo signature: nTECSInfo_sVarDeclInfo context:task
+ *   ER             cVarDeclInfo_getName( subscript, char_t* name, int_t max_len );
+ *   uint16_t       cVarDeclInfo_getNameLength( subscript );
+ *   uint32_t       cVarDeclInfo_getOffset( subscript );
+ *   void           cVarDeclInfo_getTypeInfo( subscript, Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   void           cVarDeclInfo_getSizeIsExpr( subscript, char_t* expr_str, int32_t max_len );
+ *   ER             cVarDeclInfo_getSizeIs( subscript, uint32_t* size, const void* p_cb );
+ *       subscript:  0...(NCP_cVarDeclInfo-1)
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sVarDeclInfo ) cVarDeclInfo_refer_to_descriptor( int_t subscript );
+ *      Descriptor( nTECSInfo_sVarDeclInfo ) cVarDeclInfo_ref_desc( int_t subscript )      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tStructTypeInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTypeInfo
+ * entry port: eTypeInfo
+ * signature:  nTECSInfo_sTypeInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getName
+ * name:         eTypeInfo_getName
+ * global_name:  nTECSInfo_tStructTypeInfo_eTypeInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNameLength
+ * name:         eTypeInfo_getNameLength
+ * global_name:  nTECSInfo_tStructTypeInfo_eTypeInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eTypeInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+      /* çµç«¯æå­ (NULL) ãå«ã */
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getSize
+ * name:         eTypeInfo_getSize
+ * global_name:  nTECSInfo_tStructTypeInfo_eTypeInfo_getSize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getSize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return ATTR_size;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getKind
+ * name:         eTypeInfo_getKind
+ * global_name:  nTECSInfo_tStructTypeInfo_eTypeInfo_getKind
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+int8_t
+eTypeInfo_getKind(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return TECSTypeKind_StructType;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNType
+ * name:         eTypeInfo_getNType
+ * global_name:  nTECSInfo_tStructTypeInfo_eTypeInfo_getNType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNType(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return NCP_cVarDeclInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getTypeInfo
+ * name:         eTypeInfo_getTypeInfo
+ * global_name:  nTECSInfo_tStructTypeInfo_eTypeInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  // *desc = cTypeInfo_refer_to_descriptor( ith );
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNMember
+ * name:         eTypeInfo_getNMember
+ * global_name:  nTECSInfo_tStructTypeInfo_eTypeInfo_getNMember
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNMember(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return NCP_cVarDeclInfo;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getMemberInfo
+ * name:         eTypeInfo_getMemberInfo
+ * global_name:  nTECSInfo_tStructTypeInfo_eTypeInfo_getMemberInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getMemberInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( ith >= NCP_cVarDeclInfo )
+      ercd = E_NOEXS;
+  else
+      *desc = cVarDeclInfo_refer_to_descriptor( ith );
+
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTECSInfoAccessor.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTECSInfoAccessor.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTECSInfoAccessor.c	(revision 374)
@@ -0,0 +1,1130 @@
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * NAME_LEN         int16_t          ATTR_NAME_LEN   
+ * name             char_t*          VAR_name        
+ * name2            char_t*          VAR_name2       
+ * selectedCbp      int8_t*          VAR_selectedCbp 
+ * selectedInibp    int8_t*          VAR_selectedInibp
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cTECSInfo signature: nTECSInfo_sTECSInfo context:task
+ *   ER             cTECSInfo_findNamespace( const char_t* namespace_path, Descriptor( nTECSInfo_sNamespaceInfo )* NSdesc );
+ *   ER             cTECSInfo_findRegion( const char_t* namespace_path, Descriptor( nTECSInfo_sRegionInfo )* RGNdesc );
+ *   ER             cTECSInfo_findSignature( const char_t* namespace_path, Descriptor( nTECSInfo_sSignatureInfo )* SIGdesc );
+ *   ER             cTECSInfo_findCelltype( const char_t* namespace_path, Descriptor( nTECSInfo_sCelltypeInfo )* CTdesc );
+ *   ER             cTECSInfo_findCell( const char_t* namespace_path, Descriptor( nTECSInfo_sCellInfo )* CELLdesc );
+ * call port: cNSInfo signature: nTECSInfo_sNamespaceInfo context:task optional:true
+ *   bool_t     is_cNSInfo_joined()                     check if joined
+ *   ER             cNSInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cNSInfo_getNameLength( );
+ *   uint32_t       cNSInfo_getNNamespace( );
+ *   ER             cNSInfo_getNamespaceInfo( uint32_t ith, Descriptor( nTECSInfo_sNamespaceInfo )* des );
+ *   uint32_t       cNSInfo_getNSignature( );
+ *   ER             cNSInfo_getSignatureInfo( uint32_t ith, Descriptor( nTECSInfo_sSignatureInfo )* des );
+ *   uint32_t       cNSInfo_getNCelltype( );
+ *   ER             cNSInfo_getCelltypeInfo( uint32_t ith, Descriptor( nTECSInfo_sCelltypeInfo )* des );
+ *   [dynamic, optional]
+ *      void           cNSInfo_set_descriptor( Descriptor( nTECSInfo_sNamespaceInfo ) desc );
+ *      void           cNSInfo_unjoin(  );
+ * call port: cCelltypeInfo signature: nTECSInfo_sCelltypeInfo context:task optional:true
+ *   bool_t     is_cCelltypeInfo_joined()                     check if joined
+ *   ER             cCelltypeInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cCelltypeInfo_getNameLength( );
+ *   uint32_t       cCelltypeInfo_getNAttr( );
+ *   ER             cCelltypeInfo_getAttrInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNVar( );
+ *   ER             cCelltypeInfo_getVarInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNCall( );
+ *   ER             cCelltypeInfo_getCallInfo( uint32_t ith, Descriptor( nTECSInfo_sCallInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNEntry( );
+ *   ER             cCelltypeInfo_getEntryInfo( uint32_t ith, Descriptor( nTECSInfo_sEntryInfo )* desc );
+ *   bool_t         cCelltypeInfo_isSingleton( );
+ *   bool_t         cCelltypeInfo_isIDX_is_ID( );
+ *   uint32_t       cCelltypeInfo_sizeOfCB( );
+ *   uint32_t       cCelltypeInfo_sizeOfINIB( );
+ *   [dynamic, optional]
+ *      void           cCelltypeInfo_set_descriptor( Descriptor( nTECSInfo_sCelltypeInfo ) desc );
+ *      void           cCelltypeInfo_unjoin(  );
+ * call port: cAttrInfo signature: nTECSInfo_sVarDeclInfo context:task optional:true
+ *   bool_t     is_cAttrInfo_joined()                     check if joined
+ *   ER             cAttrInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cAttrInfo_getNameLength( );
+ *   uint32_t       cAttrInfo_getOffset( );
+ *   void           cAttrInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   void           cAttrInfo_getSizeIsExpr( char_t* expr_str, int32_t max_len );
+ *   ER             cAttrInfo_getSizeIs( uint32_t* size, const void* p_cb );
+ *   [dynamic, optional]
+ *      void           cAttrInfo_set_descriptor( Descriptor( nTECSInfo_sVarDeclInfo ) desc );
+ *      void           cAttrInfo_unjoin(  );
+ * call port: cVarInfo signature: nTECSInfo_sVarDeclInfo context:task optional:true
+ *   bool_t     is_cVarInfo_joined()                     check if joined
+ *   ER             cVarInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cVarInfo_getNameLength( );
+ *   uint32_t       cVarInfo_getOffset( );
+ *   void           cVarInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   void           cVarInfo_getSizeIsExpr( char_t* expr_str, int32_t max_len );
+ *   ER             cVarInfo_getSizeIs( uint32_t* size, const void* p_cb );
+ *   [dynamic, optional]
+ *      void           cVarInfo_set_descriptor( Descriptor( nTECSInfo_sVarDeclInfo ) desc );
+ *      void           cVarInfo_unjoin(  );
+ * call port: cTypeInfo signature: nTECSInfo_sTypeInfo context:task optional:true
+ *   bool_t     is_cTypeInfo_joined()                     check if joined
+ *   ER             cTypeInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cTypeInfo_getNameLength( );
+ *   uint32_t       cTypeInfo_getSize( );
+ *   int8_t         cTypeInfo_getKind( );
+ *   uint32_t       cTypeInfo_getNType( );
+ *   ER             cTypeInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   uint32_t       cTypeInfo_getNMember( );
+ *   ER             cTypeInfo_getMemberInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   [dynamic, optional]
+ *      void           cTypeInfo_set_descriptor( Descriptor( nTECSInfo_sTypeInfo ) desc );
+ *      void           cTypeInfo_unjoin(  );
+ * call port: cRegionInfo signature: nTECSInfo_sRegionInfo context:task optional:true
+ *   bool_t     is_cRegionInfo_joined()                     check if joined
+ *   ER             cRegionInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cRegionInfo_getNameLength( );
+ *   uint32_t       cRegionInfo_getNCell( );
+ *   ER             cRegionInfo_getCellInfo( uint32_t ith, Descriptor( nTECSInfo_sCellInfo )* des );
+ *   uint32_t       cRegionInfo_getNRegion( );
+ *   ER             cRegionInfo_getRegionInfo( uint32_t ith, Descriptor( nTECSInfo_sRegionInfo )* des );
+ *   [dynamic, optional]
+ *      void           cRegionInfo_set_descriptor( Descriptor( nTECSInfo_sRegionInfo ) desc );
+ *      void           cRegionInfo_unjoin(  );
+ * call port: cCellInfo signature: nTECSInfo_sCellInfo context:task optional:true
+ *   bool_t     is_cCellInfo_joined()                     check if joined
+ *   ER             cCellInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cCellInfo_getNameLength( );
+ *   void           cCellInfo_getCelltypeInfo( Descriptor( nTECSInfo_sCelltypeInfo )* desc );
+ *   void           cCellInfo_getCBP( void** cbp );
+ *   void           cCellInfo_getINIBP( void** inibp );
+ *   [dynamic, optional]
+ *      void           cCellInfo_set_descriptor( Descriptor( nTECSInfo_sCellInfo ) desc );
+ *      void           cCellInfo_unjoin(  );
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tTECSInfoAccessor_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eSelector
+ * entry port: eSelector
+ * signature:  nTECSInfo_sAccessor
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eSelector_selectNamespaceInfoByName
+ * name:         eSelector_selectNamespaceInfoByName
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectNamespaceInfoByName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectNamespaceInfoByName(CELLIDX idx, const char_t* namespacePath)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sNamespaceInfo ) NSdesc;
+    if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+  /* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  ercd = cTECSInfo_findNamespace( namespacePath, &NSdesc );
+  if( ercd == E_OK ){
+      cNSInfo_set_descriptor( NSdesc );
+  }
+  else{
+      cNSInfo_unjoin();
+  }
+
+  return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCelltypeInfoByName
+ * name:         eSelector_selectCelltypeInfoByName
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectCelltypeInfoByName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCelltypeInfoByName(CELLIDX idx, const char_t* namespacePath)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sCelltypeInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  ercd = cTECSInfo_findCelltype( namespacePath, &desc );
+  if( ercd == E_OK ){
+      cCelltypeInfo_set_descriptor( desc );
+  }
+  else{
+      cCelltypeInfo_unjoin();
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectSignatureInfoByName
+ * name:         eSelector_selectSignatureInfoByName
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectSignatureInfoByName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectSignatureInfoByName(CELLIDX idx, const char_t* namespacePath)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectRegionInfoByName
+ * name:         eSelector_selectRegionInfoByName
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectRegionInfoByName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectRegionInfoByName(CELLIDX idx, const char_t* regionPath)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCellInfoByName
+ * name:         eSelector_selectCellInfoByName
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectCellInfoByName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCellInfoByName(CELLIDX idx, const char_t* cellPath)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedNamespaceInfo
+ * name:         eSelector_getSelectedNamespaceInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedNamespaceInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedNamespaceInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* num_celltype, int_t* num_signature)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCelltypeInfo
+ * name:         eSelector_selectCelltypeInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectCelltypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCelltypeInfo(CELLIDX idx, int_t i)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectSignatureInfo
+ * name:         eSelector_selectSignatureInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectSignatureInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectSignatureInfo(CELLIDX idx, int_t i)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCelltypeInfo
+ * name:         eSelector_getSelectedCelltypeInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedCelltypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCelltypeInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* num_attr, int_t* num_var, int_t* num_call, int_t* num_entry)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCallInfo
+ * name:         eSelector_selectCallInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectCallInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCallInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectEntryInfo
+ * name:         eSelector_selectEntryInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectEntryInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectEntryInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectAttrInfo
+ * name:         eSelector_selectAttrInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectAttrInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectAttrInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectVarInfo
+ * name:         eSelector_selectVarInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectVarInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectVarInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedAttrInfo
+ * name:         eSelector_getSelectedAttrInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedAttrInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedAttrInfo(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSizeIsExprOfAttr
+ * name:         eSelector_getSizeIsExprOfAttr
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSizeIsExprOfAttr
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eSelector_getSizeIsExprOfAttr(CELLIDX idx, char_t* expr_str, int32_t max_len)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectTypeInfoOfAttr
+ * name:         eSelector_selectTypeInfoOfAttr
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectTypeInfoOfAttr
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectTypeInfoOfAttr(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedVarInfo
+ * name:         eSelector_getSelectedVarInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedVarInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedVarInfo(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSizeIsExprOfVar
+ * name:         eSelector_getSizeIsExprOfVar
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSizeIsExprOfVar
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eSelector_getSizeIsExprOfVar(CELLIDX idx, char_t* expr_str, int32_t max_len)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectTypeInfoOfVar
+ * name:         eSelector_selectTypeInfoOfVar
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectTypeInfoOfVar
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectTypeInfoOfVar(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCallInfo
+ * name:         eSelector_getSelectedCallInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedCallInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCallInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* array_size)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectSignatureOfCall
+ * name:         eSelector_selectSignatureOfCall
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectSignatureOfCall
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectSignatureOfCall(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCallSpecifierInfo
+ * name:         eSelector_getSelectedCallSpecifierInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedCallSpecifierInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCallSpecifierInfo(CELLIDX idx, bool_t* b_optional, bool_t* b_dynamic, bool_t* b_ref_desc, bool_t* b_omit)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCallInternalInfo
+ * name:         eSelector_getSelectedCallInternalInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedCallInternalInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCallInternalInfo(CELLIDX idx, bool_t* b_allocator_port, bool_t* b_require_port)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCallLocationInfo
+ * name:         eSelector_getSelectedCallLocationInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedCallLocationInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCallLocationInfo(CELLIDX idx, uint32_t* offset, int8_t* place)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCallOptimizeInfo
+ * name:         eSelector_getSelectedCallOptimizeInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedCallOptimizeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCallOptimizeInfo(CELLIDX idx, bool_t* b_VMT_useless, bool_t* b_skelton_useless, bool_t* b_cell_unique)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedEntryInfo
+ * name:         eSelector_getSelectedEntryInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedEntryInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedEntryInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* array_size)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectSignatureOfEntry
+ * name:         eSelector_selectSignatureOfEntry
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectSignatureOfEntry
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectSignatureOfEntry(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedEntryInlineInfo
+ * name:         eSelector_getSelectedEntryInlineInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedEntryInlineInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedEntryInlineInfo(CELLIDX idx, bool_t* b_inline)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedSignatureInfo
+ * name:         eSelector_getSelectedSignatureInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedSignatureInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedSignatureInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* num_function)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selecFunctionInfoByIndex
+ * name:         eSelector_selecFunctionInfoByIndex
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selecFunctionInfoByIndex
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selecFunctionInfoByIndex(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedFunctionInfo
+ * name:         eSelector_getSelectedFunctionInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedFunctionInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedFunctionInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* num_args)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectTypeInfoOfReturn
+ * name:         eSelector_selectTypeInfoOfReturn
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectTypeInfoOfReturn
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectTypeInfoOfReturn(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedParamInfo
+ * name:         eSelector_getSelectedParamInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedParamInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedParamInfo(CELLIDX idx, char_t* name, int_t max_len, int8_t* dir)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectParamInfo
+ * name:         eSelector_selectParamInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectParamInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectParamInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectTypeInfoOfParam
+ * name:         eSelector_selectTypeInfoOfParam
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectTypeInfoOfParam
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectTypeInfoOfParam(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedTypeInfo
+ * name:         eSelector_getSelectedTypeInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedTypeInfo(CELLIDX idx, char_t* name, int_t max_len, int8_t* kind)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectTypeInfoOfType
+ * name:         eSelector_selectTypeInfoOfType
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectTypeInfoOfType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectTypeInfoOfType(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedRegionInfo
+ * name:         eSelector_getSelectedRegionInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelectedRegionInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedRegionInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* num_cell)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCellInfo
+ * name:         eSelector_selectCellInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectCellInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCellInfo(CELLIDX idx, int_t i)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelecteCellInfo
+ * name:         eSelector_getSelecteCellInfo
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getSelecteCellInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelecteCellInfo(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCelltypeInfoOfCell
+ * name:         eSelector_selectCelltypeInfoOfCell
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_selectCelltypeInfoOfCell
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCelltypeInfoOfCell(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getAttrValue
+ * name:         eSelector_getAttrValue
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getAttrValue
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getAttrValue(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getAttrSizeIsValue
+ * name:         eSelector_getAttrSizeIsValue
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getAttrSizeIsValue
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getAttrSizeIsValue(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getVarValue
+ * name:         eSelector_getVarValue
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getVarValue
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getVarValue(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getVarSizeIsValue
+ * name:         eSelector_getVarSizeIsValue
+ * global_name:  nTECSInfo_tTECSInfoAccessor_eSelector_getVarSizeIsValue
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getVarSizeIsValue(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTECSInfoSub.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTECSInfoSub.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTECSInfoSub.c	(revision 374)
@@ -0,0 +1,543 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name_len         int32_t          ATTR_name_len   
+ * path_len         int32_t          ATTR_path_len   
+ * name1            char_t*          VAR_name1       
+ * name2            char_t*          VAR_name2       
+ * path             char_t*          VAR_path        
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cNamespaceInfo signature: nTECSInfo_sNamespaceInfo context:task
+ *   ER             cNamespaceInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cNamespaceInfo_getNameLength( );
+ *   uint32_t       cNamespaceInfo_getNNamespace( );
+ *   ER             cNamespaceInfo_getNamespaceInfo( uint32_t ith, Descriptor( nTECSInfo_sNamespaceInfo )* des );
+ *   uint32_t       cNamespaceInfo_getNSignature( );
+ *   ER             cNamespaceInfo_getSignatureInfo( uint32_t ith, Descriptor( nTECSInfo_sSignatureInfo )* des );
+ *   uint32_t       cNamespaceInfo_getNCelltype( );
+ *   ER             cNamespaceInfo_getCelltypeInfo( uint32_t ith, Descriptor( nTECSInfo_sCelltypeInfo )* des );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sNamespaceInfo ) cNamespaceInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sNamespaceInfo ) cNamespaceInfo_ref_desc()      (same as above; abbreviated version);
+ * call port: cRegionInfo signature: nTECSInfo_sRegionInfo context:task
+ *   ER             cRegionInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cRegionInfo_getNameLength( );
+ *   uint32_t       cRegionInfo_getNCell( );
+ *   ER             cRegionInfo_getCellInfo( uint32_t ith, Descriptor( nTECSInfo_sCellInfo )* des );
+ *   uint32_t       cRegionInfo_getNRegion( );
+ *   ER             cRegionInfo_getRegionInfo( uint32_t ith, Descriptor( nTECSInfo_sRegionInfo )* des );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sRegionInfo ) cRegionInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sRegionInfo ) cRegionInfo_ref_desc()      (same as above; abbreviated version);
+ * call port: cNamespaceInfoTemp signature: nTECSInfo_sNamespaceInfo context:task optional:true
+ *   bool_t     is_cNamespaceInfoTemp_joined()                     check if joined
+ *   ER             cNamespaceInfoTemp_getName( char_t* name, int_t max_len );
+ *   uint16_t       cNamespaceInfoTemp_getNameLength( );
+ *   uint32_t       cNamespaceInfoTemp_getNNamespace( );
+ *   ER             cNamespaceInfoTemp_getNamespaceInfo( uint32_t ith, Descriptor( nTECSInfo_sNamespaceInfo )* des );
+ *   uint32_t       cNamespaceInfoTemp_getNSignature( );
+ *   ER             cNamespaceInfoTemp_getSignatureInfo( uint32_t ith, Descriptor( nTECSInfo_sSignatureInfo )* des );
+ *   uint32_t       cNamespaceInfoTemp_getNCelltype( );
+ *   ER             cNamespaceInfoTemp_getCelltypeInfo( uint32_t ith, Descriptor( nTECSInfo_sCelltypeInfo )* des );
+ *   [dynamic, optional]
+ *      void           cNamespaceInfoTemp_set_descriptor( Descriptor( nTECSInfo_sNamespaceInfo ) desc );
+ *      void           cNamespaceInfoTemp_unjoin(  );
+ * call port: cRegionInfoTemp signature: nTECSInfo_sRegionInfo context:task optional:true
+ *   bool_t     is_cRegionInfoTemp_joined()                     check if joined
+ *   ER             cRegionInfoTemp_getName( char_t* name, int_t max_len );
+ *   uint16_t       cRegionInfoTemp_getNameLength( );
+ *   uint32_t       cRegionInfoTemp_getNCell( );
+ *   ER             cRegionInfoTemp_getCellInfo( uint32_t ith, Descriptor( nTECSInfo_sCellInfo )* des );
+ *   uint32_t       cRegionInfoTemp_getNRegion( );
+ *   ER             cRegionInfoTemp_getRegionInfo( uint32_t ith, Descriptor( nTECSInfo_sRegionInfo )* des );
+ *   [dynamic, optional]
+ *      void           cRegionInfoTemp_set_descriptor( Descriptor( nTECSInfo_sRegionInfo ) desc );
+ *      void           cRegionInfoTemp_unjoin(  );
+ * call port: cCelltypeInfoTemp signature: nTECSInfo_sCelltypeInfo context:task optional:true
+ *   bool_t     is_cCelltypeInfoTemp_joined()                     check if joined
+ *   ER             cCelltypeInfoTemp_getName( char_t* name, int_t max_len );
+ *   uint16_t       cCelltypeInfoTemp_getNameLength( );
+ *   uint32_t       cCelltypeInfoTemp_getNAttr( );
+ *   ER             cCelltypeInfoTemp_getAttrInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   uint32_t       cCelltypeInfoTemp_getNVar( );
+ *   ER             cCelltypeInfoTemp_getVarInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   uint32_t       cCelltypeInfoTemp_getNCall( );
+ *   ER             cCelltypeInfoTemp_getCallInfo( uint32_t ith, Descriptor( nTECSInfo_sCallInfo )* desc );
+ *   uint32_t       cCelltypeInfoTemp_getNEntry( );
+ *   ER             cCelltypeInfoTemp_getEntryInfo( uint32_t ith, Descriptor( nTECSInfo_sEntryInfo )* desc );
+ *   bool_t         cCelltypeInfoTemp_isSingleton( );
+ *   bool_t         cCelltypeInfoTemp_isIDX_is_ID( );
+ *   uint32_t       cCelltypeInfoTemp_sizeOfCB( );
+ *   uint32_t       cCelltypeInfoTemp_sizeOfINIB( );
+ *   [dynamic, optional]
+ *      void           cCelltypeInfoTemp_set_descriptor( Descriptor( nTECSInfo_sCelltypeInfo ) desc );
+ *      void           cCelltypeInfoTemp_unjoin(  );
+ * call port: cCellInfoTemp signature: nTECSInfo_sCellInfo context:task optional:true
+ *   bool_t     is_cCellInfoTemp_joined()                     check if joined
+ *   ER             cCellInfoTemp_getName( char_t* name, int_t max_len );
+ *   uint16_t       cCellInfoTemp_getNameLength( );
+ *   uint32_t       cCellInfoTemp_getNRawEntryDescriptorInfo( );
+ *   ER             cCellInfoTemp_getRawEntryDescriptorInfo( int_t index, Descriptor( nTECSInfo_sRawEntryDescriptorInfo )* desc );
+ *   void           cCellInfoTemp_getCelltypeInfo( Descriptor( nTECSInfo_sCelltypeInfo )* desc );
+ *   void           cCellInfoTemp_getCBP( void** cbp );
+ *   void           cCellInfoTemp_getINIBP( void** inibp );
+ *   [dynamic, optional]
+ *      void           cCellInfoTemp_set_descriptor( Descriptor( nTECSInfo_sCellInfo ) desc );
+ *      void           cCellInfoTemp_unjoin(  );
+ * call port: cEntryInfoTemp signature: nTECSInfo_sEntryInfo context:task optional:true
+ *   bool_t     is_cEntryInfoTemp_joined()                     check if joined
+ *   ER             cEntryInfoTemp_getName( char_t* name, int_t max_len );
+ *   uint16_t       cEntryInfoTemp_getNameLength( );
+ *   void           cEntryInfoTemp_getSignatureInfo( Descriptor( nTECSInfo_sSignatureInfo )* desc );
+ *   uint32_t       cEntryInfoTemp_getArraySize( );
+ *   bool_t         cEntryInfoTemp_isInline( );
+ *   [dynamic, optional]
+ *      void           cEntryInfoTemp_set_descriptor( Descriptor( nTECSInfo_sEntryInfo ) desc );
+ *      void           cEntryInfoTemp_unjoin(  );
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tTECSInfoSub_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+static ER
+separate_basename( const char_t **namespace_path, char_t **basename );
+
+
+/*
+ * VAR_name1 â¦ å¼æ°ã¨ãã¦æ¸¡ããããã®ãã³ãã¼ããããã ããéä¸­ã® '::' ã '\0' ã«æ¸ãæãããã¨ã¯ããã
+ * VAR_name2 â¦ é½åº¦ä¸æ¸ããã¦ä½¿ç¨ãã
+ */
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTECSInfo
+ * entry port: eTECSInfo
+ * signature:  nTECSInfo_sTECSInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findNamespace
+ * name:         eTECSInfo_findNamespace
+ * global_name:  nTECSInfo_tTECSInfoSub_eTECSInfo_findNamespace
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTECSInfo_findNamespace(const char_t* namespace_path, Descriptor( nTECSInfo_sNamespaceInfo )* nsDesc)
+{
+    const char_t  *p = namespace_path;
+    char_t  *p2;
+    Descriptor( nTECSInfo_sNamespaceInfo ) desc, desc2;
+    int     i;
+    int     n;
+
+    if( p[ 0 ] == ':' && p[ 1 ] == ':' ){
+        p += 2;
+    }
+    desc = cNamespaceInfo_refer_to_descriptor(); // root name space
+    while( *p != '\0' ){
+        p2 = VAR_name1;
+        for( i = 0; i < ATTR_name_len; i++ ){
+            if( *p == '\0' ||  *p == ':' ){
+                *p2 = '\0';
+                break;
+            }
+            *p2++ = *p++;
+        }
+        if( i == ATTR_name_len )
+            return E_NORES;
+
+        desc2 = desc;
+        cNamespaceInfoTemp_set_descriptor( desc2 );
+        n = cNamespaceInfoTemp_getNNamespace( );
+        for( i = 0; i < n; i++ ){
+            cNamespaceInfoTemp_set_descriptor( desc2 );
+            cNamespaceInfoTemp_getNamespaceInfo( i, &desc );
+            cNamespaceInfoTemp_set_descriptor( desc );
+            cNamespaceInfoTemp_getName( VAR_name2, ATTR_name_len );
+            if( strcmp( VAR_name1, VAR_name2 ) == 0 )
+                break;
+        }
+        if( i == n )
+            return E_NOID;
+
+        if( p[ 0 ] == ':' ){
+            if( p[ 1 ] == ':' )
+                p += 2;
+            else
+                return E_OBJ;
+        }
+    }
+    *nsDesc = desc;
+    return E_OK;
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findRegion
+ * name:         eTECSInfo_findRegion
+ * global_name:  nTECSInfo_tTECSInfoSub_eTECSInfo_findRegion
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTECSInfo_findRegion(const char_t* namespace_path, Descriptor( nTECSInfo_sRegionInfo )* regionDesc)
+{
+    const char_t  *p = namespace_path;
+    char_t  *p2;
+    Descriptor( nTECSInfo_sRegionInfo ) desc, desc2;
+    int     i;
+    int     n;
+
+    if( p[ 0 ] == ':' && p[ 1 ] == ':' ){
+        p += 2;
+    }
+    desc = cRegionInfo_refer_to_descriptor();
+    while( *p != '\0' ){
+        p2 = VAR_name1;
+        for( i = 0; i < ATTR_name_len; i++ ){
+            if( *p == '\0' ||  *p == ':' ){
+                *p2 = '\0';
+                break;
+            }
+            *p2++ = *p++;
+        }
+        if( i == ATTR_name_len )
+            return E_NORES;
+
+        desc2 = desc;
+        cRegionInfoTemp_set_descriptor( desc2 );
+        n = cRegionInfoTemp_getNRegion( );
+        for( i = 0; i < n; i++ ){
+            // syslog_3( LOG_NOTICE, "tTECSInfo.eTECSInfo.findRegion 2 %s i=%d n=%d", VAR_name1, i, n );
+            cRegionInfoTemp_set_descriptor( desc2 );
+            cRegionInfoTemp_getRegionInfo( i, &desc );
+            cRegionInfoTemp_set_descriptor( desc );
+            cRegionInfoTemp_getName( VAR_name2, ATTR_name_len );
+            if( strcmp( VAR_name1, VAR_name2 ) == 0 )
+                break;
+        }
+        if( i == n )
+            return E_NOID;
+
+        if( p[ 0 ] == ':' ){
+            if( p[ 1 ] == ':' )
+                p += 2;
+            else
+                return E_OBJ;
+        }
+    }
+    *regionDesc = desc;
+    return E_OK;
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findSignature
+ * name:         eTECSInfo_findSignature
+ * global_name:  nTECSInfo_tTECSInfoSub_eTECSInfo_findSignature
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTECSInfo_findSignature(const char_t* namespace_path, Descriptor( nTECSInfo_sSignatureInfo )* signatureDesc)
+{
+    Descriptor( nTECSInfo_sNamespaceInfo ) nsDesc;
+    Descriptor( nTECSInfo_sSignatureInfo ) desc;
+    ER        ercd;
+    char_t    *pname;
+    int       i, n;
+
+    ercd = separate_basename( &namespace_path, &pname );
+    if( ercd != E_OK )
+        return ercd;
+
+    ercd = eTECSInfo_findNamespace( namespace_path, &nsDesc);
+    if( ercd != E_OK )
+        return ercd;
+
+    // syslog_0( LOG_NOTICE, "tTECSInfo.eTECSInfo.findCell 4" );
+    cNamespaceInfoTemp_set_descriptor( nsDesc );
+    n = cNamespaceInfoTemp_getNSignature( );
+    for( i = 0; i < n; i++ ){
+        cNamespaceInfoTemp_getSignatureInfo( i, &desc );
+        cSignatureInfoTemp_set_descriptor( desc );
+        cSignatureInfoTemp_getName( VAR_name1, ATTR_name_len );
+        if( strcmp( pname, VAR_name1 ) == 0 )
+            break;
+    }
+    // syslog_0( LOG_NOTICE, "tTECSInfo.eTECSInfo.findCell 5" );
+    if( i == n )
+        return E_NOEXS;
+
+    *signatureDesc = desc;
+    return E_OK;
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findCelltype
+ * name:         eTECSInfo_findCelltype
+ * global_name:  nTECSInfo_tTECSInfoSub_eTECSInfo_findCelltype
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTECSInfo_findCelltype(const char_t* namespace_path, Descriptor( nTECSInfo_sCelltypeInfo )* celltypeDesc)
+{
+  return E_NOSPT;
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findCell
+ * name:         eTECSInfo_findCell
+ * global_name:  nTECSInfo_tTECSInfoSub_eTECSInfo_findCell
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTECSInfo_findCell(const char_t* namespace_path, Descriptor( nTECSInfo_sCellInfo )* cellDesc)
+{
+    char_t  *p, *pname;
+    Descriptor( nTECSInfo_sRegionInfo ) RegionDesc;
+    Descriptor( nTECSInfo_sCellInfo )   desc;
+    int     i, n, len;
+    ER      ercd;
+
+#if 0
+    // syslog_0( LOG_NOTICE, "tTECSInfo.eTECSInfo.findCell 1" );
+    len = strnlen( namespace_path, ATTR_path_len );
+    if( len >= ATTR_path_len ){
+        return E_NOMEM;
+    }
+    if( VAR_path != namespace_path )     // findRawEntryDescriptorInfo ããå¼ã°ããæãVAR_path ã«å
+¥ã£ã¦ããã®ã§ã³ãã¼ä¸è¦
+        strcpy( VAR_path, namespace_path );
+    p = &VAR_path[ len - 1 ];
+    while( p > VAR_path ){
+        if( *p == ':' )
+            break;
+        p--;
+    }
+    if( *p == ':' ){
+        p--;
+        if( p < VAR_path || *p != ':' )
+            return E_PAR;    // :: ã§ã¯ãªãã: ã§ãã£ã
+        if( p == VAR_path ){
+            namespace_path = "::";
+        }
+        else{
+            *p = '\0';
+            namespace_path = VAR_path;
+        }
+        pname = &p[2];
+    }
+    else{
+        namespace_path = "::";
+        pname = VAR_path;
+    }
+#endif
+    ercd = separate_basename( &namespace_path, &pname );
+    if( ercd != E_OK )
+        return ercd;
+
+    // syslog_2( LOG_NOTICE, "tTECSInfo.eTECSInfo.findCell 2 %s %s", namespace_path, pname );
+    
+    // syslog_0( LOG_NOTICE, "tTECSInfo.eTECSInfo.findCell 3" );
+    ercd = eTECSInfo_findRegion( namespace_path, &RegionDesc);
+    if( ercd != E_OK )
+        return ercd;
+
+    // syslog_0( LOG_NOTICE, "tTECSInfo.eTECSInfo.findCell 4" );
+    cRegionInfoTemp_set_descriptor( RegionDesc );
+    n = cRegionInfoTemp_getNCell( );
+    for( i = 0; i < n; i++ ){
+        cRegionInfoTemp_getCellInfo( i, &desc );
+        cCellInfoTemp_set_descriptor( desc );
+        cCellInfoTemp_getName( VAR_name1, ATTR_name_len );
+        if( strcmp( pname, VAR_name1 ) == 0 )
+            break;
+    }
+    // syslog_0( LOG_NOTICE, "tTECSInfo.eTECSInfo.findCell 5" );
+    if( i == n )
+        return E_NOEXS;
+
+    *cellDesc = desc;
+    return E_OK;
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findRawEntryDescriptor
+ * name:         eTECSInfo_findRawEntryDescriptor
+ * global_name:  nTECSInfo_tTECSInfoSub_eTECSInfo_findRawEntryDescriptor
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTECSInfo_findRawEntryDescriptor(const char_t* namespace_path, int_t ith, Descriptor( nTECSInfo_sRawEntryDescriptorInfo )* rawEntryDescDesc, Descriptor( nTECSInfo_sEntryInfo )* entryDesc)
+{
+    int_t  len;
+    Descriptor( nTECSInfo_sCelltypeInfo )  celltypeDesc;
+    Descriptor( nTECSInfo_sCellInfo )      cellDesc;
+    Descriptor( nTECSInfo_sEntryInfo )     entDesc;
+    char_t *p;
+    int_t  i, n;
+    ER     ercd;
+
+    len = strnlen( namespace_path, ATTR_path_len );
+    if( len >= ATTR_path_len ){
+        return E_NOMEM;
+    }
+    strcpy( VAR_path, namespace_path );
+    p = &VAR_path[len-1];
+    while( *p != '.' && p != &VAR_path[0] )
+        p--;
+    if( *p != '.' )
+        return E_PAR;    // '.' ãè¦ã¤ãããªã
+    *p = '\0';
+    ercd = eTECSInfo_findCell( VAR_path, &cellDesc);
+    if( ercd != E_OK )
+        return ercd;
+    cCellInfoTemp_set_descriptor( cellDesc );
+    cCellInfoTemp_getCelltypeInfo( &celltypeDesc  );
+    cCelltypeInfoTemp_set_descriptor( celltypeDesc );
+    n = cCelltypeInfoTemp_getNEntry();
+    p += 1;
+    //syslog_1( LOG_NOTICE, "tTECSInfo.eTECSInfo.findRawEntryDescriptor 4 n_entry=%d", n );
+    // dly_tsk( 10000 );
+    for( i = 0; i < n; i++ ){
+        ercd = cCelltypeInfoTemp_getEntryInfo( i, &entDesc ); // ã¨ã©ã¼ã¯ã¿ãªã
+        //syslog_2( LOG_NOTICE, "tTECSInfo.eTECSInfo.findRawEntryDescriptor 5 ercd=%d entDesc=%x", ercd, entDesc.vdes );
+        cEntryInfoTemp_set_descriptor( entDesc );
+        ercd = cEntryInfoTemp_getName( VAR_name1, ATTR_name_len );
+        //dly_tsk( 5 );
+        //syslog_4( LOG_NOTICE, "tTECSInfo.eTECSInfo.findRawEntryDescriptor 6 ercd=%d entDesc=%x nm=%s p=%s", ercd, entDesc.vdes, VAR_name1, p );
+        //dly_tsk( 5 );
+        if( ercd != E_OK )
+            return ercd;
+        if( strcmp( VAR_name1, p ) == 0 )
+            break;
+    }
+    if( i != n ){
+        cCellInfoTemp_getRawEntryDescriptorInfo( ith, rawEntryDescDesc );
+        *entryDesc = entDesc;
+    }
+    else{
+        ercd = E_NOEXS;
+    }
+    return ercd;
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findRawEntryDescriptor_unsafe
+ * name:         eTECSInfo_findRawEntryDescriptor_unsafe
+ * global_name:  nTECSInfo_tTECSInfoSub_eTECSInfo_findRawEntryDescriptor_unsafe
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTECSInfo_findRawEntryDescriptor_unsafe(const char_t* namespace_path, void** rawDesc)
+{
+    ER   ercd;
+    Descriptor( nTECSInfo_sRawEntryDescriptorInfo ) rawEntryDescDesc;
+    Descriptor( nTECSInfo_sEntryInfo ) entryDesc;
+    ercd = eTECSInfo_findRawEntryDescriptor(namespace_path, 0, &rawEntryDescDesc, &entryDesc);
+    if( ercd != E_OK )
+        return ercd;
+    cRawEntryDescriptorInfoTemp_set_descriptor( rawEntryDescDesc );
+    ercd = cRawEntryDescriptorInfoTemp_getRawDescriptor( 0, rawDesc );
+    return ercd;
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
+
+/*
+ * namespace_path ã VAR_path ã¸ã³ãã¼ãããã£ã¬ã¯ããªãã¹é¨ã¨ãªãã¸ã§ã¯ãåé¨ã«åå²ãã
+ * namespace_path  "::namespace::subnamespace::object_name"
+ * VAR_path        "::namespace::subnamespace\0:object_name"   ä¸çªå³ã® '::' ã '\0:' ã«ç½®ãæãã
+ * basename        "object_name" ã¸ã®ãã¤ã³ã¿ãè¿ã
+ */
+static ER
+separate_basename( const char_t **namespace_path, char_t **basename )
+{
+    int     i, len;
+    char_t  *p;
+    static const char_t *root_namespacepath = "::";
+
+    len = strnlen( *namespace_path, ATTR_path_len );
+    if( len >= ATTR_path_len ){
+        return E_NOMEM;
+    }
+    if( VAR_path != *namespace_path )     // findRawEntryDescriptorInfo ããå¼ã°ããæãVAR_path ã«å
+¥ã£ã¦ããã®ã§ã³ãã¼ä¸è¦
+        strcpy( VAR_path, *namespace_path );
+    p = &VAR_path[ len - 1 ];
+    while( p > VAR_path ){
+        if( *p == ':' )
+            break;
+        p--;
+    }
+    if( *p == ':' ){
+        p--;
+        if( p < VAR_path || *p != ':' )
+            return E_PAR;    // :: ã§ã¯ãªãã: ã§ãã£ã
+        if( p == VAR_path ){
+            *namespace_path = root_namespacepath;
+        }
+        else{
+            *p = '\0';
+            *namespace_path = VAR_path;
+        }
+        *basename = &p[2];
+    }
+    else{
+        *namespace_path = root_namespacepath;
+        *basename = VAR_path;
+    }
+    return  E_OK;
+}
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTECSInfo_inline.h
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTECSInfo_inline.h	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTECSInfo_inline.h	(revision 374)
@@ -0,0 +1,164 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+#ifndef nTECSInfo_tTECSInfo__INLINE_H
+#define nTECSInfo_tTECSInfo__INLINE_H
+
+/*
+ * This file was automatically generated by tecsgen.
+ * Move and rename like below before editing,
+ *   gen/tTECSInfo_inline_template.h => src/tTECSInfo_inline.h
+ * to avoid to be overwritten by tecsgen.
+ */
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cTECSInfo signature: nTECSInfo_sTECSInfo context:task
+ *   ER             cTECSInfo_findNamespace( const char_t* namespace_path, Descriptor( nTECSInfo_sNamespaceInfo )* nsDesc );
+ *   ER             cTECSInfo_findRegion( const char_t* namespace_path, Descriptor( nTECSInfo_sRegionInfo )* regionDesc );
+ *   ER             cTECSInfo_findSignature( const char_t* namespace_path, Descriptor( nTECSInfo_sSignatureInfo )* signatureDesc );
+ *   ER             cTECSInfo_findCelltype( const char_t* namespace_path, Descriptor( nTECSInfo_sCelltypeInfo )* celltypeDesc );
+ *   ER             cTECSInfo_findCell( const char_t* namespace_path, Descriptor( nTECSInfo_sCellInfo )* cellDesc );
+ *   ER             cTECSInfo_findRawEntryDescriptor( const char_t* namespace_path, Descriptor( nTECSInfo_sRawEntryDescriptorInfo )* rawEntryDescDesc, Descriptor( nTECSInfo_sEntryInfo )* entryDesc );
+ *   ER             cTECSInfo_findRawEntryDescriptor_unsafe( const char_t* namespace_path, void** rawDesc );
+ *
+ * #[</PREAMBLE>]# */
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTECSInfo
+ * entry port: eTECSInfo
+ * signature:  nTECSInfo_sTECSInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findNamespace
+ * name:         eTECSInfo_findNamespace
+ * global_name:  nTECSInfo_tTECSInfo_eTECSInfo_findNamespace
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER
+eTECSInfo_findNamespace(const char_t* namespace_path, Descriptor( nTECSInfo_sNamespaceInfo )* nsDesc)
+{
+    return cTECSInfo_findNamespace( namespace_path, nsDesc );
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findRegion
+ * name:         eTECSInfo_findRegion
+ * global_name:  nTECSInfo_tTECSInfo_eTECSInfo_findRegion
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER
+eTECSInfo_findRegion(const char_t* namespace_path, Descriptor( nTECSInfo_sRegionInfo )* regionDesc)
+{
+    return cTECSInfo_findRegion( namespace_path, regionDesc );
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findSignature
+ * name:         eTECSInfo_findSignature
+ * global_name:  nTECSInfo_tTECSInfo_eTECSInfo_findSignature
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER
+eTECSInfo_findSignature(const char_t* namespace_path, Descriptor( nTECSInfo_sSignatureInfo )* signatureDesc)
+{
+    return cTECSInfo_findSignature( namespace_path, signatureDesc );
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findCelltype
+ * name:         eTECSInfo_findCelltype
+ * global_name:  nTECSInfo_tTECSInfo_eTECSInfo_findCelltype
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER
+eTECSInfo_findCelltype(const char_t* namespace_path, Descriptor( nTECSInfo_sCelltypeInfo )* celltypeDesc)
+{
+  return cTECSInfo_findCelltype( namespace_path, celltypeDesc );
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findCell
+ * name:         eTECSInfo_findCell
+ * global_name:  nTECSInfo_tTECSInfo_eTECSInfo_findCell
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER
+eTECSInfo_findCell(const char_t* namespace_path, Descriptor( nTECSInfo_sCellInfo )* cellDesc)
+{
+  return cTECSInfo_findCell( namespace_path, cellDesc );
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findRawEntryDescriptor
+ * name:         eTECSInfo_findRawEntryDescriptor
+ * global_name:  nTECSInfo_tTECSInfo_eTECSInfo_findRawEntryDescriptor
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER
+eTECSInfo_findRawEntryDescriptor(const char_t* namespace_path, int_t ith, Descriptor( nTECSInfo_sRawEntryDescriptorInfo )* rawEntryDescDesc, Descriptor( nTECSInfo_sEntryInfo )* entryDesc)
+{
+    return cTECSInfo_findRawEntryDescriptor(namespace_path, ith, rawEntryDescDesc, entryDesc);
+}
+
+/* #[<ENTRY_FUNC>]# eTECSInfo_findRawEntryDescriptor_unsafe
+ * name:         eTECSInfo_findRawEntryDescriptor_unsafe
+ * global_name:  nTECSInfo_tTECSInfo_eTECSInfo_findRawEntryDescriptor_unsafe
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER
+eTECSInfo_findRawEntryDescriptor_unsafe(const char_t* namespace_path, void** rawDesc)
+{
+    return cTECSInfo_findRawEntryDescriptor_unsafe(namespace_path, rawDesc);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
+
+#endif /* nTECSInfo_tTECSInfo_INLINEH */
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTypeInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTypeInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tTypeInfo.c	(revision 374)
@@ -0,0 +1,217 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * typeKind         int8_t           ATTR_typeKind   
+ * bitSize          int32_t          ATTR_bitSize    
+ * b_const          bool_t           ATTR_b_const    
+ * b_volatile       bool_t           ATTR_b_volatile 
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cTypeInfo signature: nTECSInfo_sTypeInfo context:task optional:true
+ *   bool_t     is_cTypeInfo_joined()                     check if joined
+ *   ER             cTypeInfo_getName( char_t* name, int_t max_len );
+ *   void           cTypeInfo_getNameLength( uint16_t* len );
+ *   void           cTypeInfo_getSize( uint32_t* size );
+ *   void           cTypeInfo_getKind( int8_t* kind );
+ *   void           cTypeInfo_getNType( int32_t* num );
+ *   void           cTypeInfo_getTypeInfo( int32_t ith, Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_ref_desc()      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tTypeInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTypeInfo
+ * entry port: eTypeInfo
+ * signature:  nTECSInfo_sTypeInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getName
+ * name:         eTypeInfo_getName
+ * global_name:  nTECSInfo_tTypeInfo_eTypeInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNameLength
+ * name:         eTypeInfo_getNameLength
+ * global_name:  nTECSInfo_tTypeInfo_eTypeInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eTypeInfo_getNameLength(CELLIDX idx, uint16_t* len)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getSize
+ * name:         eTypeInfo_getSize
+ * global_name:  nTECSInfo_tTypeInfo_eTypeInfo_getSize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eTypeInfo_getSize(CELLIDX idx, uint32_t* size)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getKind
+ * name:         eTypeInfo_getKind
+ * global_name:  nTECSInfo_tTypeInfo_eTypeInfo_getKind
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eTypeInfo_getKind(CELLIDX idx, int8_t* kind)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNType
+ * name:         eTypeInfo_getNType
+ * global_name:  nTECSInfo_tTypeInfo_eTypeInfo_getNType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eTypeInfo_getNType(CELLIDX idx, int32_t* num)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getTypeInfo
+ * name:         eTypeInfo_getTypeInfo
+ * global_name:  nTECSInfo_tTypeInfo_eTypeInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eTypeInfo_getTypeInfo(CELLIDX idx, int32_t ith, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tVarDeclInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tVarDeclInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tVarDeclInfo.c	(revision 374)
@@ -0,0 +1,228 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * sizeIsExpr       char_t*          ATTR_sizeIsExpr 
+ * declType         int8_t           ATTR_declType   
+ * place            int8_t           ATTR_place      
+ * offset           uint32_t         ATTR_offset     
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cTypeInfo signature: nTECSInfo_sTypeInfo context:task
+ *   ER             cTypeInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cTypeInfo_getNameLength( );
+ *   uint32_t       cTypeInfo_getSize( );
+ *   int8_t         cTypeInfo_getKind( );
+ *   uint32_t       cTypeInfo_getNType( );
+ *   ER             cTypeInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   uint32_t       cTypeInfo_getNMember( );
+ *   ER             cTypeInfo_getMemberInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   [ref_desc]
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_refer_to_descriptor();
+ *      Descriptor( nTECSInfo_sTypeInfo ) cTypeInfo_ref_desc()      (same as above; abbreviated version);
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tVarDeclInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eVarDeclInfo
+ * entry port: eVarDeclInfo
+ * signature:  nTECSInfo_sVarDeclInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eVarDeclInfo_getName
+ * name:         eVarDeclInfo_getName
+ * global_name:  nTECSInfo_tVarDeclInfo_eVarDeclInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eVarDeclInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eVarDeclInfo_getNameLength
+ * name:         eVarDeclInfo_getNameLength
+ * global_name:  nTECSInfo_tVarDeclInfo_eVarDeclInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eVarDeclInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eVarDeclInfo_getLocationInfo
+ * name:         eVarDeclInfo_getLocationInfo
+ * global_name:  nTECSInfo_tVarDeclInfo_eVarDeclInfo_getLocationInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eVarDeclInfo_getLocationInfo(CELLIDX idx, uint32_t* offset, int8_t* place)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  *offset = ATTR_offset;
+  *place  = ATTR_place;
+}
+
+/* #[<ENTRY_FUNC>]# eVarDeclInfo_getTypeInfo
+ * name:         eVarDeclInfo_getTypeInfo
+ * global_name:  nTECSInfo_tVarDeclInfo_eVarDeclInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eVarDeclInfo_getTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  *desc = cTypeInfo_refer_to_descriptor();
+}
+
+/* #[<ENTRY_FUNC>]# eVarDeclInfo_getSizeIsExpr
+ * name:         eVarDeclInfo_getSizeIsExpr
+ * global_name:  nTECSInfo_tVarDeclInfo_eVarDeclInfo_getSizeIsExpr
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eVarDeclInfo_getSizeIsExpr(CELLIDX idx, char_t* expr_str, int32_t max_len)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  strncpy( expr_str, ATTR_sizeIsExpr, max_len - 1 );
+  expr_str[ max_len - 1 ] = '\0';
+}
+
+/* #[<ENTRY_FUNC>]# eVarDeclInfo_getSizeIs
+ * name:         eVarDeclInfo_getSizeIs
+ * global_name:  nTECSInfo_tVarDeclInfo_eVarDeclInfo_getSizeIs
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eVarDeclInfo_getSizeIs(CELLIDX idx, uint32_t* size, const void* p_cb)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  ercd = E_NOSPT;
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tVoidTypeInfo.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tVoidTypeInfo.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/nTECSInfo_tVoidTypeInfo.c	(revision 374)
@@ -0,0 +1,252 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * name             char_t*          ATTR_name       
+ * typeKind         int8_t           ATTR_typeKind   
+ * size             uint32_t         ATTR_size       
+ * b_const          bool_t           ATTR_b_const    
+ * b_volatile       bool_t           ATTR_b_volatile 
+ *
+ * #[</PREAMBLE>]# */
+
+/* Put prototype declaration and/or variale definition here #_PAC_# */
+#include <string.h>
+#include "nTECSInfo_tVoidTypeInfo_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* entry port function #_TEPF_# */
+/* #[<ENTRY_PORT>]# eTypeInfo
+ * entry port: eTypeInfo
+ * signature:  nTECSInfo_sTypeInfo
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getName
+ * name:         eTypeInfo_getName
+ * global_name:  nTECSInfo_tVoidTypeInfo_eTypeInfo_getName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getName(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	name[ max_len - 1 ] = '\0';
+	strncpy( name, ATTR_name, max_len );
+  if( name[ max_len - 1 ] ){
+      name[ max_len - 1 ] = '\0';
+      ercd = E_NOMEM;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNameLength
+ * name:         eTypeInfo_getNameLength
+ * global_name:  nTECSInfo_tVoidTypeInfo_eTypeInfo_getNameLength
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint16_t
+eTypeInfo_getNameLength(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+	return strlen( ATTR_name ) + 1;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getSize
+ * name:         eTypeInfo_getSize
+ * global_name:  nTECSInfo_tVoidTypeInfo_eTypeInfo_getSize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getSize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return ATTR_size;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getKind
+ * name:         eTypeInfo_getKind
+ * global_name:  nTECSInfo_tVoidTypeInfo_eTypeInfo_getKind
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+int8_t
+eTypeInfo_getKind(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return ATTR_typeKind;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNType
+ * name:         eTypeInfo_getNType
+ * global_name:  nTECSInfo_tVoidTypeInfo_eTypeInfo_getNType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNType(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return 0;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getTypeInfo
+ * name:         eTypeInfo_getTypeInfo
+ * global_name:  nTECSInfo_tVoidTypeInfo_eTypeInfo_getTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getTypeInfo(CELLIDX idx, Descriptor( nTECSInfo_sTypeInfo )* desc)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* Write error processing code here */
+	} /* end if VALID_IDX(idx) */
+
+	/* Put statements here #_TEFB_# */
+  return E_NOEXS;
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getNMember
+ * name:         eTypeInfo_getNMember
+ * global_name:  nTECSInfo_tVoidTypeInfo_eTypeInfo_getNMember
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+uint32_t
+eTypeInfo_getNMember(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+}
+
+/* #[<ENTRY_FUNC>]# eTypeInfo_getMemberInfo
+ * name:         eTypeInfo_getMemberInfo
+ * global_name:  nTECSInfo_tVoidTypeInfo_eTypeInfo_getMemberInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eTypeInfo_getMemberInfo(CELLIDX idx, uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/tTECSInfoAccessor.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/tTECSInfoAccessor.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TECSInfo/tTECSInfoAccessor.c	(revision 374)
@@ -0,0 +1,1613 @@
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * NAME_LEN         int16_t          ATTR_NAME_LEN   
+ * name             char_t*          VAR_name        
+ * name2            char_t*          VAR_name2       
+ * selectedCbp      int8_t*          VAR_selectedCbp 
+ * selectedInibp    int8_t*          VAR_selectedInibp
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cTECSInfo signature: nTECSInfo_sTECSInfo context:task
+ *   ER             cTECSInfo_findNamespace( const char_t* namespace_path, Descriptor( nTECSInfo_sNamespaceInfo )* NSdesc );
+ *   ER             cTECSInfo_findRegion( const char_t* namespace_path, Descriptor( nTECSInfo_sRegionInfo )* RGNdesc );
+ *   ER             cTECSInfo_findSignature( const char_t* namespace_path, Descriptor( nTECSInfo_sSignatureInfo )* SIGdesc );
+ *   ER             cTECSInfo_findCelltype( const char_t* namespace_path, Descriptor( nTECSInfo_sCelltypeInfo )* CTdesc );
+ *   ER             cTECSInfo_findCell( const char_t* namespace_path, Descriptor( nTECSInfo_sCellInfo )* CELLdesc );
+ * call port: cNSInfo signature: nTECSInfo_sNamespaceInfo context:task optional:true
+ *   bool_t     is_cNSInfo_joined()                     check if joined
+ *   ER             cNSInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cNSInfo_getNameLength( );
+ *   uint32_t       cNSInfo_getNNamespace( );
+ *   ER             cNSInfo_getNamespaceInfo( uint32_t ith, Descriptor( nTECSInfo_sNamespaceInfo )* des );
+ *   uint32_t       cNSInfo_getNSignature( );
+ *   ER             cNSInfo_getSignatureInfo( uint32_t ith, Descriptor( nTECSInfo_sSignatureInfo )* des );
+ *   uint32_t       cNSInfo_getNCelltype( );
+ *   ER             cNSInfo_getCelltypeInfo( uint32_t ith, Descriptor( nTECSInfo_sCelltypeInfo )* des );
+ *   [dynamic, optional]
+ *      void           cNSInfo_set_descriptor( Descriptor( nTECSInfo_sNamespaceInfo ) desc );
+ *      void           cNSInfo_unjoin(  );
+ * call port: cCelltypeInfo signature: nTECSInfo_sCelltypeInfo context:task optional:true
+ *   bool_t     is_cCelltypeInfo_joined()                     check if joined
+ *   ER             cCelltypeInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cCelltypeInfo_getNameLength( );
+ *   uint32_t       cCelltypeInfo_getNAttr( );
+ *   ER             cCelltypeInfo_getAttrInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNVar( );
+ *   ER             cCelltypeInfo_getVarInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNCall( );
+ *   ER             cCelltypeInfo_getCallInfo( uint32_t ith, Descriptor( nTECSInfo_sCallInfo )* desc );
+ *   uint32_t       cCelltypeInfo_getNEntry( );
+ *   ER             cCelltypeInfo_getEntryInfo( uint32_t ith, Descriptor( nTECSInfo_sEntryInfo )* desc );
+ *   bool_t         cCelltypeInfo_isSingleton( );
+ *   bool_t         cCelltypeInfo_isIDX_is_ID( );
+ *   uint32_t       cCelltypeInfo_sizeOfCB( );
+ *   uint32_t       cCelltypeInfo_sizeOfINIB( );
+ *   [dynamic, optional]
+ *      void           cCelltypeInfo_set_descriptor( Descriptor( nTECSInfo_sCelltypeInfo ) desc );
+ *      void           cCelltypeInfo_unjoin(  );
+ * call port: cSignatureInfo signature: nTECSInfo_sSignatureInfo context:task optional:true
+ *   bool_t     is_cSignatureInfo_joined()                     check if joined
+ *   ER             cSignatureInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cSignatureInfo_getNameLength( );
+ *   uint32_t       cSignatureInfo_getNFunction( );
+ *   ER             cSignatureInfo_getFunctionInfo( uint32_t ith, Descriptor( nTECSInfo_sFunctionInfo )* desc );
+ *   [dynamic, optional]
+ *      void           cSignatureInfo_set_descriptor( Descriptor( nTECSInfo_sSignatureInfo ) desc );
+ *      void           cSignatureInfo_unjoin(  );
+ * call port: cFunctionInfo signature: nTECSInfo_sFunctionInfo context:task optional:true
+ *   bool_t     is_cFunctionInfo_joined()                     check if joined
+ *   ER             cFunctionInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cFunctionInfo_getNameLength( );
+ *   void           cFunctionInfo_getReturnTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   uint32_t       cFunctionInfo_getNParam( );
+ *   ER             cFunctionInfo_getParamInfo( uint32_t ith, Descriptor( nTECSInfo_sParamInfo )* param );
+ *   [dynamic, optional]
+ *      void           cFunctionInfo_set_descriptor( Descriptor( nTECSInfo_sFunctionInfo ) desc );
+ *      void           cFunctionInfo_unjoin(  );
+ * call port: cParamInfo signature: nTECSInfo_sParamInfo context:task optional:true
+ *   bool_t     is_cParamInfo_joined()                     check if joined
+ *   ER             cParamInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cParamInfo_getNameLength( );
+ *   ER             cParamInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   ER             cParamInfo_getDir( int8_t* dir );
+ *   [dynamic, optional]
+ *      void           cParamInfo_set_descriptor( Descriptor( nTECSInfo_sParamInfo ) desc );
+ *      void           cParamInfo_unjoin(  );
+ * call port: cCallInfo signature: nTECSInfo_sCallInfo context:task optional:true
+ *   bool_t     is_cCallInfo_joined()                     check if joined
+ *   ER             cCallInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cCallInfo_getNameLength( );
+ *   void           cCallInfo_getSignatureInfo( Descriptor( nTECSInfo_sSignatureInfo )* desc );
+ *   uint32_t       cCallInfo_getArraySize( );
+ *   void           cCallInfo_getSpecifierInfo( bool_t* b_optional, bool_t* b_dynamic, bool_t* b_ref_desc, bool_t* b_omit );
+ *   void           cCallInfo_getInternalInfo( bool_t* b_allocator_port, bool_t* b_require_port );
+ *   void           cCallInfo_getLocationInfo( uint32_t* offset, int8_t* place );
+ *   void           cCallInfo_getOptimizeInfo( bool_t* b_VMT_useless, bool_t* b_skelton_useless, bool_t* b_cell_unique );
+ *   [dynamic, optional]
+ *      void           cCallInfo_set_descriptor( Descriptor( nTECSInfo_sCallInfo ) desc );
+ *      void           cCallInfo_unjoin(  );
+ * call port: cEntryInfo signature: nTECSInfo_sEntryInfo context:task optional:true
+ *   bool_t     is_cEntryInfo_joined()                     check if joined
+ *   ER             cEntryInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cEntryInfo_getNameLength( );
+ *   void           cEntryInfo_getSignatureInfo( Descriptor( nTECSInfo_sSignatureInfo )* desc );
+ *   uint32_t       cEntryInfo_getArraySize( );
+ *   bool_t         cEntryInfo_isInline( );
+ *   [dynamic, optional]
+ *      void           cEntryInfo_set_descriptor( Descriptor( nTECSInfo_sEntryInfo ) desc );
+ *      void           cEntryInfo_unjoin(  );
+ * call port: cAttrInfo signature: nTECSInfo_sVarDeclInfo context:task optional:true
+ *   bool_t     is_cAttrInfo_joined()                     check if joined
+ *   ER             cAttrInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cAttrInfo_getNameLength( );
+ *   void           cAttrInfo_getLocationInfo( uint32_t* offset, int8_t* place );
+ *   void           cAttrInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   void           cAttrInfo_getSizeIsExpr( char_t* expr_str, int32_t max_len );
+ *   ER             cAttrInfo_getSizeIs( uint32_t* size, const void* p_cb );
+ *   [dynamic, optional]
+ *      void           cAttrInfo_set_descriptor( Descriptor( nTECSInfo_sVarDeclInfo ) desc );
+ *      void           cAttrInfo_unjoin(  );
+ * call port: cVarInfo signature: nTECSInfo_sVarDeclInfo context:task optional:true
+ *   bool_t     is_cVarInfo_joined()                     check if joined
+ *   ER             cVarInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cVarInfo_getNameLength( );
+ *   void           cVarInfo_getLocationInfo( uint32_t* offset, int8_t* place );
+ *   void           cVarInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   void           cVarInfo_getSizeIsExpr( char_t* expr_str, int32_t max_len );
+ *   ER             cVarInfo_getSizeIs( uint32_t* size, const void* p_cb );
+ *   [dynamic, optional]
+ *      void           cVarInfo_set_descriptor( Descriptor( nTECSInfo_sVarDeclInfo ) desc );
+ *      void           cVarInfo_unjoin(  );
+ * call port: cTypeInfo signature: nTECSInfo_sTypeInfo context:task optional:true
+ *   bool_t     is_cTypeInfo_joined()                     check if joined
+ *   ER             cTypeInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cTypeInfo_getNameLength( );
+ *   uint32_t       cTypeInfo_getSize( );
+ *   int8_t         cTypeInfo_getKind( );
+ *   uint32_t       cTypeInfo_getNType( );
+ *   ER             cTypeInfo_getTypeInfo( Descriptor( nTECSInfo_sTypeInfo )* desc );
+ *   uint32_t       cTypeInfo_getNMember( );
+ *   ER             cTypeInfo_getMemberInfo( uint32_t ith, Descriptor( nTECSInfo_sVarDeclInfo )* desc );
+ *   [dynamic, optional]
+ *      void           cTypeInfo_set_descriptor( Descriptor( nTECSInfo_sTypeInfo ) desc );
+ *      void           cTypeInfo_unjoin(  );
+ * call port: cRegionInfo signature: nTECSInfo_sRegionInfo context:task optional:true
+ *   bool_t     is_cRegionInfo_joined()                     check if joined
+ *   ER             cRegionInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cRegionInfo_getNameLength( );
+ *   uint32_t       cRegionInfo_getNCell( );
+ *   ER             cRegionInfo_getCellInfo( uint32_t ith, Descriptor( nTECSInfo_sCellInfo )* des );
+ *   uint32_t       cRegionInfo_getNRegion( );
+ *   ER             cRegionInfo_getRegionInfo( uint32_t ith, Descriptor( nTECSInfo_sRegionInfo )* des );
+ *   [dynamic, optional]
+ *      void           cRegionInfo_set_descriptor( Descriptor( nTECSInfo_sRegionInfo ) desc );
+ *      void           cRegionInfo_unjoin(  );
+ * call port: cCellInfo signature: nTECSInfo_sCellInfo context:task optional:true
+ *   bool_t     is_cCellInfo_joined()                     check if joined
+ *   ER             cCellInfo_getName( char_t* name, int_t max_len );
+ *   uint16_t       cCellInfo_getNameLength( );
+ *   void           cCellInfo_getCelltypeInfo( Descriptor( nTECSInfo_sCelltypeInfo )* desc );
+ *   void           cCellInfo_getCBP( void** cbp );
+ *   void           cCellInfo_getINIBP( void** inibp );
+ *   [dynamic, optional]
+ *      void           cCellInfo_set_descriptor( Descriptor( nTECSInfo_sCellInfo ) desc );
+ *      void           cCellInfo_unjoin(  );
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include "tTECSInfoAccessor_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+static void
+getSelectedTypeValue( CELLCB *p_cellcb, void *ptr, char_t *buf, int_t max_len );
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eSelector
+ * entry port: eSelector
+ * signature:  sAccessor
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eSelector_selectNamespaceInfoByName
+ * name:         eSelector_selectNamespaceInfoByName
+ * global_name:  tTECSInfoAccessor_eSelector_selectNamespaceInfoByName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectNamespaceInfoByName(CELLIDX idx, const char_t* namespacePath)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sNamespaceInfo ) NSdesc;
+  if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  ercd = cTECSInfo_findNamespace( namespacePath, &NSdesc );
+  if( ercd == E_OK ){
+      cNSInfo_set_descriptor( NSdesc );
+  }
+  else {
+      cNSInfo_unjoin(  );
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCelltypeInfoByName
+ * name:         eSelector_selectCelltypeInfoByName
+ * global_name:  tTECSInfoAccessor_eSelector_selectCelltypeInfoByName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCelltypeInfoByName(CELLIDX idx, const char_t* namespacePath)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sCelltypeInfo ) CTdesc;
+  if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  ercd = cTECSInfo_findCelltype( namespacePath, &CTdesc );
+  if( ercd == E_OK ){
+      cCelltypeInfo_set_descriptor( CTdesc );
+  }
+  else {
+      cCelltypeInfo_unjoin(  );
+  }
+  
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectSignatureInfoByName
+ * name:         eSelector_selectSignatureInfoByName
+ * global_name:  tTECSInfoAccessor_eSelector_selectSignatureInfoByName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectSignatureInfoByName(CELLIDX idx, const char_t* namespacePath)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sSignatureInfo ) SIGdesc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  ercd = cTECSInfo_findSignature( namespacePath, &SIGdesc );
+  if( ercd == E_OK ){
+      cSignatureInfo_set_descriptor( SIGdesc );
+  }
+  else {
+      cSignatureInfo_unjoin(  );
+  }
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectRegionInfoByName
+ * name:         eSelector_selectRegionInfoByName
+ * global_name:  tTECSInfoAccessor_eSelector_selectRegionInfoByName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectRegionInfoByName(CELLIDX idx, const char_t* regionPath)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sRegionInfo ) RGNdesc;
+  if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  ercd = cTECSInfo_findRegion( regionPath, &RGNdesc );
+  if( ercd == E_OK ){
+      cRegionInfo_set_descriptor( RGNdesc );
+  }
+  else {
+      cRegionInfo_unjoin(  );
+  }
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCellInfoByName
+ * name:         eSelector_selectCellInfoByName
+ * global_name:  tTECSInfoAccessor_eSelector_selectCellInfoByName
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCellInfoByName(CELLIDX idx, const char_t* cellPath)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sCellInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  ercd = cTECSInfo_findCell( cellPath, &desc );
+  if( ercd == E_OK ){
+      cCellInfo_set_descriptor( desc );
+  }
+  else {
+      cCellInfo_unjoin(  );
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedNamespaceInfo
+ * name:         eSelector_getSelectedNamespaceInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedNamespaceInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedNamespaceInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* num_namespace, int_t* num_celltype, int_t* num_signature)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cNSInfo_joined() ){
+      cNSInfo_getName( name, max_len );
+      *num_namespace = cNSInfo_getNNamespace( );
+      *num_signature = cNSInfo_getNSignature( );
+      *num_celltype  = cNSInfo_getNCelltype( );
+  }
+  else {
+      ercd = E_OBJ;      // cNSInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCelltypeInfo
+ * name:         eSelector_selectCelltypeInfo
+ * global_name:  tTECSInfoAccessor_eSelector_selectCelltypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCelltypeInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sCelltypeInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  cCelltypeInfo_unjoin(  );
+  if( is_cNSInfo_joined() ){
+      if( 0 <= ith && ith < cNSInfo_getNCelltype() ){
+          cNSInfo_getCelltypeInfo( ith, &desc );
+          cCelltypeInfo_set_descriptor( desc );
+      }
+      else{
+          ercd = E_PAR;  // index out of range
+      }
+  }
+  else{
+      ercd = E_OBJ;      // cNSInfo not joined
+  }
+
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectSignatureInfo
+ * name:         eSelector_selectSignatureInfo
+ * global_name:  tTECSInfoAccessor_eSelector_selectSignatureInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectSignatureInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sSignatureInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  cSignatureInfo_unjoin(  );
+  if( is_cNSInfo_joined() ){
+      if( 0 <= ith && ith < cNSInfo_getNSignature( ) ){
+          cNSInfo_getSignatureInfo( ith, &desc );
+          cSignatureInfo_set_descriptor( desc );
+      }
+      else{
+          ercd = E_PAR;  // index out of range
+      }
+  }
+  else{
+      ercd = E_OBJ;      // cNSInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCelltypeInfo
+ * name:         eSelector_getSelectedCelltypeInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedCelltypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCelltypeInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* num_attr, int_t* num_var, int_t* num_call, int_t* num_entry)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cCelltypeInfo_joined() ){
+      cCelltypeInfo_getName( name, max_len );
+      *num_attr  = cCelltypeInfo_getNAttr( );
+      *num_var   = cCelltypeInfo_getNVar( );
+      *num_call  = cCelltypeInfo_getNCall( );
+      *num_entry = cCelltypeInfo_getNEntry( );
+  }
+  else {
+      ercd = E_OBJ;      // cCelltypeInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCallInfo
+ * name:         eSelector_selectCallInfo
+ * global_name:  tTECSInfoAccessor_eSelector_selectCallInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCallInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sCallInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  cCallInfo_unjoin(  );
+  if( is_cCelltypeInfo_joined() ){
+      if( 0 <= ith && ith < cCelltypeInfo_getNCall( ) ){
+          cCelltypeInfo_getCallInfo( ith, &desc );
+          cCallInfo_set_descriptor( desc );
+      }
+      else{
+          ercd = E_PAR;  // index out of range
+      }
+  }
+  else{
+      ercd = E_OBJ;      // cCelltypeInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectEntryInfo
+ * name:         eSelector_selectEntryInfo
+ * global_name:  tTECSInfoAccessor_eSelector_selectEntryInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectEntryInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sEntryInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  cEntryInfo_unjoin(  );
+  if( is_cCelltypeInfo_joined() ){
+      if( 0 <= ith && ith < cCelltypeInfo_getNEntry( ) ){
+          cCelltypeInfo_getEntryInfo( ith, &desc );
+          cEntryInfo_set_descriptor( desc );
+      }
+      else{
+          ercd = E_PAR;  // index out of range
+      }
+  }
+  else{
+      ercd = E_OBJ;      // cCelltypeInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectAttrInfo
+ * name:         eSelector_selectAttrInfo
+ * global_name:  tTECSInfoAccessor_eSelector_selectAttrInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectAttrInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sVarDeclInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  cAttrInfo_unjoin(  );
+  if( is_cCelltypeInfo_joined() ){
+      if( 0 <= ith && ith < cCelltypeInfo_getNAttr( ) ){
+          cCelltypeInfo_getAttrInfo( ith, &desc );
+          cAttrInfo_set_descriptor( desc );
+      }
+      else{
+          ercd = E_PAR;  // index out of range
+      }
+  }
+  else{
+      ercd = E_OBJ;      // cCelltypeInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectVarInfo
+ * name:         eSelector_selectVarInfo
+ * global_name:  tTECSInfoAccessor_eSelector_selectVarInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectVarInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sVarDeclInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  cVarInfo_unjoin(  );
+  if( is_cCelltypeInfo_joined() ){
+      if( 0 <= ith && ith < cCelltypeInfo_getNVar( ) ){
+          cCelltypeInfo_getVarInfo( ith, &desc );
+          cVarInfo_set_descriptor( desc );
+      }
+      else{
+          ercd = E_PAR;  // index out of range
+      }
+  }
+  else{
+      ercd = E_OBJ;      // cCelltypeInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedAttrInfo
+ * name:         eSelector_getSelectedAttrInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedAttrInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedAttrInfo(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cAttrInfo_joined() ){
+      cAttrInfo_getName( name, max_len );
+  }
+  else{
+      ercd = E_OBJ;      // cAttrInfo not joined
+  }
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSizeIsExprOfAttr
+ * name:         eSelector_getSizeIsExprOfAttr
+ * global_name:  tTECSInfoAccessor_eSelector_getSizeIsExprOfAttr
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSizeIsExprOfAttr(CELLIDX idx, char_t* expr_str, int32_t max_len)
+{
+	CELLCB	*p_cellcb;
+  ER     ercd = E_OK;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cAttrInfo_joined() ){
+      cAttrInfo_getSizeIsExpr( expr_str, max_len );
+  }
+  else{
+      ercd = E_OBJ;      // cAttrInfo not joined
+  }
+  return ercd;
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectTypeInfoOfAttr
+ * name:         eSelector_selectTypeInfoOfAttr
+ * global_name:  tTECSInfoAccessor_eSelector_selectTypeInfoOfAttr
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectTypeInfoOfAttr(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sTypeInfo ) desc;
+  if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cAttrInfo_joined() ){
+      cAttrInfo_getTypeInfo( &desc );
+      cTypeInfo_set_descriptor( desc );
+  }
+  else{
+      ercd = E_OBJ;      // cAttrInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedVarInfo
+ * name:         eSelector_getSelectedVarInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedVarInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedVarInfo(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cVarInfo_joined() ){
+      cVarInfo_getName( name, max_len );
+  }
+  else{
+      ercd = E_OBJ;      // cVarInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSizeIsExprOfVar
+ * name:         eSelector_getSizeIsExprOfVar
+ * global_name:  tTECSInfoAccessor_eSelector_getSizeIsExprOfVar
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSizeIsExprOfVar(CELLIDX idx, char_t* expr_str, int32_t max_len)
+{
+	CELLCB	*p_cellcb;
+  ER     ercd = E_OK;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  printf( "eSelector_getSizeIsExprOfVar not supported\n" );
+
+  return ercd;
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectTypeInfoOfVar
+ * name:         eSelector_selectTypeInfoOfVar
+ * global_name:  tTECSInfoAccessor_eSelector_selectTypeInfoOfVar
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectTypeInfoOfVar(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sTypeInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cVarInfo_joined() ){
+      cVarInfo_getTypeInfo( &desc );
+      cTypeInfo_set_descriptor( desc );
+  }
+  else{
+      ercd = E_OBJ;      // cVarInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCallInfo
+ * name:         eSelector_getSelectedCallInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedCallInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCallInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* array_size)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+    if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cCallInfo_joined() ){
+      cCallInfo_getName( name, max_len );
+      *array_size = cCallInfo_getArraySize();
+  }
+  else{
+      ercd = E_OBJ;      // cCallInfo not joined
+  }
+  return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectSignatureOfCall
+ * name:         eSelector_selectSignatureOfCall
+ * global_name:  tTECSInfoAccessor_eSelector_selectSignatureOfCall
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectSignatureOfCall(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sSignatureInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cCallInfo_joined() ){
+      cCallInfo_getSignatureInfo( &desc );
+      cSignatureInfo_set_descriptor( desc );
+  }
+  else {
+      ercd = E_OBJ;      // cCallInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCallSpecifierInfo
+ * name:         eSelector_getSelectedCallSpecifierInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedCallSpecifierInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCallSpecifierInfo(CELLIDX idx, bool_t* b_optional, bool_t* b_dynamic, bool_t* b_ref_desc, bool_t* b_omit)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cCallInfo_joined() ){
+      cCallInfo_getSpecifierInfo( b_optional, b_dynamic, b_ref_desc, b_omit );
+  }
+  else {
+      ercd = E_OBJ;      // cCallInfo not joined
+  }
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCallInternalInfo
+ * name:         eSelector_getSelectedCallInternalInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedCallInternalInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCallInternalInfo(CELLIDX idx, bool_t* b_allocator_port, bool_t* b_require_port)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cCallInfo_joined() ){
+      cCallInfo_getInternalInfo( b_allocator_port, b_require_port );
+  }
+  else {
+      ercd = E_OBJ;      // cCallInfo not joined
+  }
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCallLocationInfo
+ * name:         eSelector_getSelectedCallLocationInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedCallLocationInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCallLocationInfo(CELLIDX idx, uint32_t* offset, int8_t* place)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cCallInfo_joined() ){
+      cCallInfo_getLocationInfo( offset, place );
+  }
+  else {
+      ercd = E_OBJ;      // cCallInfo not joined
+  }
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCallOptimizeInfo
+ * name:         eSelector_getSelectedCallOptimizeInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedCallOptimizeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCallOptimizeInfo(CELLIDX idx, bool_t* b_VMT_useless, bool_t* b_skelton_useless, bool_t* b_cell_unique)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cCallInfo_joined() ){
+      cCallInfo_getOptimizeInfo( b_VMT_useless, b_skelton_useless, b_cell_unique );
+  }
+  else {
+      ercd = E_OBJ;      // cCallInfo not joined
+  }
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedEntryInfo
+ * name:         eSelector_getSelectedEntryInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedEntryInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedEntryInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* array_size)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cEntryInfo_joined() ){
+      cEntryInfo_getName( name, max_len );
+      *array_size = cEntryInfo_getArraySize();
+  }
+  else{
+      ercd = E_OBJ;      // cEntryInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectSignatureOfEntry
+ * name:         eSelector_selectSignatureOfEntry
+ * global_name:  tTECSInfoAccessor_eSelector_selectSignatureOfEntry
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectSignatureOfEntry(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sSignatureInfo ) desc;
+  if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cEntryInfo_joined() ){
+      cEntryInfo_getSignatureInfo( &desc );
+      cSignatureInfo_set_descriptor( desc );
+  }
+  else {
+      ercd = E_OBJ;      // cEntryInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedEntryInlineInfo
+ * name:         eSelector_getSelectedEntryInlineInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedEntryInlineInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedEntryInlineInfo(CELLIDX idx, bool_t* b_inline)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cEntryInfo_joined() ){
+      *b_inline = cEntryInfo_isInline( );
+  }
+  else {
+      ercd = E_OBJ;      // cEntryInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedSignatureInfo
+ * name:         eSelector_getSelectedSignatureInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedSignatureInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedSignatureInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* num_function)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cSignatureInfo_joined() ){
+      cSignatureInfo_getName( name, max_len );
+      *num_function = cSignatureInfo_getNFunction( );
+  }
+  else {
+      ercd = E_OBJ;      // cSignatureInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectFunctionInfoByIndex
+ * name:         eSelector_selectFunctionInfoByIndex
+ * global_name:  tTECSInfoAccessor_eSelector_selectFunctionInfoByIndex
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectFunctionInfoByIndex(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sFunctionInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cSignatureInfo_joined() ){
+      if( 0 <= ith && ith < cSignatureInfo_getNFunction( ) ){
+          cSignatureInfo_getFunctionInfo( ith, &desc );
+          cFunctionInfo_set_descriptor( desc );
+      }
+      else {
+      }
+  }
+  else {
+      ercd = E_OBJ;      // cSignatureInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedFunctionInfo
+ * name:         eSelector_getSelectedFunctionInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedFunctionInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedFunctionInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* num_args)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cFunctionInfo_joined() ){
+      cFunctionInfo_getName( name, max_len );
+      *num_args = cFunctionInfo_getNParam( );
+  }
+  else {
+      ercd = E_OBJ;      // cFunctionInfo not joined
+  }
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectTypeInfoOfReturn
+ * name:         eSelector_selectTypeInfoOfReturn
+ * global_name:  tTECSInfoAccessor_eSelector_selectTypeInfoOfReturn
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectTypeInfoOfReturn(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sTypeInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cFunctionInfo_joined() ){
+      cFunctionInfo_getReturnTypeInfo( &desc );
+      cTypeInfo_set_descriptor( desc );
+  }
+  else {
+      ercd = E_OBJ;      // cFunctionInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedParamInfo
+ * name:         eSelector_getSelectedParamInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedParamInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedParamInfo(CELLIDX idx, char_t* name, int_t max_len, int8_t* dir)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cParamInfo_joined() ){
+      cParamInfo_getName( name, max_len );
+      cParamInfo_getDir( dir );
+  }
+  else {
+      ercd = E_OBJ;      // cParamInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectParamInfo
+ * name:         eSelector_selectParamInfo
+ * global_name:  tTECSInfoAccessor_eSelector_selectParamInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectParamInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sParamInfo ) desc;
+  if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cFunctionInfo_joined() ){
+      if( 0 <= ith && ith < cFunctionInfo_getNParam() ){
+          cFunctionInfo_getParamInfo( ith, &desc );
+          cParamInfo_set_descriptor( desc );
+      }
+      else{
+          ercd = E_PAR;  // index out of range
+      }
+  }
+  else {
+      ercd = E_OBJ;      // cFunctionInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectTypeInfoOfParam
+ * name:         eSelector_selectTypeInfoOfParam
+ * global_name:  tTECSInfoAccessor_eSelector_selectTypeInfoOfParam
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectTypeInfoOfParam(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sTypeInfo ) desc;
+  if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cParamInfo_joined() ){
+      cParamInfo_getTypeInfo( &desc );
+      cTypeInfo_set_descriptor( desc );
+  }
+  else {
+      ercd = E_OBJ;      // cFunctionInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedTypeInfo
+ * name:         eSelector_getSelectedTypeInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedTypeInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedTypeInfo(CELLIDX idx, char_t* name, int_t max_len, int8_t* kind)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cTypeInfo_joined() ){
+      cTypeInfo_getName( name, max_len );
+      *kind = cTypeInfo_getKind( );
+  }
+  else {
+      ercd = E_OBJ;      // cTypeInfo not joined
+  }
+  return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectTypeInfoOfType
+ * name:         eSelector_selectTypeInfoOfType
+ * global_name:  tTECSInfoAccessor_eSelector_selectTypeInfoOfType
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectTypeInfoOfType(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sTypeInfo ) desc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cTypeInfo_joined() ){
+      cTypeInfo_getTypeInfo( &desc );
+      cTypeInfo_set_descriptor( desc );
+  }
+  else {
+      ercd = E_OBJ;      // cTypeInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedRegionInfo
+ * name:         eSelector_getSelectedRegionInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedRegionInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedRegionInfo(CELLIDX idx, char_t* name, int_t max_len, int_t* num_cell)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cRegionInfo_joined() ){
+      cRegionInfo_getName( name, max_len );
+      *num_cell = cRegionInfo_getNCell();
+  }
+  else {
+      ercd = E_OBJ;      // cNSInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCellInfo
+ * name:         eSelector_selectCellInfo
+ * global_name:  tTECSInfoAccessor_eSelector_selectCellInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCellInfo(CELLIDX idx, int_t ith)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sCellInfo ) desc;
+  if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cRegionInfo_joined() ){
+      if( 0 <= ith && ith < cRegionInfo_getNCell() ){
+          cRegionInfo_getCellInfo( ith, &desc );
+          cCellInfo_set_descriptor( desc );
+      }
+      else {
+          ercd = E_PAR;
+      }
+  }
+  else {
+      ercd = E_OBJ;      // cNSInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getSelectedCellInfo
+ * name:         eSelector_getSelectedCellInfo
+ * global_name:  tTECSInfoAccessor_eSelector_getSelectedCellInfo
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getSelectedCellInfo(CELLIDX idx, char_t* name, int_t max_len)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cCellInfo_joined() ){
+      cCellInfo_getName( name, max_len );
+  }
+  else {
+      ercd = E_OBJ;      // cNSInfo not joined
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_selectCelltypeInfoOfCell
+ * name:         eSelector_selectCelltypeInfoOfCell
+ * global_name:  tTECSInfoAccessor_eSelector_selectCelltypeInfoOfCell
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_selectCelltypeInfoOfCell(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+  Descriptor( nTECSInfo_sCelltypeInfo ) desc;
+  if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cCellInfo_joined() ){
+      cCellInfo_getCelltypeInfo( &desc );
+      cCelltypeInfo_set_descriptor( desc );
+  }
+  else {
+      ercd = E_OBJ;      // cNSInfo not joined
+  }
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getAttrValueInStr
+ * name:         eSelector_getAttrValueInStr
+ * global_name:  tTECSInfoAccessor_eSelector_getAttrValueInStr
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getAttrValueInStr(CELLIDX idx, char_t* buf, int_t max_len)
+{
+	ER		  ercd = E_OK;
+	CELLCB	*p_cellcb;
+  uint32_t offset;
+  void     *base, *ptr;
+  int8_t   place;
+
+  Descriptor( nTECSInfo_sCelltypeInfo ) CTdesc;
+  if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( is_cCellInfo_joined() && is_cAttrInfo_joined() ){
+      cCellInfo_getCelltypeInfo( &CTdesc );
+      cCelltypeInfo_set_descriptor( CTdesc );
+      printf( "eSelector_getAttrValueInStr not supported\n" );
+      cAttrInfo_getLocationInfo( &offset, &place );
+      switch( place ){
+      case VARDECL_PLACE_CB:
+          cCellInfo_getCBP( &base );
+          break;
+      case VARDECL_PLACE_INIB:
+          cCellInfo_getINIBP( &base );
+          break;
+      default:
+          base = (void *)0;
+      };
+      if( base ){
+          ptr = base + offset;
+          eSelector_selectTypeInfoOfAttr(idx);
+          getSelectedTypeValue( p_cellcb, ptr, buf, max_len );
+      }
+      else {
+          strncpy( buf, "(OMITTED)", max_len );
+      }
+  }
+  else{
+      ercd = E_OBJ;
+  }
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getAttrSizeIsValue
+ * name:         eSelector_getAttrSizeIsValue
+ * global_name:  tTECSInfoAccessor_eSelector_getAttrSizeIsValue
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getAttrSizeIsValue(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  printf( "eSelector_getAttrSizeIsValue not supported\n" );
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getVarValueInStr
+ * name:         eSelector_getVarValueInStr
+ * global_name:  tTECSInfoAccessor_eSelector_getVarValueInStr
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getVarValueInStr(CELLIDX idx, char_t* buf, int_t max_len)
+{
+	ER        ercd = E_OK;
+	CELLCB    *p_cellcb;
+  int8_t    place;
+  void      *base, *ptr;
+  uint32_t  offset;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  cVarInfo_getLocationInfo( &offset, &place );
+  switch( place ){
+  case VARDECL_PLACE_CB:
+      cCellInfo_getCBP( &base );
+      break;
+  case VARDECL_PLACE_INIB:
+      cCellInfo_getINIBP( &base );
+      break;
+  default:
+      base = (void *)0;
+  };
+  if( base ){
+      ptr = base + offset;
+      eSelector_selectTypeInfoOfVar(idx);
+      getSelectedTypeValue( p_cellcb, ptr, buf, max_len );
+  }
+  else {
+      strncpy( buf, "(OMITTED)", max_len );
+  }
+  printf( "eSelector_getVarValueInStr not supported\n" );
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eSelector_getVarSizeIsValue
+ * name:         eSelector_getVarSizeIsValue
+ * global_name:  tTECSInfoAccessor_eSelector_getVarSizeIsValue
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+ER
+eSelector_getVarSizeIsValue(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  printf( "eSelector_getVarSizeIsValue not supported\n" );
+
+	return(ercd);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
+
+static void
+getSelectedTypeValue( CELLCB *p_cellcb, void *ptr, char_t *buf, int_t max_len )
+{
+    switch( cTypeInfo_getKind() ){
+    case TECSTypeKind_BoolType:
+        snprintf( buf, max_len, "%d", *(bool_t *)ptr );
+        break;
+    case TECSTypeKind_IntType:
+        switch( cTypeInfo_getSize() ){
+        case 8:
+            snprintf( buf, max_len, "%d", *(int8_t *)ptr );
+            break;
+        case 16:
+            snprintf( buf, max_len, "%d", *(int16_t *)ptr );
+            break;
+        case 32:
+            snprintf( buf, max_len, "%d", *(int32_t *)ptr );
+            break;
+        case 64:
+            snprintf( buf, max_len, "%lld", *(int64_t *)ptr );
+            break;
+        default:
+            snprintf( buf, max_len, "unknown int size(%d)", cTypeInfo_getSize() );
+        };
+    case TECSTypeKind_FloatType:
+        switch( cTypeInfo_getSize() ){
+        case 32:
+            snprintf( buf, max_len, "%g", *(float32_t *)ptr );
+            break;
+        case 64:
+            snprintf( buf, max_len, "%g", *(double64_t *)ptr );
+            break;
+        default:
+            snprintf( buf, max_len, "unknown double size(%d)", cTypeInfo_getSize() );
+        };
+    case TECSTypeKind_PtrType:
+        snprintf( buf, max_len, "%X", *(double64_t *)ptr );
+        break;
+    case TECSTypeKind_ArrayType:        break;
+    case TECSTypeKind_DefinedType:      break;
+    case TECSTypeKind_StructType:       break;
+    case TECSTypeKind_EnumType:         break;
+    case TECSTypeKind_VoidType:         break;
+    case TECSTypeKind_DescriptorType:   break;
+    default:                            break;
+    };
+}
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TLSFMalloc/README-TLSF.txt
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TLSFMalloc/README-TLSF.txt	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TLSFMalloc/README-TLSF.txt	(revision 374)
@@ -0,0 +1,35 @@
+TLSF Malloc ã¢ã­ã±ã¼ã¿
+                                          2017.4.15
+                                          å¤§å±±
+1.æ¦è¦
+
+TLSF ã¯å¹çããããã©ã°ã¡ã³ããèµ·ãã«ããã¢ã­ã±ã¼ã¿ã§ãã OS éä¾å­ã«
+å®è£
+ããã¦ãããããçµè¾¼ã¿ã·ã¹ãã ã¸ã®å¿ç¨ã«é©ãã¦ãã¾ãããã®å®è£
+ã§ã¯
+æä»å¶å¾¡ãè¡ã£ã¦ãã¾ãããè¤æ°ã®ã¿ã¹ã¯ã§å
+±ç¨ããã«ã¯ãæä»å¶å¾¡ãè¡ãå¿
+
+è¦ãããã¾ãã
+
+2. å®è£
+ã«ã¤ãã¦
+
+1) TLSF ã¢ã­ã±ã¼ã¿ã®æ¬ä½ã¯ãTECS ã¸ã§ãã¬ã¼ã¿ããã±ã¼ã¸ã«ã¯å«ã¾ãã¦ãã¾ããã
+ä»¥ä¸ã«å
+¬éããã¦ãã TLSF ãå
+¥æããå¿
+è¦ãããã¾ãã
+ããã¯ GPL/LGPL ã©ã¤ã»ã³ã¹ã§å
+¬éããã¦ãã¾ãã
+  http://www.gii.upv.es/tlsf/main/docs
+
+2) TLSF ã«ã¯ãå¥ã«å®è£
+ãã MIT ã©ã¤ã»ã³ã¹ã§å
+¬éããã¦ãããã®ãããã¾ãã
+API ãè¥å¹²ç°ãªããããtTLSFMalloc_inline.h ãå°ãä¿®æ­£ããå¿
+è¦ãããã¾ãã
+  https://github.com/mattconte/tlsf
+
+3) ETã­ãã³ã³ç¨ããã±ã¼ã¸
+mruby-on-ev3rt+tecs_package (ev3rt) ã«ã¯ã1) ã® TLSF ãå«ã¾ãã¦ãã¾ãã
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TLSFMalloc/tTLSFMalloc.cdl
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TLSFMalloc/tTLSFMalloc.cdl	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TLSFMalloc/tTLSFMalloc.cdl	(revision 374)
@@ -0,0 +1,71 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+import( <sMalloc.cdl> );
+
+celltype tTLSFMalloc {
+    [inline]
+        entry  sMalloc  eMalloc;
+    attr {
+        /* memory pool size in bytes */
+        size_t  memoryPoolSize;
+    };
+    var {
+        /*
+         * ã¡ã¢ãªãã¼ã«
+         *
+         * size_is ã®å¼æ°ã«é¢ããè£è¶³èª¬æ
+         *  pool ã®åã uint64_t ã®ãã sizeof uint64_t (8) ã§å²ã£ã¦ãã
+         *  memoryPoolSize ã 8 ã®åæ°ã§ãªãå ´åãã¡ã¢ãªé åãä¸è¶³ããªããã +7 ãå ç®ãã¦ããé¤ãã
+         */
+        [size_is( (memoryPoolSize+7) / 8 )]
+            uint64_t   *pool;
+    };
+};
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TLSFMalloc/tTLSFMalloc_inline.h
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TLSFMalloc/tTLSFMalloc_inline.h	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/TLSFMalloc/tTLSFMalloc_inline.h	(revision 374)
@@ -0,0 +1,167 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+#ifndef tTLSFMalloc__INLINE_H
+#define tTLSFMalloc__INLINE_H
+
+#include "tlsf.h"
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * memoryPoolSize   size_t           ATTR_memoryPoolSize
+ * pool             uint64_t*        VAR_pool        
+ *
+ * #[</PREAMBLE>]# */
+
+/* #[<ENTRY_PORT>]# eMalloc
+ * entry port: eMalloc
+ * signature:  sMalloc
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eMalloc_initializeMemoryPool
+ * name:         eMalloc_initializeMemoryPool
+ * global_name:  tTLSFMalloc_eMalloc_initializeMemoryPool
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline int
+eMalloc_initializeMemoryPool(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+	} /* end if VALID_IDX(idx) */
+
+  return init_memory_pool(ATTR_memoryPoolSize, VAR_pool);
+}
+
+/* #[<ENTRY_FUNC>]# eMalloc_calloc
+ * name:         eMalloc_calloc
+ * global_name:  tTLSFMalloc_eMalloc_calloc
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline void*
+eMalloc_calloc(CELLIDX idx, size_t nelem, size_t elem_size)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+	} /* end if VALID_IDX(idx) */
+
+  return calloc_ex( nelem, elem_size, VAR_pool);
+}
+
+/* #[<ENTRY_FUNC>]# eMalloc_malloc
+ * name:         eMalloc_malloc
+ * global_name:  tTLSFMalloc_eMalloc_malloc
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline void*
+eMalloc_malloc(CELLIDX idx, size_t size)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+	} /* end if VALID_IDX(idx) */
+
+  return malloc_ex(size, VAR_pool);
+
+}
+
+/* #[<ENTRY_FUNC>]# eMalloc_realloc
+ * name:         eMalloc_realloc
+ * global_name:  tTLSFMalloc_eMalloc_realloc
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline void*
+eMalloc_realloc(CELLIDX idx, const void* ptr, size_t new_size)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+	} /* end if VALID_IDX(idx) */
+
+  return realloc_ex((void *)ptr, new_size, VAR_pool);
+}
+
+/* #[<ENTRY_FUNC>]# eMalloc_free
+ * name:         eMalloc_free
+ * global_name:  tTLSFMalloc_eMalloc_free
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline void
+eMalloc_free(CELLIDX idx, const void* ptr)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+	} /* end if VALID_IDX(idx) */
+
+  return free_ex((void *)ptr, VAR_pool);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
+
+#endif /* tTLSFMalloc_INLINEH */
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/README-mruby.txt
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/README-mruby.txt	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/README-mruby.txt	(revision 374)
@@ -0,0 +1,73 @@
+mruby
+                                              2017.4.17  æ°è¦
+                                              2017.11.4  
+                                              å¤§å±± åå¸
+
+â æ¦è¦
+
+mruby ãã£ã¬ã¯ããªã«ã¯ãçµè¾¼ã¿ç¨ mruby VM ã®ã»ã«ã¿ã¤ããããã³
+MrubyBridgePlugin ã«å¯¾å¿ããã¢ã¸ã¥ã¼ã«ãå«ã¾ãã¾ãï¼
+
+mruby V1.2.0 ã«å¯¾å¿ãã¦ãã¾ãï¼V1.1.0 ã§ããã«ããããã¨ã¯å¯è½ã§ãï¼
+
+ããã«ã¯ mruby ã®æ¬ä½ã¯å«ã¾ãã¾ããï¼ä»¥ä¸ãããã¦ã³ã­ã¼ãããå¿
+è¦ãããã¾ãï¼
+   http://forum.mruby.org/
+
+â TECS ã¸ã§ãã¬ã¼ã¿ V1.5 ã§ã®å¤æ´
+
+tMruby.cdl (ãã¹ï¼tecsgen/tecs/mruby/tMruby.cdl) ãæ°è¨­ããï¼
+ä»¥ä¸ãå¯è½ã«ããããã« tMruby ã composite ã«åè§£ããï¼
+ * mruby ã¹ã¯ãªããã®å¨æã¿ã¹ã¯å®è¡
+ * VM ãã¨ã«ç°ãªã TLSF ã¢ã­ã±ã¼ã¿ã³ã³ãã¼ãã³ããä½¿ç¨
+
+tMruby.cdl ã§ã¯ tMruby (ãã¼ã ã¹ãã¼ã¹ãã¹ï¼nMruby::tMruby) ã®å®è£
+ã
+æ°ããããä»ãå¨æã¿ã¹ã¯å®è¡ç¨ã® tMrubyCyclic (åï¼nMruby::tMrubyCyclic)
+ãæ°è¨­ããï¼tMruby ãåè§£ãããtMrubyVM ã»ã«ã¿ã¤ãã¨ããã®ã·ã°ããã£
+sMruby (sMruby.cdlå
+) ãæ°è¨­ããï¼
+
+tMruby.cdl ã«ç½®ãæãå¯è½ã ããä»¥ä¸ã®ç¹ã§ãã«ãç¨ Makefile ã®å¤æ´ãå¿
+è¦ï¼
+ * TLSF ããã tTLSFMalloc_inline.h ã¸ã®ãã¹ãè¿½å 
+ * TLSF ã®ãªãã¸ã§ã¯ãã®è¿½å  (mruby+TECS on EV3 ã«ã¯å®è£
+æ¸ã¿)
+
+ã¾ããä»¥ä¸ã®ç¹ã«çæããå¿
+è¦ãããï¼
+ * TLSF ã¯ãVM ãã¨ã« 1MB ãå²ãä»ãã 
+
+ãã®ãããååãªç©ºãã¡ã¢ãªãå¿
+è¦ã§ããï¼
+ãã®ãµã¤ãºã¯ VM ã»ã«ã®å®ç¾©ã§å¤æ´å¯è½ (å±æ§ memoryPoolSize)ï¼
+
+â  ã³ã³ãã¼ãã³ãæ¦è¦
+
+tMruby.cdl: (TECS ã¸ã§ãã¬ã¼ã¿ V1.5.0 ä»¥é)
+ celltype  tMrubyVM
+    VM ãå®è£
+ããããã®ã»ã«ã¿ã¤ãï¼ã¡ã¢ãªã¢ã­ã±ã¼ã¿ TLSFMalloc ãå«ã¾
+    ãªã. åãå£ eMrubyVM ã®ã·ã°ããã£ã¯ sMrubyï¼
+
+ composite tMruby
+    åãå£ eMrubyBody ã®ã·ã°ããã£ã sTaskBody ã¨ããï¼tTLSFMalloc ã
+    çµã¿å
+¥ã.
+
+ composite tMrubyCyclic
+    åãå£ eMrubyBody ã®ã·ã°ããã£ã sTaskBody ã¨ããï¼tTLSFMalloc ã
+    çµã¿å
+¥ã.
+    å¨æã¿ã¹ã¯èµ·åºãåæã¨ãã¦ããï¼
+    ä¸åç®ã®å¼åºãã§ã¯ mrb_open ããããªãã¸ã»ã«ãç»é²å¾ãmrb_run ãå¼
+    ã³åºãã¦ã¹ã¯ãªããå®è¡ãè¡ãï¼ã¹ã¯ãªããçµäºå¾ã« mrb_close ã¯å¼ã³
+    åºãããªãï¼
+    äºåç®ä»¥éã®å¼åºãã§ã¯ mrb_run ã®ã¿å¼ã³åºãããï¼
+    çµäºå¦ç mrb_close ãå¼ã³ã ãææ®µã¯æä¾ãã¦ããªãï¼çªç¶é»æºãåã
+    ãããã¨ãåæã¨ãã¦ããï¼ (å°ãªãã¨ãæåã®å®è£
+ã§ã¯)ï¼
+
+sMruby.cdlï¼
+ signature sMruby
+   åæåãå®è¡ãçµäºå¦çã«åè§£ããã·ã°ããã£
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/TECSPointer.h
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/TECSPointer.h	(revision 352)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/TECSPointer.h	(revision 374)
@@ -102,6 +102,6 @@
 	{																	\
 		if( sizeof( type ) > sizeof( mrb_int ) ){						\
-			if( val >= (((type)1) << (sizeof(mrb_int)*8-1))				\
-				|| val < -(((type)1) << (sizeof(mrb_int)*8-1)) )		\
+			if( val > TYPE ## _MAX				\
+				|| val < TYPE ## _MIN )		\
 				/* '=' unecessary for negative value	*/				\
 				/* ignore warning on int32_t */							\
@@ -126,5 +126,5 @@
 	{																	\
 		if( sizeof( type ) > sizeof( mrb_int ) ){						\
-			if( val >= (((type)1) << (sizeof(mrb_int)*8)))				\
+      if( val > TYPE ## _MAX )                        \
 				/* '=' unecessary for negative value	*/				\
 				/* ignore warning on int32_t */							\
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyBridge.txt
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyBridge.txt	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyBridge.txt	(revision 374)
@@ -0,0 +1,394 @@
+MrubyBridgePlugin ã«é¢ããã¡ã¢
+										2012å¹´11æ 7æ¥ãåçä½æ
+										2013å¹´ 5æ26æ¥ãè¦ç´ã
+                                                        å¤§å±±ãåå¸
+
+ãæ¦è¦ã
+
+MrubyBridgePlugin ã¯ãTECS CDL ã® signature è¨è¿°ã«åºã¥ããmruby ã¨ TECS 
+ã³ã³ãã¼ãã³ããããªãã¸ãããmruby ã® C è¨èªå®è£
+ã¯ã©ã¹ã§ãã TECS ã®ã»
+ã«ã¿ã¤ãã¨ãªãã³ã³ãã¼ãã³ããçæãããTECS ã®ã·ã°ããã£ãã©ã°ã¤ã³ã§ã
+ãã
+
+ãæ§é ã
+
+         +--------------------------+              +-------------------+
+         |     (ããªãã¸ã»ã«)         |              |    (ç®çã»ã«)      |
+         |                          |              |                   |
+mruby    | nMruby::tsSignatureBridge|  sSignature  |  tTargetCelltype  |
+ - - - > |       BridgeCell         |--------------|>   TargetCell     |
+         |                          |cTECS    eTest|                   |
+         | mruby ã¯ã©ã¹ï¼            |              |                   |
+         |  TECS::TSignatureBridge  |              |                   |
+         +--------------------------+              +-------------------+
+
+MrubyBridgePlugin ã¯ãmruby ãã TECS ã¸ããªãã¸ãããã»ã«ã¿ã¤ããçæ
+ãããmruby=>TECS ãããªãã¸ããã»ã«ã¯ããã®ã»ã«ã¿ã¤ãã®ã»ã«ã¨ãã¦ãã
+ã©ã°ã¤ã³ã®å©ç¨è
+ã CDL å
+ã«è¨­ç½®ããmruby ããæä½ãããã»ã«ãããªãã¡
+ç®çã»ã«ã«çµåããã
+
+ãã®ã»ã«ã¿ã¤ãã¯ãmruby ã®ã¯ã©ã¹ã®å®ç¾©ãè¡ããããªãã¸ã»ã«ã mruby ã®
+ã¤ã³ã¹ã¿ã³ã¹ã¨ãã¦åãæ±ããããã«ããmruby ã®ã¤ã³ã¹ã¿ã³ã¹ã¡ã½ããã®å¼
+ã³åºãã«å¿ãã¦ãç®çã»ã«ã®åãå£é¢æ°ãå¼ã³åºãåããæã¤ã
+
+ãç°¡åãªä½¿ç¨ä¾ã
+
+ç°¡åãªä½¿ç¨ä¾ã¯ãSimpleSample.cdl ããã³ SimpleSample.rb ã«ããã
+MrubyBrigePlugin ã¯ã·ã°ããã£ãã©ã°ã¤ã³ã§ãããã·ã°ããã£ãã©ã°ã¤ã³ã®
+ä½¿ç¨æ¹æ³ãçè§£ãã¦ããã°ããããã®ã½ã¼ã¹ãã¡ã¤ã«ã®ã³ã¡ã³ããåç
+§ããã
+ã¨ã§ãMrubyBrigePlugin ã®å¤§ããã®ä½¿ãæ¹ã¯çè§£ã§ããã¯ãã§ããã
+ä»¥ä¸ã®æ¹æ³ã§ããã«ãããã³å®è¡ã§ããã
+
+   % make                             # mruby æ¬ä½ã®ãã«ã (.a ãä½æ)
+   % cd MrubyBridge                   # MrubyBridge ã¸ç§»å
+   % make                             # ãã«ã
+   % ./mruby-Sample SimpleSample.rb   # å®è¡
+
+ãMakefile ã®æ§æã
+
+tecsgen ã«ããçæããã gen/Makefile.templ ã«å¯¾ããä»¥ä¸ã®å¤æ´ãå ããå¿
+è¦ãã
+ãã
+
+ã»gen/Makefile.temp ã¯ãä¸ã¤ä¸ã®ãã£ã¬ã¯ããªã¸ Makefile ã¨ããååã§ç½®
+  ãã°ãcygwin ãªã©ã® POSIX ç°å¢ã§è©¦é¨å®è¡ããå ´åã«ã¯ãç¡èª¿æ´ã§ä½¿ç¨ã§
+  ããããã«çæããã(ãã ã gnu make ãä½¿ç¨ãã)
+ã»tSysLog ãä½¿ãå ´åããªã­ã±ã¼ã¿ãã«ãªãã¸ã§ã¯ããè¿½å  (ä¸è¡åç
+§)
+   OTHER_OBJS = $(_TECS_OBJ_DIR)vasyslog.o
+
+ããã¼ã¿åã
+
+MrubyBridgePlugin ã¯ãä»¥ä¸ã® TECS ã®åãæ±ããã¨ãã§ãã (å¶éããã)ã
+ãã®å¶éã¯ãMrubyBridgePlugin ãé©ç¨ãããã¨ããã·ã°ããã£ã«å¯¾ãããã®ã§ããã
+ããä»¥å¤ã¸å¶éãããã¶ãã®ã§ã¯ãªãã
+
+ ã¹ã«ã©ã¼å			bool_t, char_t, intN_t, double64_t, float32_t
+									(N=8,16,32,64)
+					int, short, long, char (TECS éæ¨å¥¨ã®å)
+
+ ãã¤ã³ã¿å			bool_t*, char_t*, intN_t*, double64_t*, float32_t*
+					int*, short*, long*, char*
+					æ§é ä½åã¸ã®ãã¤ã³ã¿ï¼æ§é ä½åã¨åãå¶éããï¼
+
+                    ãããã¯ããã¤ã³ã¿ã®æãã¦ããå
+ã®å¤ãæ±ãããã®ã
+                    ã®ã§ããããã¤ã³ã¿å¤(ã¢ãã¬ã¹)ãæ¸¡ãããå ´åã«ã¯ã
+                    ããããä½¿ç¨ã§ããªããä»£ããã« intptr_t, uintptr_t 
+                    ãä½¿ç¨ããã
+
+ 					size_is, string æå®å­ãã/ãªãã®ããããæ±ããã
+					ãã ãæ§é ä½åã¸ã®ãã¤ã³ã¿ã« size_is æå®ãããã
+					ã®ã¯æ±ããªãã(ä»æ§æ¸ã«æè¨ããã¦ããªããæ§é ä½ã
+					ã¤ã³ã¿ã® string ã¯ãå
+ã
+ãµãã¼ããããªã)
+
+					string ã®é·ãæå®ããªãå ´åãin å¼æ°ã«å¯¾ãã¦ã®ã¿ç¨
+					ãããã¨ãã§ããã
+
+ æ§é ä½å			ã¡ã³ãã¯ãã¹ã«ã©ã¼åã§ãªãã¦ã¯ãªããªã
+
+ typedefå          ä¸è¨ã®ã¹ã«ã©ã¼åãæ§é ä½åããã¤ã³ã¿åã® typedef 
+                    ãããåãæ±ããã¨ãã§ãããå
+ã®åã¨ãã¦æ±ãããã
+					ãã®ãããã¤ã³ã¿åãæ§é ä½åã®å ´åãå
+ã®ååã«ãã
+					ããããæ±ãããã® mruby ã¯ã©ã¹ãæå®ããã
+
+ãå¯¾å¿ãã mruby ã®å(ã¯ã©ã¹)ã
+
+  bool_t			true ã¾ãã¯ falseã
+					mruby ã§ false ã¨è¦ãªããããã®(false ã¾ãã¯ nil) 
+					ã C ã® false ã¨ãã¦æ±ããmruby ã§ false ã¨è¦ãªã
+					ããªããã®ã C ã® true ã¨ãã¦æ±ããæ´æ°å¤ 0 ã¯ã
+					mruby ã§ã¯ false ã¨ã¯è¦ãªãããªãã
+  char_t			FIXNUM  (å¤ã¯ 0..255)		
+  schar_t			FIXNUM  (å¤ã¯ -128..127)		
+  uchar_t			FIXNUM  (å¤ã¯ 0..255)		
+  intN_t			FIXNUM
+  uintN_t			FIXNUM
+  double64_t		FLOAT (mruby ã® FLOAT ã double ã float ãã¯å®è£
+
+                          ã«ãã)
+  float32_t			FLOAT
+  int				FIXNUM
+  short				FIXNUM
+  long				FIXNUM
+  char				FIXNUM  (char_t ã¨åã)
+
+ã»TECS å°ç¨ã®ã¯ã©ã¹ãç¨ãããã®
+
+  bool_t*			TECS::BoolPointer
+  char_t*			TECS::CharPointer
+  uchar_t*			TECS::UCharPointer
+  schar_t*			TECS::SCharPointer
+  intN_t*			TECS::IntNPointer   N:8,16,32,64
+  uintN_t*			TECS::UIntNPointer  N:8,16,32,64
+  float32_t*		TECS::Float32Pointer
+  double64_t*		TECS::Double64Pointer
+  int*				TECS::IntPointer
+  short*			TECS::ShortPointer
+  long*				TECS::LongPointer
+  char*				TECS::CharPointer  (char_t* ã¨åã)
+
+  struct TAG		TECS:TECSStructTAG
+  struct TAG*		TECS:TECSStructTAG
+                    TAG ã®é¨åã¯ãæ§é ä½ã®ã¿ã°åã«ç½®ãæãããé¢æ°ã¸ã®
+                    å¼æ°ã¨ãã¦ãæ§é ä½ãæ¸¡ãããæ§é ä½ã¸ã®ãã¤ã³ã¿ãæ¸¡
+                    ããã¯ããã©ã°ã¤ã³ãèªåã§å¤å®ãããTAG åãä»ãã¦
+                    ããªãæ§é ä½ãæ±ããã¨ã¯ã§ããªããtypedef ããåå
+                    ã§æ§é ä½ãæ±ããã¨ã¯ã§ããªãã
+
+ã»ãã®ä»
+
+  void * ã¯æ±ããªã
+  intptr_t ã¯ãéå¸¸ stdint.h ã§ typedef ããã¦ããããå
+ã®åã¨ãã¦æ±ã
+
+ãã©ã°ã¤ã³å¼æ°ã¨ãã¦ ignoreUnsigned=true ãæå®ããã¨ãç¡ç¬¦å·æ´æ°åã¸
+ã®ãã¤ã³ã¿åãæç¬¦å·æ´æ°åã®ãã¤ã³ã¿åã¨ãã¦æ±ãï¼å¤ã®ç¯å²ãã§ãã¯ãå«
+ãï¼ããã¤ã³ã¿ãæ±ãã¯ã©ã¹ã®ã¡ã¢ãªä½¿ç¨éãæãããã¨ãæç¬¦å·ãç¡ç¬¦å·ã®
+ä½¿ãåããã«ã¼ãºã«ãããã¨ãã§ããã
+
+ãã«ãæã®ãªãã·ã§ã³ (C è¨èªã®ãã¯ã­å®ç¾©) TECS_NO_VAL_CHECK ãæå®ãã
+ãã¨ã§ãå¤ã®ç¯å²ãã§ãã¯ãè¡ããªãããã«ãããã¨ãã§ããã
+
+ãé¢æ°åã
+
+ã»é¢æ°åã«é¢æ°ããå¶é
+
+  é¢æ°å initialize ã¯ ruby ã§æ¢å®ã®ã¡ã½ããåã¨éè¤ãããããinitialize_cell
+ ã«ç½®æãããã
+
+  initialize ã¨ initialize_cell ã®ä¸¡æ¹ã signature å
+ã«å­å¨ããå ´åãã¨ã©ã¼ã¨
+  ãªããã¨ã©ã¼ãè§£æ¶ããã«ã¯ãå°ãªãã¨ãä¸æ¹ã®ååãå¤æ´ããå¿
+è¦ãããã
+
+ãæ»ãå¤ã
+
+æ»ãå¤ã§æ±ããã®ã¯ãä»¥ä¸ã®åã«éãããã
+
+   void, bool_t, char_t, intN_t, float32_t, double64_t
+   int, short, long, char
+   å
+ã®åãããããã§ãã typedef ãããå
+
+ãå¼æ°ã
+
+ã»é åºã®éãå¯¾å¿ãã mruby ã®åï¼ã¯ã©ã¹ï¼ã®å¤ãå¼æ°ã¨ãã¦æ¸¡ã
+ã»æå®å¯è½ãªåºæ¬æå®å­  in, inout, out  (send/receive ã¯ä¸å¯)
+ã»ä¾å¤ã®çºç
+  ã»æ´æ°ã®å¤ããå¼æ°ã®åã®ç¯å²ãè¶
+ãã¦ããå ´åãä¾å¤ãçºçããã
+    ç¡ç¬¦å·åã®å ´åãè² ã®å¤ãåããã¨ã¯ã§ããªãããã ããmrb_int ã¨åã
+    ã¾ãã¯ããä»¥ä¸ã®ãµã¤ãºã®å ´åã«ã¯ãè² ã®å¤ãæå®ããã¦ãä¾å¤ã¨ã¯ããª
+    ãããããªãã¨æä¸ä½ãããã 1 ã®å¤ãå
+¥åã§ããªãããã
+    char_t (char) ã¯ç¡ç¬¦å·ã¨è¦ãªãããã
+    ãªã uintptr_t ã« 0x80000000 ã«ãæ¸¡ãéã« RangeError ä¾å¤ãçºçã
+    ãããããã¯ mruby ã«ãããã®ã§ãããTECS ã«ããå¶éã§ã¯ãªã
+  ã»ãã¤ã³ã¿åãæ§é ä½åã«å¯¾å¿ãã mruby ã®å(ã¯ã©ã¹) ã¨ä¸è´ããªã
+  ã»size_is, string ã®ãµã¤ãºãå°ãã
+
+ãåèã
+
+ TECSPointer.txt
+
+  ä»¥ä¸ã® mruby ã¯ã©ã¹ãããªãã¡ TECS ã®ãã¤ã³ã¿å¤ãæ±ãããã®ã¯ã©ã¹ã«
+  ã¤ãã¦ã®èª¬æã
+ããããã®ã¯ã©ã¹ã¯å¿
+è¦ã«å¿ãã¦çæããããå¼æ°ã¨ãã¦ä½¿ç¨ããã¦ããªãã¯
+  ã©ã¹ã¯çæãããªãã
+
+  TECS::Int8Pointer,   TECS::Int16Pointer,   TECS::Int32Pointer
+  TECS::Int64Pointer,  TECS::UInt64Pointer
+  TECS::UInt8Pointer,  TECS::UInt16Pointer,  TECS::UInt32Pointer
+  TECS::CharPointer,   TECS::SCharPointer,   TECS::UCharPointer
+  TECS::IntPointer,    TECS::ShortPointer,   TECS::LongPointer
+  TECS::UIntPointer,   TECS::UShortPointer,  TECS::ULongPointer
+  TECS::BoolPointer,   TECS::Float32Pointer, TECS::Double64Pointer
+
+ TECSStruct.txt
+
+  ä»¥ä¸ã® mruby ã¯ã©ã¹ãããªãã¡ TECS ã®æ§é ä½ï¼ãã¤ã³ã¿ï¼å¤ãæ±ããã
+  ã®ã¯ã©ã¹ã«ã¤ãã¦ã®èª¬æã
+
+  TECS::StructTAG
+
+ãTECS CDLã«ããè¨è¿°ã
+
+ ããªãã¸ãã©ã°ã¤ã³ã«ãããããªãã¸ã»ã«ã¿ã¤ããèªåçæãããã
+ ããªãã¸ã»ã«ã¯ãCDL ã«è¨è¿°ãã¦è¨­ç½®ããå¿
+è¦ããã
+
+ã»ããªãã¸ãã©ã°ã¤ã³ã®å¼åºã
+
+mruby=>TECS ããªãã¸ãã©ã°ã¤ã³ã¯ãã·ã°ããã£ãã©ã°ã¤ã³ã§ãããCDL ä¸ã®ä»¥ä¸ã®ã
+ããªè¨è¿°ã«ãããmruby=>TECS ããªãã¸ãã©ã°ã¤ã³ãå¼ã³åºãã
+
+  ex)
+    generate( MrubyBridgePlugin, sSignature, "" );
+
+ ã·ã°ããã£ sSignature ã¯ããã®è¨è¿°ãããåã«å®ç¾©ããã¦ããªãã¦ã¯ãªããªãã
+ ãã® generate ã®è¨è¿°ã«ãããæ¬¡ã®ãããªããªãã¸ã»ã«ã¿ã¤ããçæãããã
+
+generate ã®ç¬¬3å¼æ°ã¯ããã©ã°ã¤ã³å¼æ°ï¼ãªãã·ã§ã³ï¼ã§ããã
+
+  ignoreUnsigned   true ãæå®ããã¨ç¡ç¬¦å·æ´æ°ã¸ã®ãã¤ã³ã¿åã«æç¬¦å·ã®ã
+                   ã¤ã³ã¿ã¯ã©ã¹ãä½¿ç¨ããï¼ã¡ã¢ãªãç¯ç´ã§ããï¼
+                   ããã©ã«ãã¯ false ã§ããã
+  include          ããªãã¸ã«å«ããé¢æ°ãæå®ãããexclude ã¨åææå®ä¸å¯ã
+  exclude          ããªãã¸ã«å«ããé¢æ°ãæå®ãããinclude ã¨åææå®ä¸å¯ã
+
+  ex)
+    generate( MrubyBridgePlugin, sSignature, "exclude=fun99" );
+
+å¤ãã®é¢æ°ãæå®ããå ´åãä»¥ä¸ã®ããã«ãåå²ããæå­åã®é£æ¥ã¨ãã¦å¸«å®
+ãããã¨ãã§ãã¾ãã
+
+  ex)
+    generate( MrubyBridgePlugin, sSignature,
+        "ignoreUnsigned=true, "
+        "include='func1,func2', "
+        "include='func3,func4', "
+     );
+
+ã»ããªãã¸ã»ã«ã¿ã¤ã
+
+ ããªãã¸ã»ã«ã¿ã¤ãã¯ããã¼ã ã¹ãã¼ã¹ nMruby ã®ä¸ã«ä½ããããããªãã¸
+ã»ã«ã¿ã¤ãã®ååã¯ãã·ã°ããã£åã« 't' ãåç½®ããããã®ã§ãããä»¥ä¸ã¯ã
+ããªãã¸ãã©ã°ã¤ã³ã«ããèªåçæãããã»ã«ã¿ã¤ãã®ã³ã¼ãã®ä¾ã§ãããã·
+ã°ããã£ sSignature ã«å¯¾ããããªãã¸ã»ã«ã¿ã¤ãåã¯ tsSignature ã§ããã
+å¼ã³å£cTECS ãæã¤ã
+
+  ex) èªåçæããã CDL ã³ã¼ãï¼å
+é¨ã§çæãããè§£éãããï¼
+
+   namespace nMruby {
+     celltype SSignature{
+       call sSignature cTECS;
+     };
+   };
+
+ã»ããªãã¸ã»ã«ã®è¨­ç½®
+
+ ããªãã¸ã»ã«ã¯ãããªãã¸ã»ã«ã¿ã¤ãã®ã»ã«ã¨ãã¦çæãããããªãã¸ã»ã«
+ ã®è¨­ç½®ã¯ CDL ã®è¨è¿°è
+ãè¡ããã®ã§ãããããªãã¸ã»ã«ã®å¼ã³å£ cTECS ã 
+ mRuby ããå¼ã³åºãããã»ã«ã¸çµåããã
+
+  ex) ããªãã¸ã»ã«ãè¨­ç½®ãã CDL è¨è¿°
+
+   cell nMruby::tsSignature BridgeCell {
+     cTECS = Cell.eEnt;
+   };
+
+  ex) ããªãã¸ã»ã«ãè¨­ç½®ãã CDL è¨è¿°(VM åæå®ãã)
+
+   cell nMruby::tsSignature BridgeCell {
+     cTECS = Cell.eEnt;
+	 VMname = "VM2";
+   };
+
+  VMname ã¯ mruby VM ã®ã»ã«ã®ååã®æå®ã§ãããVMname ãæå®ããªãå ´åã
+  "VM" ãä»®å®ããããVMname ã¯ãå®éã«ã¯ãVM_TECSInitializer ãªã©ã®ã
+  ãã«ãããªãã¸ãç»é²ããã»ã«ã®ãã»ã«åã«ç¨ãããããtecsgen å®è¡æã«
+  ä»¥ä¸ã®ãããªã¡ãã»ã¼ã¸ãåºåããããåãå£ 
+  VM_TECSInitializer.eInitialize ã¸ VM ã®åæåç¨å¼ã³å£ããçµåããã
+
+   MrubyBridgePlugin: join your VMs cInitialize to VM_TECSInitializer.eInitialize
+
+ãmruby ã³ã¼ãã
+
+ ããªãã¸ãã©ã°ã¤ã³ãé©ç¨ãããã·ã°ããã£ã«å¯¾å¿ãã mruby ã¯ã©ã¹ãçæ
+ ãããããããããªãã¸ã¯ã©ã¹ã¨å¼ã¶ã
+ ããªãã¸ã¯ã©ã¹ãéãã¦ã»ã«ã®åãå£é¢æ°ãå¼ã³åºããã¨ãã§ããã
+
+ã»ããªãã¸ã¯ã©ã¹
+
+ ããªãã¸ã¯ã©ã¹ã¯ãã¢ã¸ã¥ã¼ã« TECS ã®ä¸ã«ä½æããããããªãã¸ã¯ã©ã¹ã®
+ ååã¯ãã·ã°ããã£åã« 'T' ãåç½®ããããã®ã¨ãªãã
+
+ ex)  TECS::TsSignature
+
+ã»ããªãã¸ã®ã¤ã³ã¹ã¿ã³ã¹
+
+  ããªãã¸ã¯ã©ã¹ã«ã¦ãããªãã¸ã»ã«åãå¼æ°ã¨ãã¦ new ãããã¨ã§ãããªã
+  ã¸ã¯ã©ã¹ã®ã¤ã³ã¹ã¿ã³ã¹ãçæããããããªãã¸ã¯ã©ã¹ã®ã¤ã³ã¹ã¿ã³ã¹ã®ã
+  ã¨ããç­ããããªãã¸ã®ã¤ã³ã¹ã³ã¿ã³ã¹ã¨ãå¼ã¶ãããªãã¸ã®ã¤ã³ã¹ã¿ã³ã¹
+  ã¯ãããªãã¸ã»ã«ã¸ã®ãã¤ã³ã¿æ
+å ±ãä¿æããã ãã§ãããåä¸ã®ããªãã¸
+  ã®ã¤ã³ã¹ã¿ã³ã¹ã¯ä½åº¦ã§ãçæãããã¨ãã§ããã
+
+ ex)  brdige = TECS::TsSignature.new( "CellName" )
+
+ãæ®èª²é¡ã
+
+[æ¸] æ´æ°åã® unsigned ã®æ±ã
+   ã­ã£ã¹ãããã¦ããã®ã§ãã³ã³ãã¤ã«ã¯è­¦åãªãéãã
+   å¤ã®ç¯å²ãã§ãã¯ã¨æ´åãã¦ããªãã
+   ä»¥ä¸ãæ°ãã«è¨­ãããã
+   UInt8Pointer, UInt16Pointer, UInt32Pointer, UInt64Pointer
+   UIntPointer, UShortPointer, ULongPointer, UCharPointer, SCharPointer, 
+
+[æ¸] å¤ã®ç¯å²ã®ãã§ãã¯
+   TECSPointer, TECSStruct ã§ã¯æ´æ°å¤ãè¨­å®ããéã«ãç¯å²ãã§ãã¯ãããã
+   ã¡ã½ããã¸ã®ç´æ¥ã®å¼æ°ã¯ãã§ãã¯ãããªãã
+
+[æ¸] ç¾ç¶ã® so ã¨ãã¦ã®å®è£
+ã¯ãããã
+   éçã« mruby ã®æ¬ä½ãçµåããã¦ããã
+
+[æ¸] ãã¤ã³ã¿åãæ±ãã¯ã©ã¹ãå¤ããã
+   ä½¿ç¨ããã¯ã©ã¹ã ãã­ã¼ããããåæåãããä»çµã¿ãæ¬²ããã
+
+ã»ä»¥ä¸ã®æ¹æ³ã§ããªãã¸ãå²ãä»ãã¦ãããã
+    bridge = TsSample.new( "SimpleBridge" )
+ãä»¥ä¸ã®ããã«ãå®æ°ã¨ãã¦æ±ããã¨ãã§ããæ¹ãã¹ãã¼ãã§ããã
+    bridge = TECS::SimpleBridge
+  (ç¾ç¶ã®æ¹ããããªãã¸ã®ã»ã«ã¿ã¤ãããããç¹ãåªãã¦ãã)
+  â ããå®æ°ã¨ãã¦æ±ãã¨ãã¦ãå²ä»ãã C ã§è¡ãã ruby ã³ã¼ãã§è¡ãã
+     ã®éãã§ãããªããä»¥ä¸ã«ããã©ããã¼ã¯ã©ã¹ã«ããå®æ°ã®åæåãè¡
+     ãã°ããã
+  â å®æ°ã¨ãã¦æ±ãã¨ããªãã¸ã§ã¯ããæåããæå¾ã¾ã§æ¶ããªãã¨ããå
+     é¡ããã(ããã§ãå°éã§ããã)
+
+ã»ä¸è¨ã«é¢é£ãã¦ãVM ãç°ãªãå ´åã«ãä»ã® VM ã«å²ãä»ããããªãã¸åã
+  è¦ãã¦ãã¾ããã¢ã¯ã»ã¹å¶éãååã§ãªãã
+  ããªãã¸åã®ã¢ã¯ã»ã¹å¶éãå®ç¾ããã«ã¯ãVM ãè­å¥ããæ
+å ±ãå¿
+è¦ã«ãª
+  ããmrb_state ã« p_cellcb ãå ããæ¹æ³ãmrb_stateèªèº«ã§åºå¥ããæ¹æ³
+  ãèãããããè¦æ¤è¨ã
+  ãªããã»ã«ã¿ã¤ãåä½ã§ã®ã¢ã¯ã»ã¹å¶ éã¯ã§ãã¦ãã(ã¦ãã¦ããªãã®ã¯ã
+  åãã»ã«ã¿ã¤ãã§è¤æ°ã®ããªãã¸ã»ã«ãããå ´åã«ãããªãã¸åã®ã¢ã¯ã»ã¹
+  å¶é)ã
+
+ã»typedef ãããååã§ã¢ã¯ã»ã¹ã§ããã¨ä¾¿å©ã§ãã
+  TECSPointer ã TECSStruct ã®ã¯ã©ã¹ã«å¯¾ãã alias ã«ãããå¥åã¨ãã¦
+  ã¢ã¯ã»ã¹ã§ããã¨ããã
+   â ã¨ãããããMrubyBridgePlugin ã®ã¡ãã»ã¼ã¸ã¨ãã¦ãããããã«ããã
+
+ã»send/receive ã¸ã®å¯¾å¿
+  mruby ã¨å
+±éã®ã¢ã­ã±ã¼ã¿ãæå®å¯è½ã¨ãã (ã¢ã­ã±ã¼ã¿ã³ã³ãã¼ã¿ãã©ã°ã¤ã³ãæ°è¦ã«è¨­ãã¦ã¯?)
+
+ã»æ§é ä½ã¡ã³ãã¼ã®åå¶éã®ç·©å
+   strign or size_is æå®ããã char* ãªã©
+
+ã»ruby ããããã­ã°ã©ã ãã mruby â TECS ããªãã¸ã®ã¯ã©ã¹ã¸ã®èªåå¤æããã©ããã¼ã¯ã©ã¹ã®çæ
+  (ruby's Array => TECS::Pointer, ruby's Struct => TECS::StructTAG)
+
+[æ¸]ããªãã¸ã¯ã©ã¹ã® new ã§ã»ã«ãè¦ã¤ãããªãã£ãå ´åãruby ä¾å¤ãçºçãããã
+  ããã free ããæ®µéã§ SEGV ãçºçãããã DATA_SET ãæ©ãã«è¡ãããã«å¤æ´ã
+  ãªããåã¡ã½ããã®é¢æ°ã§ DATA_PTR ã null ãã©ããããã§ãã¯ããªããã
+  ä¾å¤ãçºçãããã¨ã«ããä¸å®å
+¨ãªããªãã¸ã¯å¤æ°ã«è¨æ¶ãããªãï¼ã¯ãï¼
+  ãããåé¡ãªãã
+
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyTECSPointer.txt
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyTECSPointer.txt	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyTECSPointer.txt	(revision 374)
@@ -0,0 +1,109 @@
+TECS::Int8Pointer       TECS::UInt8Pointer
+TECS::Int16Pointer      TECS::UInt16Pointer
+TECS::Int32Pointer      TECS::UInt32Pointer
+TECS::Int64Pointer      TECS::UInt64Pointer
+TECS::CharPointer       TECS::SCharPointer      TECS::UCharPointer
+TECS::IntPointer	    TECS::UIntPointer
+TECS::ShortPointer	    TECS::UShortPointer
+TECS::LongPointer       TECS::ULongPointer
+TECS::BoolPointer
+TECS::Float32Pointer
+TECS::Double64Pointer
+
+TECS ã®ãã¤ã³ã¿åã®æ´æ°ãã¼ã¿ãæµ®åå°æ°ç¹ãã¼ã¿ãæå­ãã¼ã¿ãæ±ããã
+ã®è¨æ¶åãæ±ãã¾ãããããã®ã¯ã©ã¹ã¯ãã·ã°ããã£ã§ä½¿ç¨ããã¦ãããã®ã 
+MrubyBridgePlugin ãã©ã°ã¤ã³ãèªåå¤å¥ãã¦çæãã¾ãã
+
+ãã¤ã³ã¿å¤ãã®ãã®ãæ¸¡ãã«ã¯ intptr_t åã¨ãã¦æ¸¡ãã®ãå¦¥å½ã§ãã
+
+C è¨èªã®åã¨ã¯ãä»¥ä¸ã®ããã«å¯¾å¿ãã¾ãã
+
+   int8_t                 TECS::Int8Pointer
+   int16_t                TECS::Int16Pointer
+   int32_t                TECS::Int32Pointer
+   int64_t                TECS::Int64Pointer
+   char_t                 TECS::CharPointer
+   schar_t                TECS::SCharPointer
+   uchar_t                TECS::UCharPointer
+   uint8_t                TECS::UInt8Pointer
+   uint16_t               TECS::UInt16Pointer
+   uint32_t               TECS::UInt32Pointer
+   uint64_t               TECS::UInt64Pointer
+   bool_t                 TECS::BoolPointer
+   float32_t              TECS::Float32Pointer
+   double64_t             TECS::Double64Pointer
+
+ éæ¨å¥¨ã®å
+   char                   TECS::CharPointer
+   int                    TECS::IntPointer
+   short                  TECS::ShortPointer
+   long                   TECS::LongPointer
+   signed char            TECS::SCharPointer
+   unsigned char          TECS::UCharPointer
+   unsigned int           TECS::UIntPointer
+   unsigned short         TECS::UShortPointer
+   unsigned long          TECS::ULongPointer
+   float                  TECS::Float32Pointer
+   double                 TECS::Double64Pointer
+
+char, signed char, unsgined char ã¯ char_t, schar_t, uchar_t ã¨è¦ãªããã¾ãã
+
+ãåèã
+ã¿ã¼ã²ããç°å¢ã«ããã¦ char, singed char, unsigned char ã®ãµã¤ãºã 1 ãã¤ãã§ã¯ç¡ãå ´åã«ã¯ãç¸éãçããã
+
+== ã¹ã¼ãã¼ã¯ã©ã¹ ==
+
+Object
+
+== ã¯ã©ã¹ã¡ã½ãã ==
+
+new( size )
+
+  size ã®å¤§ãããæã¤è¨æ¶åãæããã¤ã³ã¿ãçæãã¦è¿ãã¾ãã
+  size ã®åä½ã¯ãè¦ç´ ã®åæ°ã§ãã
+
+== ã¡ã½ãã ==
+
+self[ nth ]
+
+  nth çªç®ã®è¦ç´ ãè¿ãã¾ããnth ã¯ 0..(length-1) ã®æ´æ°ã§ãã
+  '=' ã®å·¦è¾ºã§ã¯ãnth çªç®ã®è¦ç´ ãå³è¾ºã®å¤ã«ç½®ãæãã¾ãã
+
+  nth ã«æ´æ°ã¾ãã¯æµ®åå°æ°ä»¥å¤ãæ¸¡ããå ´åãä¾å¤ãçºçãã¾ãã
+
+self[ nth ] = val
+
+  æ´æ°åã®ãã¤ã³ã¿ã®å ´åãå¤ã®ç¯å²ããã§ãã¯ããã¾ãã
+  val ã®å¤ãç¯å²ãè¶
+ããå ´åãä¾å¤ãçºçãã¾ãã
+
+value
+
+  ãã¤ã³ã¿ã®æãå
+ã®å¤ãåãåºãã¾ãã
+  self[0] ã¨åãã§ãã
+
+value = val
+
+  ãã¤ã³ã¿ã®æãå
+ã«å¤ãè¨­å®ãã¾ãã
+  self[0] = val ã¨åãã§ãã
+
+length
+size
+
+  ãã¤ã³ã¿ãæãè¦ç´ ã®åæ°ãè¿ãã¾ãã
+
+to_s
+
+  CharPointer ã¯ã©ã¹ã§ã®ã¿ä½¿ç¨ã§ãã¾ãã
+  mruby ã® String ã¯ã©ã¹ã®ã¤ã³ã¹ã¿ã³ã¹ã«å¤æãã¦è¿ãã¾ãã
+
+from_s
+
+  CharPointer ã¯ã©ã¹ã§ã®ã¿ä½¿ç¨ã§ãã¾ãã
+  mruby ã®æå­åãã CharPointer ã®æãè¨æ¶åã«æå­åãã³ãã¼ãã¾ãã
+  
+  new ã®éã«ç¢ºä¿ãããè¨æ¶åãç¨ãããã¾ããè¨æ¶åã®å¤§ãããæå­åãããç­ãå ´åã«ã¯ãè¨æ¶åã®å¤§ããã«åã¾ãããã«ã³ãã¼ããã¾ãã
+  è¨æ¶åãããæå­åãé·ãå ´åãè¨æ¶åã®æ«å°¾ã«çµç«¯æå­ '\0' ã¯ç½®ããã¾ããã
+
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyTECSStruct.txt
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyTECSStruct.txt	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyTECSStruct.txt	(revision 374)
@@ -0,0 +1,24 @@
+TECS::StructTAG
+
+  C è¨èªã®æ§é ä½ãæ±ãããã®ã¯ã©ã¹ã§ãããsignature ã«ç¾ããæ§é ä½ã«åããã¦ MrubyBridgePlugin ã«ããçæããã¾ãã
+  TAG ã®é¨åã¯ãæ§é ä½ã®ã¿ã°åã«ç½®ãæãã¾ãã
+
+== ã¹ã¼ãã¼ã¯ã©ã¹ ==
+
+Object
+
+== ã¯ã©ã¹ã¡ã½ãã ==
+
+new()
+
+== ã¡ã½ãã ==
+
+MEMBER
+
+  æ§é ä½ã¡ã³ãã®å¤ãèª­ã¿åºãã¾ãã
+  MEMBER ã¯ã¡ã³ãåã«ç½®ãæãã¾ãã
+
+MEMBER = val
+
+  æ§é ä½ã¡ã³ãã®å¤ãæ¸ãè¾¼ã¿ã¾ãã
+  MEMBER ã¯ã¡ã³ãåã«ç½®ãæãã¾ãã
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyVMs.cdl
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyVMs.cdl	(revision 352)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/mrubyVMs.cdl	(revision 374)
@@ -37,5 +37,6 @@
 
 /*
- * tools/mruby/mruby.c から cInit_initializeBridge( mrb ) を呼び出すように変更したもの
+ * POSIX 環境用の VM
+ * mrbgems の mrbgems/mruby-bin-mruby/tools/mruby/mruby.c を参考に作成したもの
  */
 namespace nMruby{
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyCyclicTaskBody.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyCyclicTaskBody.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyCyclicTaskBody.c	(revision 374)
@@ -0,0 +1,105 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cMrubyVM signature: nMruby_sMrubyVM context:task
+ *   bool_t         cMrubyVM_initialize( );
+ *   bool_t         cMrubyVM_run( );
+ *   void           cMrubyVM_funcall( const char_t* name );
+ *   void           cMrubyVM_finalize( );
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include "nMruby_tMrubyCyclicTaskBody_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eMrubyBody
+ * entry port: eMrubyBody
+ * signature:  sTaskBody
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eMrubyBody_main
+ * name:         eMrubyBody_main
+ * global_name:  nMruby_tMrubyCyclicTaskBody_eMrubyBody_main
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eMrubyBody_main(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( ! VAR_b_init ){
+      cMrubyVM_initialize( );
+      VAR_b_init = true;
+  }
+  cMrubyVM_run( );
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyProc.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyProc.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyProc.c	(revision 374)
@@ -0,0 +1,186 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/*
+ * ä»¥åã® nMruby_tMrubyProc.c ã¯ãmruby ã®æ¬ä½ã«å«ã¾ãã¦ãã 
+ *    mrbgems/mruby-bin-mruby/tools/mruby/mruby.c
+ * ããã¼ã¹ã« TECS ã®ã³ã¼ããè¶³ãã¦ããããTOPPERS ã©ã¤ã»ã³ã¹ã¨ç°ãªããã
+ * æ°ãã«æ¸ãä¸ããããï¼å°ããªã³ã¼ãã®ãããæ¦ã­ä¼¼ããããªãã®ã«ãªããã
+ */
+
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include "mruby.h"
+#include "mruby/string.h"
+#include "mruby/array.h"
+#include "mruby/compile.h"
+#include "mruby/dump.h"
+#include "mruby/variable.h"
+
+/* #[<PREAMBLE>]#
+ * Don't edit the comments between #[<...>]# and #[</...>]#
+ * These comment are used by tecsmerege when merging.
+ *
+ * attr access macro #_CAAM_#
+ * mrb              mrb_state*       VAR_mrb         
+ *
+ * call port function #_TCPF_#
+ * call port: cInit signature: nMruby_sInitializeBridge context:task optional:true
+ *   bool_t     is_cInit_joined()                     check if joined
+ *   void           cInit_initializeBridge( const mrb_state* mrb );
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include "nMruby_tMrubyProc_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eMain
+ * entry port: eMain
+ * signature:  nPosix_sMain
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eMain_main
+ * name:         eMain_main
+ * global_name:  nMruby_tMrubyProc_eMain_main
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+int
+eMain_main(CELLIDX idx, int argc, const char** argv)
+{
+	CELLCB	*p_cellcb;
+  mrb_state *mrb;
+  mrbc_context* context;
+  if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+      return -1;
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if (argc != 2) {
+      printf("usage: %s script.rb\n", argv[0]);
+      goto error_return;
+  }
+  mrb = mrb_open();
+  if( mrb == 0 ){
+      printf("%s: mrb_open() failed\n", argv[0]);
+      goto error_return;
+  }
+  context = mrbc_context_new(mrb);
+  if (context == 0) {
+      printf("%s: mrbc_context_new() failed\n", argv[0]);
+      goto error_close;
+  }
+
+  /*--------   ARGV   ----------*/
+  {
+      mrb_value ARGV = mrb_ary_new_capa(mrb, argc);
+      int  i;
+      for (i = 0; i < argc; i++) {
+          mrb_ary_push(mrb, ARGV, mrb_str_new_cstr(mrb, argv[i]));
+      }
+      mrb_define_global_const(mrb, "ARGV", ARGV);
+  }
+  /*--------   $0   ----------*/
+  {
+      mrb_sym zero_sym = mrb_intern_lit(mrb, "$0");
+      mrbc_filename(mrb, context, argv[0]);
+      mrb_gv_set(mrb, zero_sym, mrb_str_new_cstr(mrb, argv[0]));
+  }
+
+  /* ------- register TECS bridge classes -------*/
+  if (is_cInit_joined()) {
+      cInit_initializeBridge(mrb);
+  }
+
+  /*--------  load .rb file -------*/
+  {
+      FILE *file = fopen(argv[1], "r");
+      if (file == NULL) {
+          printf("file not found: %s\n", argv[1]);
+          goto error_free;
+      }
+
+      mrb_value val = mrb_load_file_cxt(mrb, file, context);
+      if (mrb->exc) {
+          if(! mrb_undef_p(val)){
+              mrb_print_error(mrb);
+          }
+      }
+  }
+
+  /*---------- success case --------*/
+  mrbc_context_free(mrb, context);
+  mrb_close( mrb );
+  return 0;
+
+  /*---------- error case ----------*/
+error_free:
+  mrbc_context_free(mrb, context);
+error_close:
+  mrb_close( mrb );
+error_return:
+
+  return -1;
+}
+
+/* #[<POSTAMBLE>]#
+ *   Put non-entry functions below.
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyProc_1_0.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyProc_1_0.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyProc_1_0.c	(revision 374)
@@ -0,0 +1,306 @@
+/*
+ * This file comes from mruby. (renamed from tools/mruby/mruby.c)
+ * This file is distributed under ruby's license. (not under TOPPERS license)
+ *   see https://github.com/mruby/mruby
+ * A little modification is done to to call initializer registering TECS components.
+ *
+ * ãã®ãã¡ã¤ã«ã¯ãmruby ã®ãã®ã§ãã
+ * mruby ã®ã©ã¤ã»ã³ã¹ã®ãã¨ã§ãé
+å¸ããã¾ãã(TOPPERS ã©ã¤ã»ã³ã¹ã§ã¯ããã¾ãã)
+ *  åç
+§ï¼  https://github.com/mruby/mruby
+ * TECS ã³ã³ãã¼ãã³ããç»é²ããåæåå­ãå¼ã¶ãããå°ãã®ä¿®æ­£ããªããã¦ãã¾ãã
+ */
+
+#include "nMruby_tMrubyProc_tecsgen.h"
+
+#include "mruby.h"
+#include "mruby/proc.h"
+#include "mruby/array.h"
+#include "mruby/string.h"
+#include "mruby/compile.h"
+#include "mruby/dump.h"
+#include "mruby/variable.h"
+#include <stdio.h>
+#include <string.h>
+
+#ifndef ENABLE_STDIO
+static void
+p(mrb_state *mrb, mrb_value obj)
+{
+  obj = mrb_funcall(mrb, obj, "inspect", 0);
+  fwrite(RSTRING_PTR(obj), RSTRING_LEN(obj), 1, stdout);
+  putc('\n', stdout);
+}
+#else
+#define p(mrb,obj) mrb_p(mrb,obj)
+#endif
+
+void mrb_show_version(mrb_state *);
+void mrb_show_copyright(mrb_state *);
+
+struct _args {
+  FILE *rfp;
+  char* cmdline;
+  int fname        : 1;
+  int mrbfile      : 1;
+  int check_syntax : 1;
+  int verbose      : 1;
+  int argc;
+  char** argv;
+};
+
+static void
+usage(const char *name)
+{
+  static const char *const usage_msg[] = {
+  "switches:",
+  "-b           load and execute RiteBinary (mrb) file",
+  "-c           check syntax only",
+  "-e 'command' one line of script",
+  "-v           print version number, then run in verbose mode",
+  "--verbose    run in verbose mode",
+  "--version    print the version",
+  "--copyright  print the copyright",
+  NULL
+  };
+  const char *const *p = usage_msg;
+
+  printf("Usage: %s [switches] programfile\n", name);
+  while(*p)
+  printf("  %s\n", *p++);
+}
+
+static int
+parse_args(mrb_state *mrb, int argc, char **argv, struct _args *args)
+{
+  char **origargv = argv;
+  static const struct _args args_zero = { 0 };
+
+  *args = args_zero;
+
+  for (argc--,argv++; argc > 0; argc--,argv++) {
+    char *item;
+    if (argv[0][0] != '-') break;
+
+    if (strlen(*argv) <= 1) {
+      argc--; argv++;
+      args->rfp = stdin;
+      break;
+    }
+
+    item = argv[0] + 1;
+    switch (*item++) {
+    case 'b':
+      args->mrbfile = 1;
+      break;
+    case 'c':
+      args->check_syntax = 1;
+      break;
+    case 'e':
+      if (item[0]) {
+        goto append_cmdline;
+      }
+      else if (argc > 1) {
+        argc--; argv++;
+        item = argv[0];
+append_cmdline:
+        if (!args->cmdline) {
+          char *buf;
+
+          buf = (char *)mrb_malloc(mrb, strlen(item)+1);
+          strcpy(buf, item);
+          args->cmdline = buf;
+        }
+        else {
+          args->cmdline = (char *)mrb_realloc(mrb, args->cmdline, strlen(args->cmdline)+strlen(item)+2);
+          strcat(args->cmdline, "\n");
+          strcat(args->cmdline, item);
+        }
+      }
+      else {
+        printf("%s: No code specified for -e\n", *origargv);
+        return 0;
+      }
+      break;
+    case 'v':
+      mrb_show_version(mrb);
+      args->verbose = 1;
+      break;
+    case '-':
+      if (strcmp((*argv) + 2, "version") == 0) {
+        mrb_show_version(mrb);
+        exit(0);
+      }
+      else if (strcmp((*argv) + 2, "verbose") == 0) {
+        args->verbose = 1;
+        break;
+      }
+      else if (strcmp((*argv) + 2, "copyright") == 0) {
+        mrb_show_copyright(mrb);
+        exit(0);
+      }
+      else return -3;
+      return 0;
+    default:
+      return -4;
+    }
+  }
+
+  if (args->rfp == NULL && args->cmdline == NULL) {
+    if (*argv == NULL) args->rfp = stdin;
+    else {
+      args->rfp = fopen(argv[0], args->mrbfile ? "rb" : "r");
+      if (args->rfp == NULL) {
+        printf("%s: Cannot open program file. (%s)\n", *origargv, *argv);
+        return 0;
+      }
+      args->fname = 1;
+      args->cmdline = argv[0];
+      argc--; argv++;
+    }
+  }
+  args->argv = (char **)mrb_realloc(mrb, args->argv, sizeof(char*) * (argc + 1));
+  memcpy(args->argv, argv, (argc+1) * sizeof(char*));
+  args->argc = argc;
+
+  return 0;
+}
+
+static void
+cleanup(mrb_state *mrb, struct _args *args)
+{
+  if (args->rfp && args->rfp != stdin)
+    fclose(args->rfp);
+  if (args->cmdline && !args->fname)
+    mrb_free(mrb, args->cmdline);
+  if (args->argv)
+    mrb_free(mrb, args->argv);
+  mrb_close(mrb);
+}
+
+static void
+showcallinfo(mrb_state *mrb)
+{
+  mrb_callinfo *ci;
+  mrb_int ciidx;
+  const char *filename, *method, *sep;
+  int i, line;
+
+  printf("trace:\n");
+  ciidx = mrb_fixnum(mrb_obj_iv_get(mrb, mrb->exc, mrb_intern(mrb, "ciidx")));
+  if (ciidx >= mrb->ciend - mrb->cibase)
+    ciidx = 10; /* ciidx is broken... */
+
+  for (i = ciidx; i >= 0; i--) {
+    ci = &mrb->cibase[i];
+    filename = "(unknown)";
+    line = -1;
+
+    if (MRB_PROC_CFUNC_P(ci->proc)) {
+      continue;
+    }
+    else {
+      mrb_irep *irep = ci->proc->body.irep;
+      if (irep->filename != NULL)
+        filename = irep->filename;
+      if (irep->lines != NULL && i+1 <= ciidx) {
+        mrb_code *pc = mrb->cibase[i+1].pc;
+        if (irep->iseq <= pc && pc < irep->iseq + irep->ilen) {
+          line = irep->lines[pc - irep->iseq - 1];
+        }
+      }
+    }
+    if (ci->target_class == ci->proc->target_class)
+      sep = ".";
+    else
+      sep = "#";
+
+    method = mrb_sym2name(mrb, ci->mid);
+    printf("\t[%d] %s:%d%s%s%s%s\n",
+    	   i, filename, line,
+	   method ? ":in " : "",
+	   method ? mrb_class_name(mrb, ci->proc->target_class) : "",
+	   method ? sep : "",
+	   method ? method : "");
+  }
+}
+
+int
+eMain_main( CELLIDX idx, int argc, const char **argv)
+{
+  CELLCB   *p_cellcb = GET_CELLCB( idx );
+  mrb_state *mrb = mrb_open();
+  int n = -1;
+  int i;
+  struct _args args;
+  mrb_value ARGV;
+
+  cInit_initializeBridge( mrb );
+
+  if (mrb == NULL) {
+    fprintf(stderr, "Invalid mrb_state, exiting mruby\n");
+    return EXIT_FAILURE;
+  }
+
+  n = parse_args(mrb, argc, (char **)argv, &args);
+  if (n < 0 || (args.cmdline == NULL && args.rfp == NULL)) {
+    cleanup(mrb, &args);
+    usage(argv[0]);
+    return n;
+  }
+
+  ARGV = mrb_ary_new_capa(mrb, args.argc);
+  for (i = 0; i < args.argc; i++) {
+    mrb_ary_push(mrb, ARGV, mrb_str_new(mrb, args.argv[i], strlen(args.argv[i])));
+  }
+  mrb_define_global_const(mrb, "ARGV", ARGV);
+
+  if (args.mrbfile) {
+    n = mrb_load_irep(mrb, args.rfp);
+    if (n < 0) {
+      fprintf(stderr, "failed to load mrb file: %s\n", args.cmdline);
+    }
+    else if (!args.check_syntax) {
+      mrb_run(mrb, mrb_proc_new(mrb, mrb->irep[n]), mrb_top_self(mrb));
+      n = 0;
+      if (mrb->exc) {
+        showcallinfo(mrb);
+        p(mrb, mrb_obj_value(mrb->exc));
+        n = -1;
+      }
+    }
+  }
+  else {
+    mrbc_context *c = mrbc_context_new(mrb);
+    mrb_value v;
+
+    if (args.verbose)
+      c->dump_result = 1;
+    if (args.check_syntax)
+      c->no_exec = 1;
+
+    if (args.rfp) {
+      mrbc_filename(mrb, c, args.cmdline ? args.cmdline : "-");
+      v = mrb_load_file_cxt(mrb, args.rfp, c);
+    }
+    else {
+      mrbc_filename(mrb, c, "-e");
+      v = mrb_load_string_cxt(mrb, args.cmdline, c);
+    }
+    mrbc_context_free(mrb, c);
+    if (mrb->exc) {
+      if (!mrb_undef_p(v)) {
+        showcallinfo(mrb);
+        p(mrb, mrb_obj_value(mrb->exc));
+      }
+      n = -1;
+    }
+    else if (args.check_syntax) {
+      printf("Syntax OK\n");
+    }
+  }
+  cleanup(mrb, &args);
+
+  return n == 0 ? EXIT_SUCCESS : EXIT_FAILURE;
+}
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyTaskBody.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyTaskBody.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyTaskBody.c	(revision 374)
@@ -0,0 +1,103 @@
+/*
+ *   Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cMrubyVM signature: nMruby_sMrubyVM context:task
+ *   bool_t         cMrubyVM_initialize( );
+ *   bool_t         cMrubyVM_run( );
+ *   void           cMrubyVM_finalize( );
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include "nMruby_tMrubyTaskBody_tecsgen.h"
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eMrubyBody
+ * entry port: eMrubyBody
+ * signature:  sTaskBody
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eMrubyBody_main
+ * name:         eMrubyBody_main
+ * global_name:  nMruby_tMrubyTaskBody_eMrubyBody_main
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eMrubyBody_main(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( cMrubyVM_initialize( ) ){
+    cMrubyVM_run( );
+    cMrubyVM_finalize( );
+  }
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyVM.c
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyVM.c	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/nMruby_tMrubyVM.c	(revision 374)
@@ -0,0 +1,252 @@
+/*
+ *  Copyright (C) 2008-2017 by TOPPERS Project
+ *
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å±æ§ã¢ã¯ã»ã¹ãã¯ã­ #_CAAM_#
+ * irep             uint8_t*         ATTR_irep       
+ * var_irep         mrb_irep*        VAR_var_irep    
+ * mrb              mrb_state*       VAR_mrb         
+ * rproc            struct RProc*    VAR_rproc       
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cInit signature: nMruby_sInitializeBridge context:task optional:true
+ *   bool_t     is_cInit_joined()                     check if joined
+ *   void           cInit_initializeBridge( const mrb_state* mrb );
+ * call port: cMalloc signature: sMalloc context:task
+ *   int            cMalloc_initializeMemoryPool( );
+ *   void*          cMalloc_calloc( size_t nelem, size_t elem_size );
+ *   void*          cMalloc_malloc( size_t size );
+ *   void*          cMalloc_realloc( const void* ptr, size_t new_size );
+ *   void           cMalloc_free( const void* ptr );
+ *
+ * #[</PREAMBLE>]# */
+
+/* ãã­ãã¿ã¤ãå®£è¨ãå¤æ°ã®å®ç¾©ãããã«æ¸ãã¾ã #_PAC_# */
+#include "nMruby_tMrubyVM_tecsgen.h"
+#include <string.h>
+
+#include <mruby.h>
+#include <mruby/proc.h>
+#include <mruby/data.h>
+#include <mruby/compile.h>
+#include "t_syslog.h"
+
+MRB_API mrb_state* mrb_open_TECS( CELLCB *p_cellcb);
+
+#ifndef E_OK
+#define	E_OK	0		/* success */
+#define	E_ID	(-18)	/* illegal ID */
+#endif
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eMrubyVM
+ * entry port: eMrubyVM
+ * signature:  nMruby_sMrubyVM
+ * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eMrubyVM_initialize
+ * name:         eMrubyVM_initialize
+ * global_name:  nMruby_tMrubyVM_eMrubyVM_initialize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+bool_t
+eMrubyVM_initialize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+    return false;
+	} /* end if VALID_IDX(idx) */
+
+  cMalloc_initializeMemoryPool();
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  /* new interpreter instance */
+  //VAR_mrb = mrb_open();
+  VAR_mrb = mrb_open_TECS(p_cellcb);
+  if (VAR_mrb == NULL) {
+    syslog(LOG_EMERG, "Invalid mrb_state, exiting test driver");
+//    cSerialPort_write("Invalid mrb_state, exiting test driver\n", 39);
+    return false;
+  }
+
+  if(is_cInit_joined()){
+    // TECS Bridge
+    cInit_initializeBridge( VAR_mrb );
+  }
+  VAR_var_irep = mrb_read_irep(VAR_mrb, ATTR_irep);
+  VAR_rproc = mrb_proc_new(VAR_mrb, VAR_var_irep);
+  return true;
+}
+
+/* #[<ENTRY_FUNC>]# eMrubyVM_run
+ * name:         eMrubyVM_run
+ * global_name:  nMruby_tMrubyVM_eMrubyVM_run
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+bool_t
+eMrubyVM_run(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  mrb_run(VAR_mrb, VAR_rproc, mrb_top_self(VAR_mrb));
+  if (VAR_mrb->exc) {
+    mrb_p(VAR_mrb, mrb_obj_value(VAR_mrb->exc));
+    return false;
+  }
+  return true;
+}
+
+/* #[<ENTRY_FUNC>]# eMrubyVM_funcall
+ * name:         eMrubyVM_funcall
+ * global_name:  nMruby_tMrubyVM_eMrubyVM_funcall
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eMrubyVM_funcall(CELLIDX idx, const char_t* name)
+{
+	CELLCB	*p_cellcb;
+  mrb_int  argc;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  argc = 0;
+  (void)mrb_funcall(VAR_mrb, mrb_top_self(VAR_mrb), name, argc );
+}
+
+/* #[<ENTRY_FUNC>]# eMrubyVM_finalize
+ * name:         eMrubyVM_finalize
+ * global_name:  nMruby_tMrubyVM_eMrubyVM_finalize
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+void
+eMrubyVM_finalize(CELLIDX idx)
+{
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		/* ã¨ã©ã¼å¦çã³ã¼ããããã«è¨è¿°ãã¾ã */
+	} /* end if VALID_IDX(idx) */
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+	syslog(LOG_EMERG, "end of mruby program");
+  mrb_close(VAR_mrb);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
+
+#include "tlsf.h"
+void*
+mrb_TECS_allocf(mrb_state *mrb, void *p, size_t size, void *ud)
+{
+	CELLCB	*p_cellcb= (CELLCB *)ud;
+  if (size == 0) {
+      cMalloc_free(p);
+      //tlsf_free(p);
+      return NULL;
+  }
+  else if (p){
+      //return tlsf_realloc(p,size);
+      return cMalloc_realloc(p, size);
+  }
+  else {
+      //return tlsf_malloc(size);
+      return cMalloc_malloc(size);
+  }
+}
+
+// p_cellcb ã¯ VM ã®ãã®
+// VM ã»ã«ã¿ã¤ãã«ãå¼ã³å£ call sMalloc cMalloc; ãè¨­ãã
+// mrb_TECS_allocf ãåç
+§
+MRB_API mrb_state*
+mrb_open_TECS( CELLCB *p_cellcb)
+{
+    return mrb_open_allocf(mrb_TECS_allocf, (void *)p_cellcb);
+};
+
+/*** ããã¼é¢æ° ***/
+#ifndef EV3_SOUND
+void _write(){}
+void _close(){}
+void _lseek(){}
+void _read(){}
+//void _fstat(){}
+//void _isatty(){}
+#endif
+
+//void _exit(){}
+//void _getpid(){}
+//void _kill(){}
+void _gettimeofday(){}
+void _fini(){}
+
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/sMruby.cdl
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/sMruby.cdl	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/sMruby.cdl	(revision 374)
@@ -0,0 +1,82 @@
+/*
+ *  Copyright (C) 2012 by Ubiquitous Computing and Networking Laboratory
+ *                Ritsumeikan Univ., JAPAN
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+namespace nMruby{
+  signature sMrubyVM {
+    /*
+     * åæåãã (ä»¥ä¸ã¾ã§å®äºãã)
+     *   mrb_open
+     *   VM_TECSInitializer  (TECS ããªãã¸ã®åæå)
+     *   mrb_read_irep       (ãã¤ãã³ã¼ãã®ç»é²)
+     */
+    bool_t initialize(void);
+
+    /*
+     * å®è¡ãã
+     * RETURN
+     *   true  æªå¦ç½®ã®ä¾å¤ããªã
+     *   false æªå¦ç½®ã®ä¾å¤ããã
+     *  initialize ã false ãè¿ããå ´åãrun, finalize ãå¼ã³åºãã¦ã¯ãªããªã
+     */
+    bool_t run(void);
+
+    /*
+     * é¢æ°ãå¼ã³ã ã
+     */
+    void funcall( [in,string]const char_t *name );
+
+    /*
+     * çµæåãã
+     *  run ã false ãè¿ããå ´åã§ãå¼ã³ã ããã¨
+     */
+    void finalize(void);
+
+  };
+};
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/tecs_mruby.h
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/tecs_mruby.h	(revision 352)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/mruby/tecs_mruby.h	(revision 374)
@@ -1,4 +1,4 @@
 /*
- *  Copyright (C) 2008-2017 by TOPPERS Project
+ *  Copyright (C) 2008-2019 by TOPPERS Project
  *
  *  上記著作権者は，以下の(1)～(4)の条件を満たす場合に限り，本ソフトウェ
@@ -46,30 +46,14 @@
 #include "mruby/irep.h"
 #include "mruby/dump.h"
+#include "mruby/proc.h"
 
 #include "TECSPointer.h"
 #include "TECSStruct.h"
 
-#if  ! defined( MRUBY_RELEASE_MAJOR ) || MRUBY_RELEASE_MAJOR == 1 && MRUBY_RELEASE_MINOR < 2
-#ifndef MRB_ARGS_REQ
-#define MRB_ARGS_REQ(n)     ARGS_REQ(n)
-#define MRB_ARGS_OPT(n)     ARGS_OPT(n)
-#define MRB_ARGS_ARG(n1,n2) ARGS_ARG(n1,n2)
-#define MRB_ARGS_REST()     ARGS_REST()
-#define MRB_ARGS_POST(n)    ARGS_POST(n)
-#define MRB_ARGS_KEY(n1,n2) ARGS_KEY(n1,n2)
-#define MRB_ARGS_BLOCK()    ARGS_BLOCK()
-#define MRB_ARGS_ANY()      ARGS_ANY()
-#define MRB_ARGS_NONE()     ARGS_NONE()
-#endif /* MRB_ARGS_REQ */
-#endif
 
-#if  ! defined( MRUBY_RELEASE_MAJOR )
-#define mrb_float_value( mrb, val )  mrb_float_value( val )
-#endif
-
-#else
+#else /* TECSGEN */
 
 /*
- * fake tecsgen because tecsgen cannot accept actual mruby.h in case of below.
+ * fake definition because tecsgen cannot accept actual mruby.h in case of below.
  *   types:   long long, long long int
  *   special keyword __attribute__(x), __extension__
@@ -78,8 +62,15 @@
 typedef int mrb_irep;
 typedef int mrb_context;
-struct  RClass {int dummy;};
-struct  RProc  {int dummy;};
+struct  RClass {uint32_t gcnext;};  // actual definition: struct RBasic *gcnext
+struct  RProc  {uint32_t gcnext;};  // actual definition: struct RBasic *gcnext
 
 typedef int CELLCB;
+
+#define GET_SET_BOOL( Type, type )
+#define GET_SET_CHAR( Type, type )
+#define GET_SET_INT( Type, type )
+#define GET_SET_FLOAT( Type, type )
+#define POINTER_CLASS( Type, type )
+#define CHECK_AND_GET_POINTER( Type, type )
 
 #endif /* TECSGEN */
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/TDR.cdl
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/TDR.cdl	(revision 352)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/TDR.cdl	(revision 374)
@@ -68,9 +68,4 @@
 	ER	sendSOP( [in]bool_t b_client );     /* StartOfPacket magic を送信 */
 	ER	receiveSOP( [in]bool_t b_client );  /* StartOfPacket magic を受信 */
-						 /* b_client: クライアント側なら true, サーバー側なら false */
-
-	/* マジックコードの送受信 */
-	//	ER	sendSHSOP( [in]bool_t b_client );     /* StartOfPacket magic を送信 */
-	//	ER	receiveSHSOP( [in]bool_t b_client );  /* StartOfPacket magic を受信 */
 						 /* b_client: クライアント側なら true, サーバー側なら false */
 
@@ -150,5 +145,5 @@
 };
 
-// Straight Order TECS Data Representation (Straight means no endian-conversion is done)
+// Straight Byte Order TECS Data Representation (Data are always sent in native endian)
 celltype tTDR {
 	call	sChannel	cChannel;
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/sChannel.cdl
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/sChannel.cdl	(revision 352)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/sChannel.cdl	(revision 374)
@@ -58,2 +58,10 @@
 };
 
+/*
+ * size に uint16_t ではなく int16_t を用いるのは、下位層が ER_INT を返す場合を想定したもの．
+ *
+ * sChannel は TECS RPC の TDR の下位層である通信チャンネルとのインタフェースである．
+ * 通信チャンネルは、高水準 I/O のように、バッファリングされることを想定する．
+ * TDR からは、int8_t, int16_t, int32_t, int64_t, (int128_t), float32_t, double64_t bool_t, char_t のような基本型(無符号を含む)が渡される。
+ * 配列や構造体の場合であっても要素ごとに渡される。
+ */
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tMessageBufferCEP.cdl
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tMessageBufferCEP.cdl	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tMessageBufferCEP.cdl	(revision 374)
@@ -0,0 +1,85 @@
+/*
+ *  TECS Generator
+ *      Generator for TOPPERS Embedded Component System
+ *  
+ *   Copyright (C) 2008-2013 by TOPPERS Project
+ *--
+ *   ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *   ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *   å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *   (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *       æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *       ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *   (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *       ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *       è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *       ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *   (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *       ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *       ã¨ï¼
+ *     (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *         ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *     (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *         å ±åãããã¨ï¼
+ *   (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *       å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *       ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *       ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *       å
+è²¬ãããã¨ï¼
+ *  
+ *   æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *   ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *   ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *   ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *   ã®è²¬ä»»ãè² ããªãï¼
+ *  
+ *   $Id$
+ */
+
+const uint16_t DEFAULT_MESSAGE_BUFFER_SIZE = 64;
+
+celltype tMessageBufferCEP {
+    [inline]
+        entry sChannel eChannel;
+    call  sMessageBuffer cMessageBuffer0;   /* Client(send) --> Server(receive) */
+    call  sMessageBuffer cMessageBuffer1;   /* Server(send) --> Client(receive) */
+
+    attr {
+        uint16_t  buf_size = DEFAULT_MESSAGE_BUFFER_SIZE;
+        /* ãã®å¤ã¯ maxMessageSize ã«åããããå°ããã¨ããããã¡ãªã¼ãã¼ã©ã³ã«ãªã */
+    };
+    var {
+        /*
+         * OpaqueMarshalerPlugin ã®çæãããã¼ã·ã£ã©ã¯ãåä¿¡ããããµã¤ãºä»¥ä¸ã®é åãç¢ºä¿ããªãï¼
+         * ä¸æ¹ãtMessageBuffer ã¯ãæå¤§ maxMessageSize èª­ã¿åºãããï¼
+         * åä¿¡ããå´ã¯ãå¿
+ã maxMessageSize ãç¨æãã¦ããå¿
+è¦ãããï¼
+         * ãã®ããããã£ãããããã¡ã¸åãåã£ã¦ã³ãã¼ããå¿
+è¦ãããï¼
+         */
+        [size_is(buf_size)]
+            int8_t *read_buf;
+        uint16_t   read_count;
+        uint16_t   n_read_buf_filled;
+
+        [size_is(buf_size)]
+            int8_t *write_buf;
+        uint16_t   write_count;
+    };
+};
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tMessageBufferCEP_inline.h
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tMessageBufferCEP_inline.h	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tMessageBufferCEP_inline.h	(revision 374)
@@ -0,0 +1,203 @@
+#ifndef tMessageBufferCEP__INLINE_H
+#define tMessageBufferCEP__INLINE_H
+
+/* #[<PREAMBLE>]#
+ * #[<...>]# ãã #[</...>]# ã§å²ã¾ããã³ã¡ã³ãã¯ç·¨éããªãã§ãã ãã
+ * tecsmerge ã«ãããã¼ã¸ã«ä½¿ç¨ããã¾ã
+ *
+ * å¼ã³å£é¢æ° #_TCPF_#
+ * call port: cMessageBuffer0 signature: sMessageBuffer context:task
+ *   ER             cMessageBuffer0_send( const uint8_t* message, uint32_t size );
+ *   ER             cMessageBuffer0_sendPolling( const uint8_t* message, uint32_t size );
+ *   ER             cMessageBuffer0_sendTimeout( const uint8_t* message, uint32_t size, TMO timeout );
+ *   ER_UINT        cMessageBuffer0_receive( uint8_t* message );
+ *   ER_UINT        cMessageBuffer0_receivePolling( uint8_t* message );
+ *   ER_UINT        cMessageBuffer0_receiveTimeout( uint8_t* message, TMO timeout );
+ *   ER             cMessageBuffer0_initialize( );
+ *   ER             cMessageBuffer0_refer( T_RMBF* pk_messageBufferStatus );
+ * call port: cMessageBuffer1 signature: sMessageBuffer context:task
+ *   ER             cMessageBuffer1_send( const uint8_t* message, uint32_t size );
+ *   ER             cMessageBuffer1_sendPolling( const uint8_t* message, uint32_t size );
+ *   ER             cMessageBuffer1_sendTimeout( const uint8_t* message, uint32_t size, TMO timeout );
+ *   ER_UINT        cMessageBuffer1_receive( uint8_t* message );
+ *   ER_UINT        cMessageBuffer1_receivePolling( uint8_t* message );
+ *   ER_UINT        cMessageBuffer1_receiveTimeout( uint8_t* message, TMO timeout );
+ *   ER             cMessageBuffer1_initialize( );
+ *   ER             cMessageBuffer1_refer( T_RMBF* pk_messageBufferStatus );
+ *
+ * #[</PREAMBLE>]# */
+
+/* åãå£é¢æ° #_TEPF_# */
+/* #[<ENTRY_PORT>]# eChannel
+ * entry port: eChannel
+ * signature:  sChannel
+2 * context:    task
+ * #[</ENTRY_PORT>]# */
+
+/* #[<ENTRY_FUNC>]# eChannel_send
+ * name:         eChannel_send
+ * global_name:  tMessageBufferCEP_eChannel_send
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER
+eChannel_send(CELLIDX idx, const int8_t* buf, int16_t size, TMO tmo)
+{
+	ER		ercd = E_OK;
+  int16_t write_count;
+    CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( size < 0 )
+      return E_PAR;
+  else if( size == 0 )
+      return E_OK;
+
+  write_count = 0;
+  while( write_count < size ){
+      VAR_write_buf[ VAR_write_count++ ] = buf[ write_count++ ];
+      if( VAR_write_count >= ATTR_buf_size ){
+          ercd = eChannel_flush( idx, tmo);
+          if( ercd != E_OK ){
+              break;
+          }
+      }
+  }
+
+  // syslog( LOG_INFO, "eChannel_send ercd=%d", ercd );
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eChannel_flush
+ * name:         eChannel_flush
+ * global_name:  tMessageBufferCEP_eChannel_flush
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER
+eChannel_flush(CELLIDX idx, TMO tmo)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  /* flush ããªãã¦ãããã¤ãéããã */
+  if( VAR_write_count > 0 ){
+      ercd = cMessageBuffer0_sendTimeout( (const uint8_t *)VAR_write_buf, VAR_write_count, tmo );
+  }
+  // syslog( LOG_INFO, "eChannel_flush ercd=%d count=%d", ercd, VAR_write_count );
+  VAR_write_count = 0;
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eChannel_receive
+ * name:         eChannel_receive
+ * global_name:  tMessageBufferCEP_eChannel_receive
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER_UINT
+eChannel_receive(CELLIDX idx, int8_t* buf, int16_t size, TMO tmo)
+{
+	ER		   ercd = E_OK;
+	CELLCB	 *p_cellcb;
+  int16_t  count = 0;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  if( size == 0 )
+      return 0;
+
+  while( count < size ){
+      if( VAR_n_read_buf_filled == 0 ){
+          ercd = cMessageBuffer1_receiveTimeout( (uint8_t *)VAR_read_buf, tmo );
+          if( ercd < 0  )
+              break;
+          VAR_n_read_buf_filled = ercd;
+      }
+      while( count < size && VAR_read_count < VAR_n_read_buf_filled ){
+          buf[ count ] = VAR_read_buf[ VAR_read_count ];
+          count++;
+          VAR_read_count++;
+      }
+      if( VAR_read_count >= VAR_n_read_buf_filled ){
+          VAR_n_read_buf_filled = 0;
+          VAR_read_count = 0;
+      }
+      ercd = count;
+  }
+  // syslog( LOG_INFO, "eChannel_receive ercd=%d", ercd );
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eChannel_end_receive
+ * name:         eChannel_end_receive
+ * global_name:  tMessageBufferCEP_eChannel_end_receive
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER
+eChannel_end_receive(CELLIDX idx)
+{
+	ER		ercd = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+
+	return(ercd);
+}
+
+/* #[<ENTRY_FUNC>]# eChannel_reset
+ * name:         eChannel_reset
+ * global_name:  tMessageBufferCEP_eChannel_reset
+ * oneway:       false
+ * #[</ENTRY_FUNC>]# */
+Inline ER
+eChannel_reset(CELLIDX idx)
+{
+  ER		ercd0 = E_OK, ercd1 = E_OK;
+	CELLCB	*p_cellcb;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
+
+	/* ããã«å¦çæ¬ä½ãè¨è¿°ãã¾ã #_TEFB_# */
+  ercd0 = cMessageBuffer0_initialize( );
+  ercd1 = cMessageBuffer1_initialize( );
+
+	return(ercd1 != E_OK ? ercd1 : ercd0);
+}
+
+/* #[<POSTAMBLE>]#
+ *   ããããä¸ã«éåãå£é¢æ°ãæ¸ãã¾ã
+ * #[</POSTAMBLE>]#*/
+
+#endif /* tMessageBufferCEP_INLINEH */
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tMessageBufferChannel.cdl
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tMessageBufferChannel.cdl	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tMessageBufferChannel.cdl	(revision 374)
@@ -0,0 +1,88 @@
+/*
+ *  TECS Generator
+ *      Generator for TOPPERS Embedded Component System
+ *  
+ *   Copyright (C) 2014 by Embedded and Real-Time Systems Laboratory
+ *               Graduate School of Information Science, Nagoya Univ., JAPAN
+ *--
+ *   ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *   ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *   å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *   (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *       æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *       ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *   (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *       ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *       è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *       ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *   (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *       ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *       ã¨ï¼
+ *     (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *         ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *     (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *         å ±åãããã¨ï¼
+ *   (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *       å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *       ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *       ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *       å
+è²¬ãããã¨ï¼
+ *  
+ *   æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *   ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *   ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *   ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *   ã®è²¬ä»»ãè² ããªãï¼
+ *  
+ *   $Id$
+ */
+
+composite tMessagebufferChannel {
+    //entry sTDR       eTDR;
+    entry sEventflag eEventflag;
+    entry sSemaphore eSemaphore;
+    entry sMessageBuffer eMessageBuffer;
+
+    attr {
+        // Queue ã®ããã©ã«ãã®ãµã¤ãº
+        uint32_t	bufferSize = 256;
+    };
+
+    cell  tMessageBuffer Messagebuffer{
+        maxMessageSize = 128;
+        bufferSize = composite.bufferSize;
+    };
+    cell  tEventflag Eventflag{
+        flagPattern = 0;
+    };
+    cell tSemaphore Semaphore{
+        attribute = C_EXP("TA_NULL");
+        initialCount = 0;
+    };
+
+    //cell  tTDR TDR {
+    //	cChannel = MessagebufferAdaptor.eChannel;
+    //};
+
+    //composite.eTDR       => TDR.eTDR;
+    composite.eEventflag => Eventflag.eEventflag;
+    composite.eSemaphore => Semaphore.eSemaphore;
+    composite.eMessageBuffer => Messagebuffer.eMessageBuffer;
+
+};
+
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tTDR_inline.h
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tTDR_inline.h	(revision 352)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/rpc/tTDR_inline.h	(revision 374)
@@ -75,4 +75,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	syslog( LOG_INFO, "TDR: resetting channel" );
@@ -102,4 +103,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -151,4 +153,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -157,5 +160,5 @@
 #endif
 
-    if( b_client )
+  if( b_client )
 		p_sopMagic = &SOP_MAGIC2;
 	else
@@ -198,4 +201,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -234,4 +238,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -267,4 +272,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -287,4 +293,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -307,4 +314,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -327,4 +335,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -347,4 +356,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -368,4 +378,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -390,4 +401,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -412,4 +424,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -434,4 +447,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -456,4 +470,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -477,4 +492,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -497,4 +513,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -517,4 +534,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -537,4 +555,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -557,4 +576,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -578,4 +598,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -600,4 +621,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -622,4 +644,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -644,4 +667,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -666,4 +690,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -688,4 +713,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -705,11 +731,12 @@
 	ER		ercd = E_OK;
 	CELLCB	*p_cellcb;
-	uint8_t	val;
-	if (VALID_IDX(idx)) {
-		p_cellcb = GET_CELLCB(idx);
-	}
-	else {
-		return(E_ID);
-	} /* end if VALID_IDX(idx) */
+	uint8_t	val = 0;
+	if (VALID_IDX(idx)) {
+		p_cellcb = GET_CELLCB(idx);
+	}
+	else {
+		return(E_ID);
+	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -737,4 +764,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -757,4 +785,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -778,4 +807,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -800,4 +830,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -821,4 +852,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -863,4 +895,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -883,4 +916,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -903,4 +937,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -923,4 +958,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -944,4 +980,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -966,4 +1003,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -988,4 +1026,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -1010,4 +1049,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -1031,4 +1071,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -1051,4 +1092,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -1071,4 +1113,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -1091,4 +1134,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -1112,4 +1156,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -1134,4 +1179,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -1156,4 +1202,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -1178,4 +1225,5 @@
 		return(E_ID);
 	} /* end if VALID_IDX(idx) */
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -1199,4 +1247,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
@@ -1220,4 +1269,5 @@
 		return(E_ID);
 	}
+  (void)p_cellcb;   // to avoid unused warning
 
 	/* ここに処理本体を記述します #_TEFB_# */
Index: asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/sMalloc.cdl
===================================================================
--- asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/sMalloc.cdl	(revision 374)
+++ asp3_tinet_ecnl_arm/trunk/asp3_dcre/tecsgen/tecs/sMalloc.cdl	(revision 374)
@@ -0,0 +1,61 @@
+/*
+ *  Copyright (C) 2012 by Ubiquitous Computing and Networking Laboratory
+ *                Ritsumeikan Univ., JAPAN
+ *  ä¸è¨èä½æ¨©è
+ã¯ï¼ä»¥ä¸ã®(1)ï½(4)ã®æ¡ä»¶ãæºããå ´åã«éãï¼æ¬ã½ããã¦ã§
+ *  ã¢ï¼æ¬ã½ããã¦ã§ã¢ãæ¹å¤ãããã®ãå«ãï¼ä»¥ä¸åãï¼ãä½¿ç¨ã»è¤è£½ã»æ¹
+ *  å¤ã»åé
+å¸ï¼ä»¥ä¸ï¼å©ç¨ã¨å¼ã¶ï¼ãããã¨ãç¡åã§è¨±è«¾ããï¼
+ *  (1) æ¬ã½ããã¦ã§ã¢ãã½ã¼ã¹ã³ã¼ãã®å½¢ã§å©ç¨ããå ´åã«ã¯ï¼ä¸è¨ã®èä½
+ *      æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãï¼ãã®ã¾ã¾ã®å½¢ã§ã½ã¼
+ *      ã¹ã³ã¼ãä¸­ã«å«ã¾ãã¦ãããã¨ï¼
+ *  (2) æ¬ã½ããã¦ã§ã¢ãï¼ã©ã¤ãã©ãªå½¢å¼ãªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨
+ *      è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®èä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨
+ *      ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *  (3) æ¬ã½ããã¦ã§ã¢ãï¼æ©å¨ã«çµã¿è¾¼ããªã©ï¼ä»ã®ã½ããã¦ã§ã¢éçºã«ä½¿
+ *      ç¨ã§ããªãå½¢ã§åé
+å¸ããå ´åã«ã¯ï¼æ¬¡ã®ããããã®æ¡ä»¶ãæºããã
+ *      ã¨ï¼
+ *    (a) åé
+å¸ã«ä¼´ããã­ã¥ã¡ã³ãï¼å©ç¨è
+ããã¥ã¢ã«ãªã©ï¼ã«ï¼ä¸è¨ã®è
+ *        ä½æ¨©è¡¨ç¤ºï¼ãã®å©ç¨æ¡ä»¶ããã³ä¸è¨ã®ç¡ä¿è¨¼è¦å®ãæ²è¼ãããã¨ï¼
+ *    (b) åé
+å¸ã®å½¢æ
+ãï¼å¥ã«å®ããæ¹æ³ã«ãã£ã¦ï¼TOPPERSãã­ã¸ã§ã¯ãã«
+ *        å ±åãããã¨ï¼
+ *  (4) æ¬ã½ããã¦ã§ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæ
+ *      å®³ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ããå
+è²¬ãããã¨ï¼
+ *      ã¾ãï¼æ¬ã½ããã¦ã§ã¢ã®ã¦ã¼ã¶ã¾ãã¯ã¨ã³ãã¦ã¼ã¶ããã®ãããªãç
+ *      ç±ã«åºã¥ãè«æ±ãããï¼ä¸è¨èä½æ¨©è
+ããã³TOPPERSãã­ã¸ã§ã¯ãã
+ *      å
+è²¬ãããã¨ï¼
+ * 
+ *  æ¬ã½ããã¦ã§ã¢ã¯ï¼ç¡ä¿è¨¼ã§æä¾ããã¦ãããã®ã§ããï¼ä¸è¨èä½æ¨©è
+ã
+ *  ãã³TOPPERSãã­ã¸ã§ã¯ãã¯ï¼æ¬ã½ããã¦ã§ã¢ã«é¢ãã¦ï¼ç¹å®ã®ä½¿ç¨ç®ç
+ *  ã«å¯¾ããé©åæ§ãå«ãã¦ï¼ãããªãä¿è¨¼ãè¡ããªãï¼ã¾ãï¼æ¬ã½ããã¦ã§
+ *  ã¢ã®å©ç¨ã«ããç´æ¥çã¾ãã¯éæ¥çã«çãããããªãæå®³ã«é¢ãã¦ãï¼ã
+ *  ã®è²¬ä»»ãè² ããªãï¼
+ * 
+ *  @(#) $Id$
+ */
+
+import_C( "t_stddef.h" );
+
+[deviate]
+signature sMalloc {
+    int    initializeMemoryPool(void);
+    void   *calloc( [in]size_t nelem, [in]size_t elem_size );
+    void   *malloc( [in]size_t size );
+    void   *realloc( [in]const void *ptr, [in]size_t new_size );
+    void   free( [in]const void *ptr );
+};
+
