1 //===-- MICmnBase.h ---------------------------------------------*- C++ -*-===//
3 // The LLVM Compiler Infrastructure
5 // This file is distributed under the University of Illinois Open Source
6 // License. See LICENSE.TXT for details.
8 //===----------------------------------------------------------------------===//
13 #include "MIDataTypes.h"
14 #include "MIUtilString.h"
20 //============================================================================
21 // Details: MI common code implementation base class.
26 /* ctor */ CMICmnBase();
28 bool HaveErrorDescription() const;
29 const CMIUtilString &GetErrorDescription() const;
30 void SetErrorDescription(const CMIUtilString &vrTxt) const;
31 void SetErrorDescriptionn(const char *vFormat, ...) const;
32 void SetErrorDescriptionNoLog(const CMIUtilString &vrTxt) const;
33 void ClrErrorDescription() const;
37 /* dtor */ virtual ~CMICmnBase();
41 mutable CMIUtilString m_strMILastErrorDescription;
42 bool m_bInitialized; // True = yes successfully initialized, false = no yet or
44 CMICmnLog *m_pLog; // Allow all derived classes to use the logger
45 MIint m_clientUsageRefCnt; // Count of client using *this object so not
46 // shutdown() object to early