wiki:addnewenum

Version 1 (modified by Mathieu Morlighem, 10 years ago) ( diff )

--

Introduction

Each model input is assigned an Enum in order to be found quickly (integers are easier to compare than strings).

Add a new Enum

If you want to add a new Enum, the ONLY file that needs to be changed is src/c/shared/Enum/EnumDefinitions.h`. Open it with you favorite editor (vim) and add your new Enum. Make sure that:

  • It does not already exist (the compiler will tell you anyway)
  • It finishes with Enum,

Then you can run a synchronization script that will update the matlab and python Enum, StringToEnum and EnumToString automatically:

!bash
cd $ISSM_DIR/src/c/shared/Enum/EnumDefinitions.h
./Synchronize.sh

You will then need to recompile the entire trunk (not just src/c), and there is no need to reconfigure:

!bash
cd $ISSM_DIR/
make install

Checking in the changes

In order to commit the new Enum, you will need to svn add the new matlab file in $ISSM_DIR/src/m/enum, and then commit all the files in $ISSM_DIR/src/m/enum and $ISSM_DIR/src/c/shared/Enum

Note: See TracWiki for help on using the wiki.