MDL Syntax

Hello. New guy here...well, old new guy :D

Was a MicroStation user for many years (many years ago) and took the one and only MDL programming course that was available at the time. Getting sucked back into the MicroStation world and trying to recompile an MDL app. I'm slowly working my way through it, but have hit something I'm not sure how to fix. I looked and am not finding much in the help files.

The offending line of code is:

mdlBitMask_logicalOperation(
 (*type)->view.files[k].levels,
 view->files[j].levels,
 BITMASK_OR);

I understand the the arguments are now BitMaskP and BitMaskCP, but just have no idea what the above code is doing. Are there resources out there to explain what this syntax means?

Thanks in advance for any direction...

Parents
  • The comments in the code indicate *type is a pointer argument passed to this function (get_type). The view variable in the offending code is defined:

    Views_Info *view

    Views_Info is a custom typedef:

    typedef struct views_info
    {
    int num_files;
    char name[64];
    char label[64];
    Files_Info *files;
    }

    Files_Info is a custom typedef:

    typedef struct files_info
    {
    int mode;
    char name[MAXFILELENGTH]; // GDG Sep 2006
    char logical_pre[64];
    char logical_post[64];
    short level_num;
    short level_val;
    BitMaskP *levels;
    } Files_Info;

    What does the "->" mean in the offending code?

    Thanks again for the help!!

Reply
  • The comments in the code indicate *type is a pointer argument passed to this function (get_type). The view variable in the offending code is defined:

    Views_Info *view

    Views_Info is a custom typedef:

    typedef struct views_info
    {
    int num_files;
    char name[64];
    char label[64];
    Files_Info *files;
    }

    Files_Info is a custom typedef:

    typedef struct files_info
    {
    int mode;
    char name[MAXFILELENGTH]; // GDG Sep 2006
    char logical_pre[64];
    char logical_post[64];
    short level_num;
    short level_val;
    BitMaskP *levels;
    } Files_Info;

    What does the "->" mean in the offending code?

    Thanks again for the help!!

Children