[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference azur::mcc

Title:DECmcc user notes file. Does not replace IPMT.
Notice:Use IPMT for problems. Newsletter location in note 6187
Moderator:TAEC::BEROUD
Created:Mon Aug 21 1989
Last Modified:Wed Jun 04 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:6497
Total number of notes:27359

6346.0. "mcc_aes_equal ?" by KETJE::PACCO (Horum omnium fortissimi sunt Belgae) Wed Jul 19 1995 11:01

	How is the behaviour of 'mcc_aes_equal' when using wildcards ?
	When 2 identical AES specifications are used, with partial wildcarding,
	equality is not detected.
	An extract from the code, and a printout of the result follows.
	Normal or not ? Same in TeMIP ?

	Kind regards,
	Dominique.
================================================================================
      printf ("entity_1 :\n");
      mcc_aes_dump (in_entity);
      printf ("entity_2 :\n");
      mcc_aes_dump (p_ctx->in_entity);
      status = mcc_aes_equal( &in_entity,
                              &p_ctx->in_entity,
                              &is_match);
      printf ("Status = %d, is_match = %d\n",status,is_match);
================================================================================
entity_1 :
        entity [0] wild = INSTANCE_PARTIAL class = 53 id = 12 type = 5
        instance = ..+,y..u72+u......mcc..rpl109*..
        %X08002B2C791E097537B22BF59500100001036D6363040772706C3130392A0000
        entity [1] wild = NOT_WILD class = 1 id = 1 type = 4
        instance = ..a
        %X010161
entity_2 :
        entity [0] wild = INSTANCE_PARTIAL class = 53 id = 12 type = 5
        instance = ..+,y..u72+u......mcc..rpl109*..
        %X08002B2C791E097537B22BF59500100001036D6363040772706C3130392A0000
        entity [1] wild = NOT_WILD class = 1 id = 1 type = 4
        instance = ..a
        %X010161
Status = 52854793, is_match = 0
    
T.RTitleUserPersonal
Name
DateLines
6346.1Seems OK with TeMIP Framework V3.0TAEC::FLAUWMarc Flauw, TeMIP Technical Office, VBOWed Jul 19 1995 15:2158
    Dominique,

    I cannot reproduce your problem on TeMIP Framework V3.0. The simple
    test I have made gives me a result of TRUE. I used the C++ toolkit as it
    was quicker, but the end result should be identical.

    The entity spec might not exactly be the same however.

    I suggest to QAR it against MCC.

    Best regards,

    Marc.
-------------------------------------------------------------------------------
    Here is the trace dump in V3 trace format : 
    
20/06 14:14:11[6430][0x20006] TFCTrace: Entity 1 :
20/06 14:14:11[6430][0x20006] Dump of an AES :
        entity [0] wild = INSTANCE_PARTIAL class = 53 id = 12 type = 5
	instance = ..................mcc..rpl409*..
        C01DE2F00000000000000000000000000000100001036D6363040772706C3430392A0000
        entity [1] wild = NOT_WILD class = 1 id = 1 type = 4 instance = ..a
        1010161
20/06 14:14:11[6430][0x20006] 
20/06 14:14:11[6430][0x20006] TFCTrace: Entity 2 :
20/06 14:14:11[6430][0x20006] Dump of an AES :
        entity [0] wild = INSTANCE_PARTIAL class = 53 id = 12 type = 5
	instance = ..................mcc..rpl409*..
        C01DE2F00000000000000000000000000000100001036D6363040772706C3430392A0000
        entity [1] wild = NOT_WILD class = 1 id = 1 type = 4 instance = ..a
        1010161
20/06 14:14:11[6430][0x20006] 
20/06 14:14:11[6430][0x20006] TFCTrace: Is equal : 1

    Here is the code fragment in C++ :
      
  MFullName  	f1(".mcc.rpl409*",12);
  MSimpleName  	s1("a",1);
  
  MClientEntitySpec   entity_1, entity_2;  

  MCC_T_Boolean is_equal;

  
  entity_1.AddPartialWildInstance(53,f1);
  entity_1.AddClassInstance(1,s1);

  TraceEntity(TSYS_M_NORMAL_TRACE,"Entity 1 :",entity_1);
  
  entity_2.AddPartialWildInstance(53,f1);
  entity_2.AddClassInstance(1,s1);

  TraceEntity(TSYS_M_NORMAL_TRACE,"Entity 2 :",entity_1);

  is_equal = entity_1.IsEqualTo(entity_2);

  Trace(TSYS_M_NORMAL_TRACE,"Is equal : %1",is_equal);

6346.2mcc_aes_equalAZUR::GACHOTFri Aug 25 1995 14:3817
Hello,

	According to the SRM on mcc_aes_equal:

	  Note that equality testing is not used to implement wildcarding.

	I also found this comment in the DECmcc source code.

	*_AES_EQUAL does not support partial wildcard for the SIMPLE NAME
        * datatype.  to support partial wildcard for lines and circuits,
        * bypass in_e validation for (all) wildcarded instances
        * (it's too costly to check each level in the entity specifier
        * for the type of wildcard and the data type of the wildcarded
        * instance

Regards,
		-Erik.