GME  13
MgaGeneric.h
Go to the documentation of this file.
00001 #pragma once
00002 
00003 void CreateCoreMetaProject(CComPtr<ICoreMetaProject> &project, bool v2 = false);
00004 
00005 
00006 // DATA
00007 
00008 #define ATTRID_REF_MIN 500
00009 #define ATTRID_REF_MAX 699
00010 #define ATTRID_LINKREF_MIN 600
00011 
00012 #ifdef DEBUG
00013 static inline attrid_type _gen_rangetest(attrid_type s) { ASSERT(s < ATTRID_COLLECTION); return s; }  
00014 #else
00015 #define _gen_rangetest(s) s
00016 #endif
00017 
00018 #define XREF_ATTR(s) (_gen_rangetest(s) >= ATTRID_REF_MIN && (s) < ATTRID_LINKREF_MIN)
00019 #define LINKREF_ATTR(s) (_gen_rangetest(s) >= ATTRID_LINKREF_MIN && (s) <= ATTRID_REF_MAX)
00020 
00021 
00022 #define ATTRID_PARADIGM                                 400
00023 #define ATTRID_META                                             401
00024 #define ATTRID_PARENT                                   602
00025 #define ATTRID_FPARENT                                  ATTRID_PARENT
00026 #define ATTRID_FCOPARENT                                ATTRID_PARENT
00027 #define ATTRID_ROLEMETA                                 404
00028 #define ATTRID_REFERENCE                                505
00029 #define ATTRID_XREF                                             ATTRID_FCOREFATTR
00030 #define ATTRID_GUID                                             406
00031 #define ATTRID_PARGUID                                  407
00032 
00033 #define ATTRID_RELID                                    408
00034 #define ATTRID_LASTRELID                                409
00035 #define ATTRID_FILESTATUS                               410
00036 #define ATTRID_GUID1                                    411
00037 #define ATTRID_GUID2                                    412
00038 #define ATTRID_GUID3                                    413
00039 #define ATTRID_GUID4                                    414
00040 
00041 #define ATTRID_DERIVED                                  510
00042 #define ATTRID_SEGREF                                   511
00043 #define ATTRID_SETMEMBER                                612 
00044 #define ATTRID_CONNSEG                                  613
00045 #define ATTRID_CONNROLE                                 614
00046 #define ATTRID_PERMISSIONS                              415 // flags: INSTANCE_FLAG LIBROOT_FLAG LIBRARY_FLAG EXEMPT_FLAG READONLY_FLAG
00047 #define ATTRID_SEGORDNUM                                416
00048 #define ATTRID_MASTEROBJ                                517
00049 #define ATTRID_REFASPECT                                418
00050 
00051 #define ATTRID_MGAVERSION                               419
00052 
00053 #define ATTRID_ATTRPARENT                               620
00054 
00055 // NUMBER MAGIC!!!! keep these as a contigious block of numbers:
00056 #define ATTRID_ATTRTYPESBASE                    420             // Not used in MetaAttrs
00057 #define ATTRID_STRATTR                                  421
00058 #define ATTRID_INTATTR                                  422
00059 #define ATTRID_FLOATATTR                                423
00060 #define ATTRID_BOOLATTR                                 424
00061 #define ATTRID_FCOREFATTR                               525
00062 // contigious block ends
00063 
00064 #define ATTRID_CDATE                                    430
00065 #define ATTRID_MDATE                                    431
00066 #define ATTRID_CREATOR                                  432
00067 #define ATTRID_EXTDATA                                  433
00068 #define ATTRID_VERSION                                  434
00069 #define ATTRID_PARVERSION                               435
00070 
00071 #define ATTRID_CONSTROCL                                450
00072 #define ATTRID_CONSTRPRIORITY                   451
00073 #define ATTRID_CONSTROWNER                              652
00074 
00075 #define ATTRID_REGNOWNER                                655 // <! deprecated
00076 #define ATTRID_REGNODEVALUE                             457 // <! deprecated
00077 #define ATTRID_REGFLAGS                                 458 // <! deprecated
00078 #define ATTRID_REGNODE                          457
00079 
00080 
00081 // OBJECT ID'S
00082 
00083 
00084 #define DTID_ROOT                               1
00085 
00086 // NUMBER MAGIC!!!! keep these as a contigious block of numbers:
00087 #define DTID_BASE                               100                             
00088 #define DTID_MODEL                              101
00089 #define DTID_ATOM                               102
00090 #define DTID_REFERENCE                  103     
00091 #define DTID_CONNECTION                 104
00092 #define DTID_SET                                105
00093 #define DTID_FOLDER                             106
00094 // contigious block ends
00095 
00096 #define DTID_CONNROLE                   107     
00097 #define DTID_CONNROLESEG                108             
00098 
00099 // NUMBER MAGIC!!!! keep these as a contigious block of numbers:
00100 #define DTID_ATTRTYPESBASE              110   // never created
00101 #define DTID_STRATTR                    111     
00102 #define DTID_INTATTR                    112     
00103 #define DTID_FLOATATTR                  113     
00104 #define DTID_BOOLATTR                   114     
00105 #define DTID_REFATTR                    115
00106 // contigious block ends
00107         
00108 #define DTID_CONSTRAINT                 120     
00109 #define DTID_REGNODE                    121      // <! deprecated
00110 #define DTID_SETNODE                    122     
00111 
00112 
00113 #define VALTYPE_METAREF  VALTYPE_LONG
00114 #define VALTYPE_DATE  VALTYPE_STRING
00115 #define VALTYPE_BOOL  VALTYPE_LONG
00116 
00117 
00118 #define PRIM_PARTTYP 1
00119 #define SEC_PARTTYP 2
00120 #define LINK_PARTTYP 4
00121 
00122 #define METAREF_NULL 0
00123 
00124 #define INSTANCE_FLAG  1
00125 #define LIBRARY_FLAG 2 
00126 #define LIBROOT_FLAG 4 
00127 #define EXEMPT_FLAG 8
00128 #define READONLY_FLAG 16
00129 
00130 
00131 #define NEWNAME_MAXNUM 10000                    // the maximum numeric extension assigned to new objects;
00132 
00133 
00134