Add project skeleton
This commit is contained in:
parent
e4967cbde2
commit
5d95b9925a
|
@ -0,0 +1,20 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 10.00
|
||||
# Visual Studio 2008
|
||||
Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "doubango", "doubango\doubango.vcproj", "{F31BBB1C-A0EB-46DE-B920-B843918E9090}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Win32 = Debug|Win32
|
||||
Release|Win32 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{F31BBB1C-A0EB-46DE-B920-B843918E9090}.Debug|Win32.ActiveCfg = Debug|Win32
|
||||
{F31BBB1C-A0EB-46DE-B920-B843918E9090}.Debug|Win32.Build.0 = Debug|Win32
|
||||
{F31BBB1C-A0EB-46DE-B920-B843918E9090}.Release|Win32.ActiveCfg = Release|Win32
|
||||
{F31BBB1C-A0EB-46DE-B920-B843918E9090}.Release|Win32.Build.0 = Release|Win32
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
EndGlobal
|
|
@ -0,0 +1,276 @@
|
|||
<?xml version="1.0" encoding="Windows-1252"?>
|
||||
<VisualStudioProject
|
||||
ProjectType="Visual C++"
|
||||
Version="9.00"
|
||||
Name="doubango"
|
||||
ProjectGUID="{F31BBB1C-A0EB-46DE-B920-B843918E9090}"
|
||||
RootNamespace="doubango"
|
||||
Keyword="Win32Proj"
|
||||
TargetFrameworkVersion="196613"
|
||||
>
|
||||
<Platforms>
|
||||
<Platform
|
||||
Name="Win32"
|
||||
/>
|
||||
</Platforms>
|
||||
<ToolFiles>
|
||||
</ToolFiles>
|
||||
<Configurations>
|
||||
<Configuration
|
||||
Name="Debug|Win32"
|
||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
||||
IntermediateDirectory="$(ConfigurationName)"
|
||||
ConfigurationType="2"
|
||||
CharacterSet="1"
|
||||
>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="0"
|
||||
AdditionalIncludeDirectories="./src"
|
||||
PreprocessorDefinitions="WIN32;_DEBUG;_WINDOWS;_USRDLL;DOUBANGO_EXPORTS"
|
||||
MinimalRebuild="true"
|
||||
BasicRuntimeChecks="3"
|
||||
RuntimeLibrary="3"
|
||||
UsePrecompiledHeader="0"
|
||||
WarningLevel="3"
|
||||
DebugInformationFormat="4"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManagedResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
LinkIncremental="2"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCALinkTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManifestTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXDCMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCBscMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCFxCopTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCAppVerifierTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"
|
||||
/>
|
||||
</Configuration>
|
||||
<Configuration
|
||||
Name="Release|Win32"
|
||||
OutputDirectory="$(SolutionDir)$(ConfigurationName)"
|
||||
IntermediateDirectory="$(ConfigurationName)"
|
||||
ConfigurationType="2"
|
||||
CharacterSet="1"
|
||||
WholeProgramOptimization="1"
|
||||
>
|
||||
<Tool
|
||||
Name="VCPreBuildEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCustomBuildTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXMLDataGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCWebServiceProxyGeneratorTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCMIDLTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCCLCompilerTool"
|
||||
Optimization="2"
|
||||
EnableIntrinsicFunctions="true"
|
||||
PreprocessorDefinitions="WIN32;NDEBUG;_WINDOWS;_USRDLL;DOUBANGO_EXPORTS"
|
||||
RuntimeLibrary="2"
|
||||
EnableFunctionLevelLinking="true"
|
||||
UsePrecompiledHeader="0"
|
||||
WarningLevel="3"
|
||||
DebugInformationFormat="3"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManagedResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCResourceCompilerTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPreLinkEventTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCLinkerTool"
|
||||
LinkIncremental="1"
|
||||
GenerateDebugInformation="true"
|
||||
SubSystem="2"
|
||||
OptimizeReferences="2"
|
||||
EnableCOMDATFolding="2"
|
||||
TargetMachine="1"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCALinkTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCManifestTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCXDCMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCBscMakeTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCFxCopTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCAppVerifierTool"
|
||||
/>
|
||||
<Tool
|
||||
Name="VCPostBuildEventTool"
|
||||
/>
|
||||
</Configuration>
|
||||
</Configurations>
|
||||
<References>
|
||||
</References>
|
||||
<Files>
|
||||
<Filter
|
||||
Name="source"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\src\test.cxx"
|
||||
>
|
||||
</File>
|
||||
<Filter
|
||||
Name="sip_dialogs"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog.cxx"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_info.cxx"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_invite.cxx"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_message.cxx"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_options.cxx"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_publish.cxx"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_register.cxx"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_subscribe.cxx"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
</Filter>
|
||||
<Filter
|
||||
Name="include"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\src\config.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\doubango.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\pref.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sm.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\stdint0.h"
|
||||
>
|
||||
</File>
|
||||
<Filter
|
||||
Name="sip_dialogs"
|
||||
>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_info.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_invite.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_message.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_options.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_publish.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_register.h"
|
||||
>
|
||||
</File>
|
||||
<File
|
||||
RelativePath=".\src\sip_dialog_subscribe.h"
|
||||
>
|
||||
</File>
|
||||
</Filter>
|
||||
</Filter>
|
||||
</Files>
|
||||
<Globals>
|
||||
</Globals>
|
||||
</VisualStudioProject>
|
|
@ -0,0 +1,33 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DOUBANGO_DOUBANGO_H__
|
||||
#define __DOUBANGO_DOUBANGO_H__
|
||||
|
||||
|
||||
|
||||
#endif /* __DOUBANGO_DOUBANGO_H__ */
|
|
@ -0,0 +1,42 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DOUBANGO_PREF_H__
|
||||
#define __DOUBANGO_PREF_H__
|
||||
|
||||
#define PREF_NAMESPACE_USE 1
|
||||
#define PREF_NAMESPACE_VALUE dgo
|
||||
|
||||
#if PREF_NAMESPACE_USE
|
||||
# define PREF_NAMESPACE_START namespace PREF_NAMESPACE_VALUE {
|
||||
# define PREF_NAMESPACE_END }
|
||||
#else
|
||||
# define PREF_NAMESPACE_START
|
||||
# define PREF_NAMESPACE_END
|
||||
#endif
|
||||
|
||||
#endif /* __DOUBANGO_PREF_H__ */
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
#include <sip_dialog.h>
|
|
@ -0,0 +1,44 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DOUBANGO_DIALOG_SM_H__
|
||||
#define __DOUBANGO_DIALOG_SM_H__
|
||||
|
||||
#include <pref.h>
|
||||
|
||||
PREF_NAMESPACE_START
|
||||
|
||||
class sip_dialog
|
||||
{
|
||||
public:
|
||||
sip_dialog();
|
||||
~sip_dialog();
|
||||
};
|
||||
|
||||
PREF_NAMESPACE_END
|
||||
|
||||
#endif /* __DOUBANGO_DIALOG_SM_H__ */
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
#include <sip_dialog_info.h>
|
|
@ -0,0 +1,43 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DOUBANGO_DIALOG_INFO_SM_H__
|
||||
#define __DOUBANGO_DIALOG_INFO_SM_H__
|
||||
|
||||
#include <pref.h>
|
||||
#include <sip_dialog.h>
|
||||
|
||||
PREF_NAMESPACE_START
|
||||
|
||||
/* INFO */
|
||||
class sip_dialog_info : public sip_dialog
|
||||
{
|
||||
};
|
||||
|
||||
PREF_NAMESPACE_END
|
||||
|
||||
#endif /* __DOUBANGO_DIALOG_INFO_SM_H__ */
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
#include <sip_dialog_invite.h>
|
|
@ -0,0 +1,43 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DOUBANGO_DIALOG_INVITE_SM_H__
|
||||
#define __DOUBANGO_DIALOG_INVITE_SM_H__
|
||||
|
||||
#include <pref.h>
|
||||
#include <sip_dialog.h>
|
||||
|
||||
PREF_NAMESPACE_START
|
||||
|
||||
/* INVITE */
|
||||
class sip_dialog_invite : public sip_dialog
|
||||
{
|
||||
};
|
||||
|
||||
PREF_NAMESPACE_END
|
||||
|
||||
#endif /* __DOUBANGO_DIALOG_INVITE_SM_H__ */
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
#include <sip_dialog_message.h>
|
|
@ -0,0 +1,43 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DOUBANGO_DIALOG_MESSAGE_SM_H__
|
||||
#define __DOUBANGO_DIALOG_MESSAGE_SM_H__
|
||||
|
||||
#include <pref.h>
|
||||
#include <sip_dialog.h>
|
||||
|
||||
PREF_NAMESPACE_START
|
||||
|
||||
/* MESSAGE */
|
||||
class sip_dialog_message : public sip_dialog
|
||||
{
|
||||
};
|
||||
|
||||
PREF_NAMESPACE_END
|
||||
|
||||
#endif /* __DOUBANGO_DIALOG_MESSAGE_SM_H__ */
|
|
@ -0,0 +1,28 @@
|
|||
|
||||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
#include <sip_dialog_options.h>
|
|
@ -0,0 +1,43 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DOUBANGO_DIALOG_OPTIONS_SM_H__
|
||||
#define __DOUBANGO_DIALOG_OPTIONS_SM_H__
|
||||
|
||||
#include <pref.h>
|
||||
#include <sip_dialog.h>
|
||||
|
||||
PREF_NAMESPACE_START
|
||||
|
||||
/* OPTIONS */
|
||||
class sip_dialog_options : public sip_dialog
|
||||
{
|
||||
};
|
||||
|
||||
PREF_NAMESPACE_END
|
||||
|
||||
#endif /* __DOUBANGO_DIALOG_OPTIONS_SM_H__ */
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
#include <sip_dialog_publish.h>
|
|
@ -0,0 +1,43 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DOUBANGO_DIALOG_PUBLISH_SM_H__
|
||||
#define __DOUBANGO_DIALOG_PUBLISH_SM_H__
|
||||
|
||||
#include <pref.h>
|
||||
#include <sip_dialog.h>
|
||||
|
||||
PREF_NAMESPACE_START
|
||||
|
||||
/* PUBLISH */
|
||||
class sip_dialog_pubish : public sip_dialog
|
||||
{
|
||||
};
|
||||
|
||||
PREF_NAMESPACE_END
|
||||
|
||||
#endif /* __DOUBANGO_DIALOG_PUBLISH_SM_H__ */
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
#include <sip_dialog_register.h>
|
|
@ -0,0 +1,43 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DOUBANGO_DIALOG_REGISTER_SM_H__
|
||||
#define __DOUBANGO_DIALOG_REGISTER_SM_H__
|
||||
|
||||
#include <pref.h>
|
||||
#include <sip_dialog.h>
|
||||
|
||||
PREF_NAMESPACE_START
|
||||
|
||||
/* REGISTER */
|
||||
class sip_dialog_register : public sip_dialog
|
||||
{
|
||||
};
|
||||
|
||||
PREF_NAMESPACE_END
|
||||
|
||||
#endif /* __DOUBANGO_DIALOG_REGISTER_SM_H__ */
|
|
@ -0,0 +1,27 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
#include <sip_dialog_subscribe.h>
|
|
@ -0,0 +1,43 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DOUBANGO_DIALOG_SUBSCRIBE_SM_H__
|
||||
#define __DOUBANGO_DIALOG_SUBSCRIBE_SM_H__
|
||||
|
||||
#include <pref.h>
|
||||
#include <sip_dialog.h>
|
||||
|
||||
PREF_NAMESPACE_START
|
||||
|
||||
/* SUBSCRIBE */
|
||||
class sip_dialog_subscribe : public sip_dialog
|
||||
{
|
||||
};
|
||||
|
||||
PREF_NAMESPACE_END
|
||||
|
||||
#endif /* __DOUBANGO_DIALOG_SUBSCRIBE_SM_H__ */
|
|
@ -0,0 +1,73 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
/* Copyright (C) 2009 Doubango Telecom
|
||||
*
|
||||
* Authors: F0076RTY <imsframework@gmail.com>
|
||||
*
|
||||
*/
|
||||
|
||||
#ifndef __DOUBANGO_SM_H__
|
||||
#define __DOUBANGO_SM_H__
|
||||
|
||||
#include "pref.h"
|
||||
#include <map>
|
||||
|
||||
PREF_NAMESPACE_START
|
||||
|
||||
/* state machine class*/
|
||||
template<class STATE, class TYPE>
|
||||
class sm
|
||||
{
|
||||
private:
|
||||
/* callback function definition */
|
||||
typedef void (TYPE::*callback)(void);
|
||||
|
||||
TYPE *obj;
|
||||
|
||||
std::map<STATE, callback> states;
|
||||
STATE state_cur;
|
||||
|
||||
public:
|
||||
/* state machine constructor */
|
||||
sm(TYPE *instance){ this->obj = instance; }
|
||||
/* state machine destructor */
|
||||
~sm(void){ }
|
||||
|
||||
/* map the the state with the callback function */
|
||||
void map_state_callback(STATE state, callback cb){ this->states[state] = cb;}
|
||||
|
||||
/* get the current state*/
|
||||
STATE get_state_curr(void){ return this->state_cur; }
|
||||
/* ste the current state */
|
||||
void set_state_curr(STATE state){ state_cur = state; }
|
||||
|
||||
/* invoke/call the current state's callback function*/
|
||||
void invoke_state_curr(void)
|
||||
{
|
||||
callback cb = this->states[state_cur];
|
||||
if (cb) (this->obj->*callback)();
|
||||
}
|
||||
};
|
||||
|
||||
PREF_NAMESPACE_END
|
||||
|
||||
#endif /* __DOUBANGO_SM_H__ */
|
|
@ -0,0 +1,268 @@
|
|||
/*
|
||||
** Copyright (C) 2009 Doubango Telecom <imsframework(at)gmail.com>
|
||||
|
||||
This file is part of 'Doubango IMS Client Framework'.
|
||||
|
||||
'Doubango IMS Client Framework' is free software: you can redistribute it and/or modify
|
||||
it under the terms of the GNU General Public License as published by
|
||||
the Free Software Foundation, either version 3 of the License, or
|
||||
(at your option) any later version.
|
||||
|
||||
'Doubango IMS Client Framework' is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with 'Doubango IMS Client Framework'. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
** For commercial use, you must purchase a proprietary license from Doubango Telecom.
|
||||
*/
|
||||
|
||||
// ISO C9x compliant stdint.h for Microsoft Visual Studio
|
||||
// Based on ISO/IEC 9899:TC2 Committee draft (May 6, 2005) WG14/N1124
|
||||
//
|
||||
// Copyright (c) 2006-2008 Alexander Chemeris
|
||||
//
|
||||
// Redistribution and use in source and binary forms, with or without
|
||||
// modification, are permitted provided that the following conditions are met:
|
||||
//
|
||||
// 1. Redistributions of source code must retain the above copyright notice,
|
||||
// this list of conditions and the following disclaimer.
|
||||
//
|
||||
// 2. Redistributions in binary form must reproduce the above copyright
|
||||
// notice, this list of conditions and the following disclaimer in the
|
||||
// documentation and/or other materials provided with the distribution.
|
||||
//
|
||||
// 3. The name of the author may be used to endorse or promote products
|
||||
// derived from this software without specific prior written permission.
|
||||
//
|
||||
// THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
|
||||
// WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
|
||||
// MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
|
||||
// EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
|
||||
// SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
|
||||
// PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
|
||||
// OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
|
||||
// WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
|
||||
// OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
|
||||
// ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||
//
|
||||
///////////////////////////////////////////////////////////////////////////////
|
||||
|
||||
#ifndef _MSC_VER // [
|
||||
#error "Use this header only with Microsoft Visual C++ compilers!"
|
||||
#endif // _MSC_VER ]
|
||||
|
||||
#ifndef _MSC_STDINT_H_ // [
|
||||
#define _MSC_STDINT_H_
|
||||
|
||||
#if _MSC_VER > 1000
|
||||
#pragma once
|
||||
#endif
|
||||
|
||||
#include <limits.h>
|
||||
|
||||
// For Visual Studio 6 in C++ mode and for many Visual Studio versions when
|
||||
// compiling for ARM we should wrap <wchar.h> include with 'extern "C++" {}'
|
||||
// or compiler give many errors like this:
|
||||
// error C2733: second C linkage of overloaded function 'wmemchr' not allowed
|
||||
#ifdef __cplusplus
|
||||
extern "C" {
|
||||
#endif
|
||||
# include <wchar.h>
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
|
||||
// Define _W64 macros to mark types changing their size, like intptr_t.
|
||||
#ifndef _W64
|
||||
# if !defined(__midl) && (defined(_X86_) || defined(_M_IX86)) && _MSC_VER >= 1300
|
||||
# define _W64 __w64
|
||||
# else
|
||||
# define _W64
|
||||
# endif
|
||||
#endif
|
||||
|
||||
|
||||
// 7.18.1 Integer types
|
||||
|
||||
// 7.18.1.1 Exact-width integer types
|
||||
|
||||
// Visual Studio 6 and Embedded Visual C++ 4 doesn't
|
||||
// realize that, e.g. char has the same size as __int8
|
||||
// so we give up on __intX for them.
|
||||
#if (_MSC_VER < 1300)
|
||||
typedef signed char int8_t;
|
||||
typedef signed short int16_t;
|
||||
typedef signed int int32_t;
|
||||
typedef unsigned char uint8_t;
|
||||
typedef unsigned short uint16_t;
|
||||
typedef unsigned int uint32_t;
|
||||
#else
|
||||
typedef signed __int8 int8_t;
|
||||
typedef signed __int16 int16_t;
|
||||
typedef signed __int32 int32_t;
|
||||
typedef unsigned __int8 uint8_t;
|
||||
typedef unsigned __int16 uint16_t;
|
||||
typedef unsigned __int32 uint32_t;
|
||||
#endif
|
||||
typedef signed __int64 int64_t;
|
||||
typedef unsigned __int64 uint64_t;
|
||||
|
||||
|
||||
// 7.18.1.2 Minimum-width integer types
|
||||
typedef int8_t int_least8_t;
|
||||
typedef int16_t int_least16_t;
|
||||
typedef int32_t int_least32_t;
|
||||
typedef int64_t int_least64_t;
|
||||
typedef uint8_t uint_least8_t;
|
||||
typedef uint16_t uint_least16_t;
|
||||
typedef uint32_t uint_least32_t;
|
||||
typedef uint64_t uint_least64_t;
|
||||
|
||||
// 7.18.1.3 Fastest minimum-width integer types
|
||||
typedef int8_t int_fast8_t;
|
||||
typedef int16_t int_fast16_t;
|
||||
typedef int32_t int_fast32_t;
|
||||
typedef int64_t int_fast64_t;
|
||||
typedef uint8_t uint_fast8_t;
|
||||
typedef uint16_t uint_fast16_t;
|
||||
typedef uint32_t uint_fast32_t;
|
||||
typedef uint64_t uint_fast64_t;
|
||||
|
||||
// 7.18.1.4 Integer types capable of holding object pointers
|
||||
#ifdef _WIN64 // [
|
||||
typedef signed __int64 intptr_t;
|
||||
typedef unsigned __int64 uintptr_t;
|
||||
#else // _WIN64 ][
|
||||
typedef _W64 signed int intptr_t;
|
||||
typedef _W64 unsigned int uintptr_t;
|
||||
#endif // _WIN64 ]
|
||||
|
||||
// 7.18.1.5 Greatest-width integer types
|
||||
typedef int64_t intmax_t;
|
||||
typedef uint64_t uintmax_t;
|
||||
|
||||
|
||||
// 7.18.2 Limits of specified-width integer types
|
||||
|
||||
#if !defined(__cplusplus) || defined(__STDC_LIMIT_MACROS) // [ See footnote 220 at page 257 and footnote 221 at page 259
|
||||
|
||||
// 7.18.2.1 Limits of exact-width integer types
|
||||
#define INT8_MIN ((int8_t)_I8_MIN)
|
||||
#define INT8_MAX _I8_MAX
|
||||
#define INT16_MIN ((int16_t)_I16_MIN)
|
||||
#define INT16_MAX _I16_MAX
|
||||
#define INT32_MIN ((int32_t)_I32_MIN)
|
||||
#define INT32_MAX _I32_MAX
|
||||
#define INT64_MIN ((int64_t)_I64_MIN)
|
||||
#define INT64_MAX _I64_MAX
|
||||
#define UINT8_MAX _UI8_MAX
|
||||
#define UINT16_MAX _UI16_MAX
|
||||
#define UINT32_MAX _UI32_MAX
|
||||
#define UINT64_MAX _UI64_MAX
|
||||
|
||||
// 7.18.2.2 Limits of minimum-width integer types
|
||||
#define INT_LEAST8_MIN INT8_MIN
|
||||
#define INT_LEAST8_MAX INT8_MAX
|
||||
#define INT_LEAST16_MIN INT16_MIN
|
||||
#define INT_LEAST16_MAX INT16_MAX
|
||||
#define INT_LEAST32_MIN INT32_MIN
|
||||
#define INT_LEAST32_MAX INT32_MAX
|
||||
#define INT_LEAST64_MIN INT64_MIN
|
||||
#define INT_LEAST64_MAX INT64_MAX
|
||||
#define UINT_LEAST8_MAX UINT8_MAX
|
||||
#define UINT_LEAST16_MAX UINT16_MAX
|
||||
#define UINT_LEAST32_MAX UINT32_MAX
|
||||
#define UINT_LEAST64_MAX UINT64_MAX
|
||||
|
||||
// 7.18.2.3 Limits of fastest minimum-width integer types
|
||||
#define INT_FAST8_MIN INT8_MIN
|
||||
#define INT_FAST8_MAX INT8_MAX
|
||||
#define INT_FAST16_MIN INT16_MIN
|
||||
#define INT_FAST16_MAX INT16_MAX
|
||||
#define INT_FAST32_MIN INT32_MIN
|
||||
#define INT_FAST32_MAX INT32_MAX
|
||||
#define INT_FAST64_MIN INT64_MIN
|
||||
#define INT_FAST64_MAX INT64_MAX
|
||||
#define UINT_FAST8_MAX UINT8_MAX
|
||||
#define UINT_FAST16_MAX UINT16_MAX
|
||||
#define UINT_FAST32_MAX UINT32_MAX
|
||||
#define UINT_FAST64_MAX UINT64_MAX
|
||||
|
||||
// 7.18.2.4 Limits of integer types capable of holding object pointers
|
||||
#ifdef _WIN64 // [
|
||||
# define INTPTR_MIN INT64_MIN
|
||||
# define INTPTR_MAX INT64_MAX
|
||||
# define UINTPTR_MAX UINT64_MAX
|
||||
#else // _WIN64 ][
|
||||
# define INTPTR_MIN INT32_MIN
|
||||
# define INTPTR_MAX INT32_MAX
|
||||
# define UINTPTR_MAX UINT32_MAX
|
||||
#endif // _WIN64 ]
|
||||
|
||||
// 7.18.2.5 Limits of greatest-width integer types
|
||||
#define INTMAX_MIN INT64_MIN
|
||||
#define INTMAX_MAX INT64_MAX
|
||||
#define UINTMAX_MAX UINT64_MAX
|
||||
|
||||
// 7.18.3 Limits of other integer types
|
||||
|
||||
#ifdef _WIN64 // [
|
||||
# define PTRDIFF_MIN _I64_MIN
|
||||
# define PTRDIFF_MAX _I64_MAX
|
||||
#else // _WIN64 ][
|
||||
# define PTRDIFF_MIN _I32_MIN
|
||||
# define PTRDIFF_MAX _I32_MAX
|
||||
#endif // _WIN64 ]
|
||||
|
||||
#define SIG_ATOMIC_MIN INT_MIN
|
||||
#define SIG_ATOMIC_MAX INT_MAX
|
||||
|
||||
#ifndef SIZE_MAX // [
|
||||
# ifdef _WIN64 // [
|
||||
# define SIZE_MAX _UI64_MAX
|
||||
# else // _WIN64 ][
|
||||
# define SIZE_MAX _UI32_MAX
|
||||
# endif // _WIN64 ]
|
||||
#endif // SIZE_MAX ]
|
||||
|
||||
// WCHAR_MIN and WCHAR_MAX are also defined in <wchar.h>
|
||||
#ifndef WCHAR_MIN // [
|
||||
# define WCHAR_MIN 0
|
||||
#endif // WCHAR_MIN ]
|
||||
#ifndef WCHAR_MAX // [
|
||||
# define WCHAR_MAX _UI16_MAX
|
||||
#endif // WCHAR_MAX ]
|
||||
|
||||
#define WINT_MIN 0
|
||||
#define WINT_MAX _UI16_MAX
|
||||
|
||||
#endif // __STDC_LIMIT_MACROS ]
|
||||
|
||||
|
||||
// 7.18.4 Limits of other integer types
|
||||
|
||||
#if !defined(__cplusplus) || defined(__STDC_CONSTANT_MACROS) // [ See footnote 224 at page 260
|
||||
|
||||
// 7.18.4.1 Macros for minimum-width integer constants
|
||||
|
||||
#define INT8_C(val) val##i8
|
||||
#define INT16_C(val) val##i16
|
||||
#define INT32_C(val) val##i32
|
||||
#define INT64_C(val) val##i64
|
||||
|
||||
#define UINT8_C(val) val##ui8
|
||||
#define UINT16_C(val) val##ui16
|
||||
#define UINT32_C(val) val##ui32
|
||||
#define UINT64_C(val) val##ui64
|
||||
|
||||
// 7.18.4.2 Macros for greatest-width integer constants
|
||||
#define INTMAX_C INT64_C
|
||||
#define UINTMAX_C UINT64_C
|
||||
|
||||
#endif // __STDC_CONSTANT_MACROS ]
|
||||
|
||||
|
||||
#endif // _MSC_STDINT_H_ ]
|
|
@ -0,0 +1,2 @@
|
|||
#include "stdint0.h"
|
||||
#include "sm.h"
|
Loading…
Reference in New Issue