MeVisLabToolboxReference
MeVisLab/Standard/Sources/ML/MLObjMgr/ObjMgr/mlObjMgrFlags.h
Go to the documentation of this file.
00001 // **InsertLicense** code
00002 //-------------------------------------------------------------------------
00005 
00010 //-------------------------------------------------------------------------
00011 
00012 #ifndef __mlObjMgrFlags_H
00013 #define __mlObjMgrFlags_H
00014 
00015 #ifndef __MLObjMgrSystem_H
00016 #include "MLObjMgrSystem.h"
00017 #endif
00018 #ifndef __mlTypeDefs_H
00019 #include "mlTypeDefs.h"
00020 #endif
00021 
00022 
00023 ML_START_NAMESPACE
00024 
00027    class MLOBJMGR_EXPORT omFlags
00028    {
00029       public:
00030 
00032          enum NetCommMode {
00033             NC_DEFAULT = 0,
00034             NC_COMMUNICATE,
00035             NC_CONCEAL,
00036             NUM_NET_COMM_MODE_TYPES
00037          };
00038    
00040          static const char *NetCommModeStrings[NUM_NET_COMM_MODE_TYPES];
00041 
00042       protected:
00043 
00044          bool         _isDefault;
00045          
00046          bool         _isPrivate;
00047          bool         _isPersistent;
00048          NetCommMode  _netCommMode;
00049    
00050       public:
00051 
00052          omFlags()
00053             : _isDefault(true), _isPrivate(false), _isPersistent(true), _netCommMode(NC_DEFAULT) {}
00054 
00056          inline void markPrivate(bool trueOrFalse) {
00057             _isDefault = false;
00058             _isPrivate = trueOrFalse;
00059          }
00061          inline void markPersistent(bool trueOrFalse) {
00062             _isDefault = false;
00063             _isPersistent = trueOrFalse;
00064          }
00066          inline void setNetCommMode(NetCommMode netCommMode) {
00067             _isDefault = false;
00068             _netCommMode = netCommMode;
00069          }
00070           
00072          inline bool isPrivate() const {
00073             return _isPrivate;
00074          }
00076          inline bool isPersistent() const {
00077             return _isPersistent;
00078          }
00080          inline NetCommMode getNetCommMode() const {
00081             return _netCommMode;
00082          }
00083 
00085          inline bool isDefault() const {
00086             return _isDefault;
00087          }
00088    };
00089 
00090 ML_END_NAMESPACE
00091 
00092 #endif // __mlObjMgrFlags_H