|
||||
File indexing completed on 2025-01-18 10:04:17
0001 // Created on: 1999-11-22 0002 // Created by: data exchange team 0003 // Copyright (c) 1999-1999 Matra Datavision 0004 // Copyright (c) 1999-2014 OPEN CASCADE SAS 0005 // 0006 // This file is part of Open CASCADE Technology software library. 0007 // 0008 // This library is free software; you can redistribute it and/or modify it under 0009 // the terms of the GNU Lesser General Public License version 2.1 as published 0010 // by the Free Software Foundation, with special exception defined in the file 0011 // OCCT_LGPL_EXCEPTION.txt. Consult the file LICENSE_LGPL_21.txt included in OCCT 0012 // distribution for complete text of the license and disclaimer of any warranty. 0013 // 0014 // Alternatively, this file may be used under the terms of Open CASCADE 0015 // commercial license or contractual agreement. 0016 0017 // Taken from Interface_Macros to avoid cyclic dependency from Shape Healing 0018 0019 #ifndef MoniTool_Macros_HeaderFile 0020 #define MoniTool_Macros_HeaderFile 0021 0022 // Interface General purpose Macros 0023 // Their use is not required, but it gets some program parts easier : 0024 // DownCasting, with or without Declaration 0025 0026 // DownCasting to a "Handle" already declared 0027 #define GetCasted(atype,start) Handle(atype)::DownCast(start) 0028 0029 // DownCasting with Declaration : 0030 // - Declares the variable result 0031 // - then performs DownCasting 0032 // - after it, result can be used as a new variable 0033 #define DeclareAndCast(atype,result,start) \ 0034 Handle(atype) result = Handle(atype)::DownCast(start) 0035 0036 #define FastCast(atype,result,start) \ 0037 Handle(atype) result; result = (*(Handle(atype)*))& start 0038 0039 0040 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |