Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

79 lines
2.6 KiB

  1. //////////////////////////////////////////////////////////////////////
  2. // PromptEntry.h: interface for the CPromptEntry class.
  3. //
  4. // Created by JOEM 04-2000
  5. // Copyright (C) 2000 Microsoft Corporation
  6. // All Rights Reserved
  7. //
  8. /////////////////////////////////////////////////////// JOEM 4-2000 //
  9. #if !defined(AFX_DBENTRY_H__0A787DC1_8000_4D97_883E_E82558597089__INCLUDED_)
  10. #define AFX_DBENTRY_H__0A787DC1_8000_4D97_883E_E82558597089__INCLUDED_
  11. #if _MSC_VER > 1000
  12. #pragma once
  13. #endif // _MSC_VER > 1000
  14. #include "Hash.h"
  15. #include "MSPromptEng.h"
  16. #include <spddkhlp.h>
  17. #include <spcollec.h>
  18. extern const IID IID_IPromptEntry;
  19. class CPromptEntry : public IPromptEntry
  20. {
  21. public:
  22. CPromptEntry();
  23. CPromptEntry(const CPromptEntry & old);
  24. ~CPromptEntry();
  25. public:
  26. // IUnknown
  27. STDMETHOD(QueryInterface)(const IID& iid, void** ppv);
  28. STDMETHOD_(ULONG, AddRef)();
  29. STDMETHOD_(ULONG, Release)();
  30. // IPromptEntry
  31. STDMETHOD(SetId)(const WCHAR* pszId);
  32. STDMETHOD(GetId)(const WCHAR** ppszId);
  33. STDMETHOD(SetText)(const WCHAR* pszText);
  34. STDMETHOD(GetText)(const WCHAR** ppszText);
  35. STDMETHOD(SetOriginalText)(const WCHAR* pszText);
  36. STDMETHOD(GetOriginalText)(const WCHAR** ppszText);
  37. STDMETHOD(SetFileName)(const WCHAR* pszFileName);
  38. STDMETHOD(GetFileName)(const WCHAR** ppszFileName);
  39. STDMETHOD(SetStartPhone)(const WCHAR* pszStartPhone);
  40. STDMETHOD(GetStartPhone)(const WCHAR** ppszStartPhone);
  41. STDMETHOD(SetEndPhone)(const WCHAR* pszEndPhone);
  42. STDMETHOD(GetEndPhone)(const WCHAR** ppszEndPhone);
  43. STDMETHOD(SetLeftContext)(const WCHAR* pszLeftContext);
  44. STDMETHOD(GetLeftContext)(const WCHAR** ppszLeftContext);
  45. STDMETHOD(SetRightContext)(const WCHAR* pszRightContext);
  46. STDMETHOD(GetRightContext)(const WCHAR** ppszRightContext);
  47. STDMETHOD(SetStart)(const double dFrom);
  48. STDMETHOD(GetStart)(double* dFrom);
  49. STDMETHOD(SetEnd)(const double dTo);
  50. STDMETHOD(GetEnd)(double* dTo);
  51. STDMETHOD(AddTag)(const WCHAR* pszTag);
  52. STDMETHOD(RemoveTag)(const USHORT unId);
  53. STDMETHOD(GetTag)(const WCHAR** ppszTag, const USHORT unId);
  54. STDMETHOD(CountTags)(USHORT* unTagCount);
  55. STDMETHOD(GetSamples)(SHORT** ppnSamples, int* iNumSamples, WAVEFORMATEX* pFormat);
  56. STDMETHOD(GetFormat)(WAVEFORMATEX** ppFormat);
  57. private:
  58. volatile LONG m_vcRef;
  59. WCHAR* m_pszId;
  60. WCHAR* m_pszText;
  61. WCHAR* m_pszOriginalText;
  62. WCHAR* m_pszFileName;
  63. WCHAR* m_pszStartPhone;
  64. WCHAR* m_pszEndPhone;
  65. WCHAR* m_pszRightContext;
  66. WCHAR* m_pszLeftContext;
  67. double m_dFrom;
  68. double m_dTo;
  69. CSPArray<CDynStr,CDynStr> m_aTags;
  70. };
  71. #endif // !defined(AFX_DBENTRY_H__0A787DC1_8000_4D97_883E_E82558597089__INCLUDED_)